KR20000008306A - 시소러스 코드 압축 방법 - Google Patents

시소러스 코드 압축 방법 Download PDF

Info

Publication number
KR20000008306A
KR20000008306A KR1019980028051A KR19980028051A KR20000008306A KR 20000008306 A KR20000008306 A KR 20000008306A KR 1019980028051 A KR1019980028051 A KR 1019980028051A KR 19980028051 A KR19980028051 A KR 19980028051A KR 20000008306 A KR20000008306 A KR 20000008306A
Authority
KR
South Korea
Prior art keywords
code
thesaurus
concept
info
byte
Prior art date
Application number
KR1019980028051A
Other languages
English (en)
Other versions
KR100283143B1 (ko
Inventor
곽종근
정성영
조미혜
Original Assignee
구자홍
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구자홍, 엘지전자 주식회사 filed Critical 구자홍
Priority to KR1019980028051A priority Critical patent/KR100283143B1/ko
Publication of KR20000008306A publication Critical patent/KR20000008306A/ko
Application granted granted Critical
Publication of KR100283143B1 publication Critical patent/KR100283143B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/146Coding or compression of tree-structured data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 시소러스 코드 압축 방법에 관한 것으로 특히, 단어의 의미 경로에 대해 시소러스 코드의 내용을 미리 컴파일하여 압축 저장함으로써 응용 프로그램에서 사용하는 시소러스 연산을 최적화할 수 있도록 함을 목적으로 한다. 이러한 목적의 본 발명은 시소러스 코드 소스에 대해 단일화 및 유사도 연산을 수행하여 단어에 대한 상위 개념에서 하위 개념에 이르는 의미 경로를 판단하는 제1 과정과, 상기에서 판단된 의미 경로를 순차적인 코드로 컴파일하는 제2 과정과, 상기에서 컴파일된 코드를 코드 특성을 표시하는 '헤더 영역', 코드의 실제 정보를 표시하는 복수개의 'Info 영역'과 'Info 영역'이 끝났음을 표시하는 'Tail 영역'으로 이루어지는 소정 포맷으로 압축하는 제3 과정과, 상기에서 압축된 코드를 메모리에 저장하는 제4 과정을 수행함을 특징으로 한다.

Description

시소러스 코드 압축 방법
본 발명은 구문 해석에 관한 것으로 특히, 자연어 처리에 있어서 시소러스 코드 압축 방법에 관한 것이다.
시소러스는 낱말이 갖는 개념을 계층 구조로 분류한 것을 말한다.
일반적으로 시소러스를 이용하는 응용 프로그램중 대표적인 것은 자연어를 처리하는 프로그램을 들 수 있는데, 주어진 낱말의 의미를 이용하여 연산할 때 시소러스를 이용한다.
즉, 주어진 특정 단어의 의미가 다른 단어와 어떤 연관이 있는지 혹은 그 말의 유사어가 무엇인지, 반의어가 무엇인지, 말의 의미가 다른 언어의 의미에 포함되는지 등의 여부를 판단할 때에 시소러스를 이용하게 된다.
그러나, 종래의 기술은 시소러스 정보를 가공하지 않고 그대로 응용 프로그램에서 사용하는 경우 실행 속도가 저하됨은 물론 시소러스의 크기가 방대하게 되어 디스크의 저장 용량 및 메모리의 저장 용량이 증가하게 됨으로 실행 시간 및 저장 공간의 비효율성을 초래하는 문제점이 있다.
따라서, 본 발명은 종래의 문제점을 개선하기 위하여 응용 프로그램에서 사용하는 시소러스의 일부 연산을 최적화할 수 있도록 시소러스 코드의 내용을 미리 컴파일하여 압축 저장함으로써 응용 프로그램에서의 시소러스 연산을 최적화할 수 있도록 창안한 시소러스 코드 압축 방법을 제공함에 목적이 있다.
즉, 본 발명은 단일화(Unification)를 수행할 수 있도록 하기 위해서 상위 개념에서부터 하위 개념에 이르는 경로를 표시하는 컴파일(comfile)을 수행하고 상위 개념에서 하위 개념이 부합되는가를 조사하는 단일화(Unification) 연산을 수행하기 위하여 시소러스에서 정의한 상관 관계를 각각 하나의 트리로 간주하여 루트(root) 노드로부터 일련의 번호를 부여하여 상관 관계를 알 수 있도록 하고 상기 컴파일된 코드의 상관 관계를 이용하여 2개념의 유사도를 비교하여 유사도 비교나 단일화 연산의 수행을 신속히 실행할 수 있도록 함에 특징이 있다.
도 1은 본 발명의 실시를 위한 신호 흐름도.
도 2는 본 발명에서 압축 컴파일 포맷의 구조도.
본 발명은 상기의 목적을 달성하기 위하여 시소러스 코드를 컴파일하는 과정은 단어에 대한 상위 개념에서 하위 개념에 이르는 의미 경로를 판단하는 과정과, 상기에서 판단된 의미 경로를 순차적인 코드로 컴파일하는 과정과, 상기에서 컴파일된 코드를 소정 포맷으로 압축하는 과정과, 상기에서 압축된 코드를 저장하는 과정으로 나뉘어져 수행함을 특징으로 한다.
상기 압축 포맷은 코드 특성을 표시하는 '헤더 영역', 코드의 실제 정보를 표시하는 복수개의 'Info 영역'과 'Info 영역'이 끝났음을 표시하는 'Tail 영역'으로 이루어짐을 특징으로 한다.
상기 'Info 영역'은 최상위 비트에 영역의 크기, 최상위 비트를 제외한 상위 3비트에 시소러스 상에서의 개념의 관계, 나머지 비트에 노드를 표시하는 숫자로 이루어짐을 특징으로 한다.
상기에서 'Info 영역'의 최상위 비트가 '0'이면 전체 영역 크기는 '1 바이트'이고 '1'이면 '2바이트'임을 표시한다.
상기에서 'Info 영역'이 '2 바이트'인 경우 상위 4비트를 제외한 12비트에 숫자를 표시함을 특징으로 한다.
또한, 본 발명은 구문 해석시 시소러스 코드를 참조하여 복수의 단어에 대한 상위 개념에서 하위 개념에 이르는 의미 경로를 판단하는 과정과, 상기에서 판단된 의미 경로를 순차적인 코드로 컴파일하는 과정과, 상기에서 컴파일된 복수개의 코드를 분석하여 공유 부분의 크기에 따라 유사도를 판단하는 과정에 사용할 수 있음을 특징으로 한다.
이하, 본 발명을 도면에 의거 상세히 설명하면 다음과 같다.
도1 은 본 발명의 실시예를 보인 신호 흐름도로서 이에 도시한 바와 같이, 시소러스 코드 소스에 대해 단일화 및 유사도 연산을 수행하여 단어에 대한 상위 개념에서 하위 개념에 이르는 의미 경로를 판단하는 제1 과정과, 상기에서 판단된 의미 경로를 순차적인 코드로 컴파일하는 제2 과정과, 상기에서 컴파일된 코드를 소정 포맷으로 압축하는 제3 과정과, 상기에서 압축된 코드를 메모리에 저장하는 제4 과정을 수행한다.
이와같이 구성한 본 발명의 실시예에 대한 동작 및 작용 효과를 설명하면 다음과 같다.
일반적으로 시소러스는 상위어와 하위어, 동의어, 반의어 등의 관계를 표현하고 있다.
상위어/하위어는 장소를 나타내는 말들의 상,하위 관계를 Place Holonym/Meronym, 구성원을 이루는 낱말의 상,하위어 관계를 Member Holonym/Meronym, 전체에 대한 부분의 개념을 나타내는 관계를 Component Holonym/Meronym 및, 개념적으로 부분 집합 관계를 갖는 상,하위어를 Hypernym/Hyponym의 관계로 세분할 수 있다.
먼저, 코드 생성에 사용되는 시소러스의 관계를 예를 들어 설명하면 다음과 같다.
1) 'Hypernym/Hyponym'은 일반적인 단어의 상하위 관계를 나타내며 그 예는 아래와 같다.
예: 구체물1 ⇒ 물a ⇒ 자연물1 ⇒ 생물1 ⇒ 동물1 ⇒ 척추동물1 ⇒ 포유류1 ⇒ 사람1
구체물1 ⇒ 물a ⇒ 생물1 ⇒ 식물1 ⇒ 나무1 ⇒ 소나무과 나무1 ⇒ 소나무1
2) 'Place Holonym/Place Meronym'은 장소를 나타내는 단어의 상하위 관계를 나타내며 그 예는 아래와 같다.
예 : 곳1 ⇒ 장소1 ⇒ 구역1 ⇒ 지역1 ⇒ 도시1 ⇒ 대구3
3) 'Member Holonym/Member Meronym'은 구성원을 이루는 낱말들의 상하위 관계를 나타내며 그 예는 아래와 같다.
예 : 형제1 ⇒ 형1, 형제1 ⇒ 동생1
4) 'Component Holonym/Component Meronym'은 전체에 대한 부분의 관계를 나타내며 그 예는 아래와 같다.
예 : 상반신1 ⇒ 머리1 ⇒ 얼굴1 ⇒ 눈1
5) 'Synonym'은 동의어의 관계를 나타내는데, 동의어중에서 하나가 대표어가 되며 그 예는 아래와 같다.
예 : 대구광역시1 ⇒ 대구3, 대구광역시1 ⇒ 대구시1
본 발명은 상기와 같은 관계를 고려하여 시소러스 코드의 압축이 시작되면 아래와 같이 코드 컴파일 동작을 실행한다.
구문 해석에서 단일화(Unification)를 보다 빨리 수행할 수 있도록 하기 위해서 상위어부터 개념(C1)에 이르는 경로를 코드로 표현한다.
여기서, 단일화란 상위 개념에 하위 개념이 부합하는가를 검사하는 과정을 말한다.
예를 들어, '동물1'은 '사람1'의 상위 개념으로 '사람1'은 '동물1'에 단일화(Unify)되지만 반대로 '동물1'은 '사람1'에 단일화되지 않는다.
또한, '사람1'과 아무런 관계가 없는 '식물1'은 서로 통합되지 않는다.
따라서, 단일화 연산을 수행하기 위하여 시소러스에서 정의한 관계를 각각 하나의 트리로 간주하고 루트(root) 노드에서 첫 번째 자손(child)부터 일련의 숫자를 부여한다.
이때, 관계의 종류에 따라서 숫자앞에 {H,P,M,C}의 태그(tag)를 붙여준다.
즉, 'Hyper/Hypo' 트리의 첫 번째 자손은 H0 , 두 번째 자손은 H1 ,...의 방식으로 번호를 부여하고 'Place' 트리의 첫 번째 자손은 P0 , 첫 번째 자손( P0 )의 두 번째 자손은 P0P1 등과 같이 번호를 부여한다.
여기서, 코드 컴파일시에 'Synonym'의 관계를 포함하지 않는 것은 동의어들의 코드는 대표어의 코드와 동일하게 표현하면 되기 때문이다.
그리고, 개념 'C'를 표현하는 코드는 모든 트리상에서 개념 'C'를 찾아 루트(root) 노드부터 부여된 번호를 연결(concaternation)한 것이 된다.
예를 들어, '사람1'의 컴파일된 코드는 다음과 같다.
사람1 : NC46H9H4H14, NH6H3H33H2H0H9H4H14
이는 모든 트리상에서 '사람1'에 도달할 수 있는 경로가 2개 있음을 나타내며, 코드의 앞에 부가된 'N'은 이 개념이 명사임을 나타낸다.
만일, 동사라면 'V'로 시작한다.
따라서, 컴파일 과정을 '사람1'의 표현 코드를 예로 들어 설명하면 다음과 같다.
먼저, 시소러스 코드를 점검하여 모든 트리사에서 에서 '사람1'이 나타나는 경우를 모두 찾는다.
이때, '사람1'은 'Hypernym/Hyponym' 트리에 1번 나타나며 '사람1'부터 루트(root) 노드로 올라가면서 만나는 노드를 찾아보면 아래의 예와 같다고 가정한다.
예) 구체물1( H6 ) ⇒ 물a( H6H3 ) ⇒ 자연물1( H6H3H33 ) ⇒ 생물1( H6H3H33H2 ) ⇒ 동물1( H6H3H33H2H0 ) ⇒ 척추동물1( H6H3H33H2H0H9 ) ⇒ 포유류1( H6H3H33H2H0H9H4 ) ⇒ 사람1( NH6H3H33H2H0H9H4H14 )
그리고, 상기와 같은 코드를 만드는 과정에서 '사람1'로부터 '구체물1'까지의 경로를 따라 올라가면서 각 노드가 다른 관계에 존재하는지를 찾게 된다.
만일, 상기와 같은 과정에서 '동물1'이 'Component' 관계를 나타내는 트리에 존재함을 검출하면 'Component' 의 '동물1'을 통하여 '사람1'에 이르는 경로를 추가한다.
이때, 'Component' 관계에는 '동물1(C46) ⇒ 동물부분1(C0)'이 정의되어 있으며 그때 생성되는 코드는 ' NC46H9H4H14 '이라고 가정한다.
따라서, '사람1'의 결과 코드는 ' NH6H3H33H2H0H9H4H14 '와 ' NC46H9H4H14 '의 2개 코드가 된다.
이 후, 실제 코드를 사용할 때 저장 공간의 효율적 이용과 코드 비교 연산의 효율화를 위하여 저장하기 위하여 상기와 같이 컴파일된 코드를 압축하는데 이를 설명하면 다음과 같다.
먼저, 압축 과정에서는 코드를 도2 의 예시도와 같은 포맷으로 세분한다.
'Header Byte'에는 하나의 코드에 대한 특성을 1바이트로 표시하는데, 명사 코드의 경우 'N', 동사 코드의 경우 'V'로 표시한다.
'Info Byte'에는 H0 H17 등과 같이 코드 중간에 나오는 실제 정보들을 1바이트 또는 2바이트로 표시한다.
'Tail Byte'에는 'Info Byte'가 끝났음을 알리는 특수 바이트로서 1바이트로 표시한다.
즉, 시소러스 개념은 사용상의 편의를 위해서 품사를 기준으로 나눌 수 있는데, 예로 명사와 동사로 나누어서 사용하고 있다.
이때, 코드의 맨 앞부분에 명사인지 동사인지의 품사에 따라 'N','V' 둘중 하나의 태그로 표현하며 그 다음부터는 관계에 따라서 {H,P,C,M}중 하나의 값과 번호의 쌍이 반복됨을 알 수 있다.
여기서, 'Info byte'는 가변적 길이를 가지며 'Info byte'에 올 수 있는 번호는 큰 번호의 값도 수용할 수 있어야 하지만, 대부분 작은 값이므로 큰 번호를 수용하기 위해 저장 공간을 일정하게 할당하면 낭비를 초래하게 된다.
따라서, 저장 공간의 효율적 할당 처리를 위하여 'Info byte'의 첫 비트인 최상위 비트(MSB)가 '0'이면 'Info byte'는 '1'바이트로 해석하고 '1'이면 '2'바이트로 묶어서 해석한다.
그리고, 최상위 비트(MSB) 이후의 '3'비트는 시소러스의 관계를 표시한다.
상기에서 'Info byte'가 '1'바이트라면 상위 '4'비트를 제외한 나머지 '4'비트에는 숫자를 표시하고 '2'바이트면 상위 '4'비트를 제외하고 남은 '4'비트(0~15 의 숫자 표현)와 그 다음 1바이트의 '8'비트를 합하여 '12'비트로 숫자를 표시한다.
따라서, 컴파일 과정에서 생성된 코드는 도2 의 예시도와 같은 포맷으로 압축하여 저장한다.
상기와 같은 과정으로 시소러스 코드를 압축하면 압축율은 데이터에 따라 차이가 있지만, 일반적으로 아스키(ASCII) 코드 자체를 이용하는 경우와 비교하여 파일 크기면에서 약50% 정도 감소한다.
한편, 상기와 같이 압축된 시소러스 코드는 구문 해석을 위한 응용 프로그램에서 활용할 수 있다.
특히, 자연어 처리를 위한 응용 프로그램의 한가지인 구문 해석기의 관점에서 시소러스를 사용하는 주된 이유를 들면 단일화 또는 유사도 측정을 들 수 있다.
먼저, 단일화(Unification)란 2개의 개념(C1, C2)이 있을 때 'C2'의 의미가 'C1'의 의미에 포함될 때 'C2'는 'C1'에 통합된다고 정의한다.
예로, 'Hypernym/Hyponym'의 관계에서 사람1 은 동물1 이지만 반대로 동물1은 사람1 이 아니다.
즉, 사람1 은 동물1 에 통합되지만 반대로, 동물1은 사람1 에 통합되지 않는다.
그리고, 소나무1 과 동물1 은 서로간에는 아무 관련이 없지만 둘 다 생물1 에 속한다.
따라서, 구문 해석기에서 시소러스를 사용하여 단일화(unify)를 수행하는 경우는 머리어(Header)의 보충어(Complement)의 관계로 특정 낱말이 적당한가를 검사할 수 있다.
예를 들어, 동사 '가다1'이 도구격(instrument)으로 운용 수단, 지향격(Target)으로 장소1을 보충어로 취한다고 할 때 "비행기로 집으로 가다"라는 문장을 구문 해석하여 의미를 파악하는 경우를 설명하면, '비행기1'이 운송 수단에 속하므로 '비행기1'은 '가다1'의 도구격(instrument)으로 사용되었고 '집1'은 '장소1'에 속하므로 '집1'은 '가다1'의 지향격(target)으로 사용되었음을 알 수 있다.
또한, 단일화 과정은 컴파일된 코드만을 이용하여 수행이 가능하다.
예로, '사람1'이 '동물1'에 속하는지를 검사하기 위해서는 '사람1'을 표시하는 코드중에 '동물1'을 표시하는 코드로 시작하는 것이 있는지를 검사하면 된다.
따라서, '동물1'의 코드가 ' NC46 , NH6H3H33H2H0 '이라면 '사람1'의 코드중에서 '동물1'의 코드로 시작하는 것이 적어도 하나 존재하므로 '사람1'은 '동물1'에 속한다.
한편, 2개의 개념이 얼마나 유사한지를 비교하는 것은 컴파일된 코드의 앞부분을 얼마나 많이 공유하는가에 의해 결정된다.
예로, '사람1','원숭이1','소나무1'의 컴파일된 각각의 코드가 아래와 같다고 가정할 때 '사람1'은 '소나무1'보다 '원숭이1'과 더 유사하다고 할 수 있다.
이는 코드의 관점에서 보면 '사람1'이 '소나무1'보다는 '원숭이1'과 더 많은 코드를 공유하기 때문이다.
사람1 : NC46H9H4H14 ,(동물1 ⇒ 척추동물1 ⇒ 포유류1 ⇒ 사람1)
NH6H3H33H2H0H9H4H14 ,(구체물1 ⇒ 물a ⇒ 자연물1 ⇒ 생물1 ⇒ 동물1 ⇒ 척추동물1 ⇒ 포유류1 ⇒ 사람1)
원숭이1 : NC46H9H2H1H12H0 ,(동물1 ⇒ 척추동물1 ⇒ 짐승1 ⇒ 길짐승1 ⇒ 원숭이과 동물1 ⇒ 원숭이1)
NC46H9H4H17H0 ,(동물1 ⇒ 척추동물1 ⇒ 포유류1 ⇒ 원숭이과 동물1 ⇒ 원숭이1)
NH6H3H33H2H0H9H2H1H12H0 ,(구체물1 ⇒ 물a ⇒ 자연물1 ⇒ 생물1 ⇒ 동물1 ⇒ 척추동물1 ⇒ 짐승1 ⇒ 길짐승1 ⇒ 원숭이과 동물1 ⇒ 원숭이)
NH6H3H33H2H0H9H4H17H0 ,(구체물1 ⇒ 물a ⇒ 자연물1 ⇒ 생물1 ⇒ 동물1 ⇒ 척추동물1 ⇒ 포유류1 ⇒ 원숭이과 동물1 ⇒ 원숭이1)
소나무1 : NC29H8H3 ,(나무1 ⇒ 소나무과 나무1 ⇒ 소나무1)
NC29H9H4H12H3 ,(나무1 ⇒ 수d ⇒ 상록수1 ⇒ 침엽수1 ⇒ 소나무1)
NC95H8H8H3 ,(식물1 ⇒ 나무1 ⇒ 소나무과 나무1 ⇒ 소나무1)
NC95H8H9H4H12H3 ,(식물1 ⇒ 나무1 ⇒ 수d ⇒ 상록수1 ⇒ 침엽수1 ⇒ 소나무1)
NH6H3H33H2H3H8H8H3 ,(구체물1 ⇒ 물a ⇒ 자연물1 ⇒ 생물1 ⇒ 식물1 ⇒ 나무1 ⇒ 수d ⇒ 상록수1 ⇒ 침엽수1 ⇒ 소나무1)
NH6H3H33H2H3H8H9H4H12H3 ,(구체물1 ⇒ 물a ⇒ 자연물1 ⇒ 생물1 ⇒ 식물1 ⇒ 나무1 ⇒ 수d ⇒ 상록수1 ⇒ 침엽수1 ⇒ 소나무1)
이때, E. Sumita 에 의해서 정의된 개념(C1 과 C2)의 유사도를 컴파일된 시소러스에 맞게 식으로 정의하면 아래와 같다. (참조 문헌 : "Experiments and prospects of example based machine translation", Proc.of 29th ACL, PP.185-192,1991)
단, 'C1'과 'C2'의 코드가 각기 복수개이면 'C1','C2'의 모든 조합중에서 유사도값이 최대가 되는 것을 선택한 후 유사도를 구한다.
상기와 같이 정의한 유사도는 '0'와 '1'사이의 값을 가지며 '1'에 가까울수록 2개의 개념(C1, C2)이 서로 비슷한 것임을 나타낸다.
따라서, '사람1'의 코드가 ' NH6H3H33H2H0H9H4H14 '이고 '원숭이1'의 코드가 ' NH6H3H33H2H0H9H4H17H0 '일 때 '사람1'과 '원숭이1'의 유사도는 최대의 값이 되며 그 때의 유사도 값은 '2*7/(8+9)= 0.824'가 된다.
상기와 같은 단일화 또는 유사도 연산은 압축된 작은 크기의 데이터만을 이용하여 비교할 수 있으므로 연산의 비용은 오히려 줄어 들게 된다.
상기에서 상세히 설명한 바와 같이 본 발명은 시소러스를 기반으로 한 유사도 연산이나 단일화 연산에서 컴파일 및 압축한 코드를 이용하므로 실행 시간을 감소시킬 수 있고 또한, 컴파일된 코드에 의해 단일화 또는 유사도 연산을 단순화할 수 있으므로 단일화 또는 유사도 연산을 위한 회로를 용이하게 구현할 수 있는 효과가 있다.
그리고, 본 발명은 시소러스 코드를 압축 저장함으로 회로 구현시 저장 공간을 줄일 수 있는 효과가 있다.

Claims (7)

  1. 시소러스 코드 소스를 참조하여 단어에 대한 상위 개념에서 하위 개념에 이르는 의미 경로를 판단하는 제1 과정과, 상기에서 판단된 의미 경로를 순차적인 코드로 컴파일하는 제2 과정과, 상기에서 컴파일된 코드를 소정 포맷으로 압축하는 제3 과정과, 상기에서 압축된 코드를 저장하는 제4 과정을 수행함을 특징으로 하는 시소러스 코드 압축 방법.
  2. 제1항에 있어서, 단어에 대한 의미 경로 판단하는 제1 과정은 시소러스 코드 소스에 에 대해 단일화 및 유사도 연산을 수행함을 특징으로 하는 시소러스 코드 압축 방법.
  3. 제1항에 있어서, 압축 포맷은 코드 특성을 표시하는 '헤더 영역', 코드의 실제 정보를 표시하는 복수개의 'Info 영역'과 'Info 영역'이 끝났음을 표시하는 'Tail 영역'으로 이루어짐을 특징으로 하는 시소러스 코드 압축 방법.
  4. 제3항에 있어서, 'Info 영역'은 최상위 1비트에 영역의 크기, 최상위 비트를 제외한 상위 3비트에 개념의 관계, 나머지 비트에 경로를 표시하는 숫자로 이루어짐을 특징으로 하는 시소러스 코드 압축 방법.
  5. 제4항에 있어서, 'Info 영역'의 최상위 비트가 '0'이면 전체 영역 크기는 '1 바이트'이고 '1'이면 '2바이트'임을 표시함을 특징으로 하는 시소러스 코드 압축 방법.
  6. 제4항 또는 제5항에 있어서, 'Info 영역'이 '2 바이트'인 경우 상위 4비트를 제외한 12비트에 숫자를 표시함을 특징으로 하는 시소러스 코드 압축 방법.
  7. 구문 해석시 시소러스 코드 소스를 참조하여 복수의 단어에 대한 상위 개념에서 하위 개념에 이르는 의미 경로를 판단하는 제1 과정과, 상기에서 판단된 의미 경로를 순차적인 코드로 컴파일하는 제2 과정과, 상기에서 컴파일된 복수개의 코드를 분석하여 공유 부분의 크기에 따라 유사도를 판단하는 제3 과정을 수행함을 특징으로 하는 시소러스 코드 압축 방법.
KR1019980028051A 1998-07-11 1998-07-11 시소러스 코드 압축 방법 KR100283143B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980028051A KR100283143B1 (ko) 1998-07-11 1998-07-11 시소러스 코드 압축 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980028051A KR100283143B1 (ko) 1998-07-11 1998-07-11 시소러스 코드 압축 방법

Publications (2)

Publication Number Publication Date
KR20000008306A true KR20000008306A (ko) 2000-02-07
KR100283143B1 KR100283143B1 (ko) 2001-03-02

Family

ID=19543894

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980028051A KR100283143B1 (ko) 1998-07-11 1998-07-11 시소러스 코드 압축 방법

Country Status (1)

Country Link
KR (1) KR100283143B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100379735B1 (ko) * 2000-06-01 2003-04-11 박홍원 코드화를 통한 자연어 처리장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100379735B1 (ko) * 2000-06-01 2003-04-11 박홍원 코드화를 통한 자연어 처리장치 및 방법

Also Published As

Publication number Publication date
KR100283143B1 (ko) 2001-03-02

Similar Documents

Publication Publication Date Title
US5640575A (en) Method and apparatus of translation based on patterns
US7383169B1 (en) Method and system for compiling a lexical knowledge base
Sedláček et al. A new Czech morphological analyser ajka
EP1746517A2 (en) XPath automaton systems and methods
CN104391837A (zh) 一种基于格语义的智能语法分析方法
Nesson et al. Induction of probabilistic synchronous tree-insertion grammars for machine translation.
US6535886B1 (en) Method to compress linguistic structures
JP2006065387A (ja) テキスト文検索装置、テキスト文検索方法、及びテキスト文検索プログラム
Korobkin et al. Patent data analysis system for information extraction tasks
CN110717014B (zh) 一种本体知识库动态构建方法
KR100283143B1 (ko) 시소러스 코드 압축 방법
Castellón et al. Syntactic parsing of unrestricted spanish text
JP3919720B2 (ja) 換言装置及びコンピュータプログラム
KR960025181A (ko) 한글정보 검색에 관한 검색문 동적변환 방법
Eineborg et al. ILP in part-of-speech tagging—an overview
CN113536761B (zh) 一种基于框架重要度计算句子相似度的方法
Ćavar et al. CroMo–morphological analysis for standard Croatian and its synchronic and diachronic dialects and variants
JPS63221475A (ja) 構文解析方法
JPH03184126A (ja) コンパイラおよびプログラムの命令コードの配置方法
Walker Computational linguistic techniques in an on-line system for textual analysis
Müller Attribute-directed top-down parsing
Gong et al. Ontology-based English-Mongolian Machine Translation System Design and Implementation
Dolan et al. Not for its own sake: knowledge as a byproduct of natural language processing
Panda Rule based" Sandhi Bicched"(de-euphonization) of Bengali
CN116266263A (zh) 计算句子相似度的方法、相关装置、以及计算机存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20070918

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee