[go: up one dir, main page]

KR20020054254A - 사전구조를 이용한 한국어 형태소 분석방법 - Google Patents

사전구조를 이용한 한국어 형태소 분석방법 Download PDF

Info

Publication number
KR20020054254A
KR20020054254A KR1020000083385A KR20000083385A KR20020054254A KR 20020054254 A KR20020054254 A KR 20020054254A KR 1020000083385 A KR1020000083385 A KR 1020000083385A KR 20000083385 A KR20000083385 A KR 20000083385A KR 20020054254 A KR20020054254 A KR 20020054254A
Authority
KR
South Korea
Prior art keywords
dictionary
word
noun
checking
function
Prior art date
Application number
KR1020000083385A
Other languages
English (en)
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 KR1020000083385A priority Critical patent/KR20020054254A/ko
Publication of KR20020054254A publication Critical patent/KR20020054254A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis

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. 발명이 해결하려고 하는 기술적 과제
본 발명은, 단어 클러스팅 엔진의 성능부담을 감소시키고 질적 성능향상을 도모하기 위한 사전구조(AVL+Trie)를 이용한 한국어 형태소 분석 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.
3. 발명의 해결방법의 요지
본 발명은, 형태소 분석 장치에 적용되는 AVL+Trie 구조를 이용한 사전기반 한국어 형태소 분석 방법에 있어서, 어절 단위로 단어를 추출하는 제 1 단계; 상기 추출된 단어를 압축 불용어 사전을 참조하여 검색하는 제 2 단계; 상기 추출된 단어를 명사사전을 참조하여 검색하는 제 3 단계; 상기 명사사전 참조 검색 후 남은 음절을 체크하여 부적합 오류가 발생하였는지를 확인하는 제 4 단계; 상기 제 4 단계의 확인 결과, 부적합 오류가 발생하면 미등록어로 처리하는 제 5 단계; 및 상기 제 4 단계의 확인 결과, 부적합 오류가 발생하지 않으면 명사를 추출하여 데이터베이스에 저장하는 제 6 단계를 포함함.
4. 발명의 중요한 용도
본 발명은 검색 시스템 등에 이용됨.

Description

사전구조를 이용한 한국어 형태소 분석방법{Analysis Method for Korean Morphology using AVL+Trie Structure}
본 발명은 사전구조(AVL+Trie)를 이용한 한국어 형태소 분석 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 더욱 상세하게는 단어 클러스터링 엔진의 입력리스트 생성기로 단어 클러스터 엔진의 성능부담을 감소시키는 효과를 가지기 위한 사전구조(AVL+Trie)를 이용한 한국어 형태소 분석 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
인터넷 산업이 크게 확장되고, 엄청난 양의 지식정보가 쏟아짐에 따라 인터넷 이용성향은 좀더 편리하고 개인 중심적인 서비스로의 활로를 모색하고 있다.
검색 시스템의 경우에도 얼마나 많은 데이터를 보유하는가 보다는 이용자에게 유용하고 정확한 정보를 효과적으로 서비스하는 기술관점으로 초점이 바뀌고 있다. 새롭게 대두되고 있는 클러스터링 검색기술은 정보 이용자가 던진 질의에 대해 관련도가 높은 질의 및 문서들을 클러스터링하여 이용자 질의검색 결과와 함께 제공한다.
클러스터링 엔진에서 제공하는 부가적인 검색결과는 새로운 지식에 처음 접하는 이용자일 경우 관련어 및 유사어 인식이 가능하며 이를 통해 초기개념 인식부담이 감소한다.
초기개념 인식부담을 감소시키는 효과가 있는 클러스터링 검색기술은 크게 문서 클러스터링과 단어 클러스터링 기술이 있으며, 이 중 단어 클러스터링 기술은 단어만을 클러스터링하여 데이터베이스로 구축하고, 관련된 문서는 내부검색을 통해 제공한다. 따라서, 클러스터링 데이터베이스 구축시간이 짧고, 기존의 개발된 검색엔진을 활용할 수 있다는 잇점이 있다.
적용분야, 말뭉치 종류, 사용언어에 따른 형태소 분석기의 종래기술을 살펴보면 다음과 같다.
먼저, 형태소 분석기가 적용될 응용분야의 동향은 다음과 같다.
현재 형태소 분석기는 영문, 한글 구분없이 대부분의 응용시스템에서 실용화 단계에 도달하였으며, 문장구조변형이나 어형변화가 상대적으로 적게 일어나는 영문 언어처리연구가 한글언어처리연구에 비해 앞서 있는 편이다.
실용화 단계에 도달한 형태소 분석기는 적용된 각 응용시스템(예 : 맞춤법검사기, 정보검색, 번역시스템, 음성인식 시스템)의 목적 및 확장범위에 따라 알고리즘과 참조사전 구조가 다양하다.
맞춤법 검사기용으로 개발된 형태소 분석기는 정확성이 최우선으로 고려되어야 하고, 정보검색용으로 개발된 형태소 분석기는 빠른 속도와 정확성이 요구되고, 번역시스템용으로 개발된 형태소 분석기는 속도보다는 번역대상 언어사이의 관용구 처리를 포함한 완벽한 변환매칭이 이루어져야 한다. 따라서, 한 시스템에서 사용된 형태소 분석 알고리즘 및 산출결과를 다른 시스템에서 공용으로 사용한다면 효율성 측면에서 성능저하를 감수해야 한다.
본 발명과 직접적 관련이 있는 검색엔진용 형태소 분석기도 여러 가지 목적으로 구분할 수 있으며, 각각의 목적에 맞춘 효과적인 형태소 분석기가 필요하다. 즉, 형태소 분석기는 검색엔진의 색인데이터베이스 구축을 위한 색인어 추출기로서의 형태소 분석기, 문서자동 요약문 추출을 위한 전처리기로서의 형태소 분석기, 자연어 질의처리기를 위한 전처리기로서의 형태소 분석기, 또는 본 발명과 같이 단어 클러스터 엔진의 입력어 추출기로서의 형태소 분석기 등 다양하게 이용된다.
상기 형태소 분석기가 이렇게 다양한 목적의 응용에 활용될 수 있으므로, 한 시스템에서 사용된 형태소 분석기를 다른 시스템에서도 이식성을 가지고 활용할 수 있도록 일부 모듈화된 형태소 분석기 개발이 이루어지고는 있으나, 현재까지는 각 응용목적에 맞춘 개별적인 형태소 분석기 개발이 주로 이루어지고 있다.
다음으로, 형태소 분석기가 적용된 말뭉치의 동향은 다음과 같다.
말뭉치는 가공정도에 따라, 문서 특성별로, 그리고 담고 있는 내용에 따라여러가지가 있을 수 있다. 먼저, 가공정도에 따라서는 가공되지 않은 기초말뭉치, 형태소 분석으로 태깅(tagging)된 말뭉치, 구문트리로 태깅(tagging)된 말뭉치, 범주화된 말뭉치, 기본 동사목록에 따라 문서를 분류한 문형 자료 모음이 있고, 문서 특성에 따라서는 신문, 잡지와 같이 길이가 짧으면서 한가지 주제를 다루는 말뭉치와 소설과 같이 길이가 길고 여러가지 줄거리를 가지는 말뭉치가 있을 수 있다. 또한, 담고 있는 내용에 따라서는 각 분야별로 정보통신분야, 반도체분야, 정치, 경제 등을 범주화하여 말뭉치를 구성할 수도 있다.
현재, 한국어 말뭉치로는 KTset 96, 한국경제 신문에서 발취한 ETRI-계몽 말뭉치, ETRI(한국전자통신연구소) 제 1 회 형태소 분석기 및 태거 평가대회에서 사용된 말뭉치, 코딕(KORDIC)의 말뭉치 등이 있으며, 아직까지 정보통신분야의 전문적인 내용을 담고 있는 문서들을 기초말뭉치로 구축하여 클러스터 엔진을 구축한 사례는 없다.
한국어에 적용된 형태소 분석 알고리즘 및 사전구조를 살펴보면 다음과 같다.
현재, 실용화단계에 있는 한국어 형태소 분석기도 사용 알고리즘과 참조하는 사전의 구조를 어떻게 구성하는가에 따라 처리속도에 상당한 변화를 기대할 수 있다. 특히, 한국어는 복합명사를 많이 포함하고 있으므로 이들 복합명사의 저장 및 검색이 빨라야 하며, 사전에 미등록된 단어 발생시 이를 처리해 줄 수 있는 모듈이 있어야 한다.
대표적인 알고리즘으로는 최장일치기법(Longest matching Method), 최단일치기법(Shortest matching Method), 타불러파싱기법(Tabular Parsing Method), 헤드-테일 구분기법(Head-Tail division Method), 음절기반분석법(Syllable based Analysis Method), 투-레벨 형태소 분석(Two-level morphology) 등이 있고, 사전구조로는 트라이구조(Trie Structure), 해쉬구조(Hash Structure), B+ 트리구조(B+ Tree Structure) 등이 있다.
사전에 미등록된 단어를 처리하기 위해 기존 발명에서는 구축한 사전이외에 미등록 가능성이 있는 단어 리스트를 미리 추정하여 유형별로 분류저장해 놓음으로써 사전에 미등록어 발생 빈도를 줄이도록하는 형태소 해석방법이 제시되기도 하였다.
그러나, 상기 형태소 분석기들은 미등록어가 작거나, 검색시 속도가 느리며, 전문분야 형태소 분석 및 신조어처리에 문제점이 있었다.
본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로, 단어 클러스팅 엔진의 성능부담을 감소시키고 질적 성능향상을 도모하기 위한 사전구조(AVL+Trie)를 이용한 사전기반 한국어 형태소 분석 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
도 1 은 본 발명에 따른 형태소 분석 방법에 대한 일실시예 흐름도.
도 2 는 본 발명에 따른 AVL+Trie 사전구조에 대한 일실시예 설명도.
상기 목적을 달성하기 위한 본 발명의 방법은, 형태소 분석 장치에 적용되는 AVL+Trie 구조를 이용한 사전기반 한국어 형태소 분석 방법에 있어서, 어절 단위로 단어를 추출하는 제 1 단계; 상기 추출된 단어를 압축 불용어 사전을 참조하여 검색하는 제 2 단계; 상기 추출된 단어를 명사사전을 참조하여 검색하는 제 3 단계; 상기 명사사전 참조 검색 후 남은 음절을 체크하여 부적합 오류가 발생하였는지를 확인하는 제 4 단계; 상기 제 4 단계의 확인 결과, 부적합 오류가 발생하면 미등록어로 처리하는 제 5 단계; 및 상기 제 4 단계의 확인 결과, 부적합 오류가 발생하지 않으면 명사를 추출하여 데이터베이스에 저장하는 제 6 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명의 다른 방법은, 사전에 없는 불용어를 임시 저장하는 제 7 단계; 불용어 사전을 참조하여 상기 불용어 사전에 등록되어 있는 불용어인지를 확인하는 제 8 단계; 상기 제 8 단계의 확인 결과, 불용어 사전에 등록되어 있으면 발생 빈도가 높은 불용어를 상기 압축 불용어 사전에 저장하는 제 9 단계; 및 상기 제 8 단계의 확인 결과, 불용어 사전에 없으면 신조어로 간주하여 관리자 모듈로 이동하는 제 10 단계를 더 포함하는 것을 특징으로 한다.
한편, 본 발명은, 대용량 프로세서를 구비한 형태소 분석 시스템에, 어절 단위로 단어를 추출하는 제 1 기능; 상기 추출된 단어를 압축불용어사전을 참조하여 검색하는 제 2 기능; 상기 추출된 단어를 명사사전을 참조하여 검색하는 제 3 기능; 상기 명사사전 참조 검색 후 남은 음절 체크하여 부적합 오류가 발생하였는지를 확인하는 제 4 기능; 상기 제 4 기능의 확인 결과, 부적합 오류가 발생하면 미등록어로 처리하는 제 5 기능; 및 상기 제 4 기능의 확인 결과, 부적합 오류가 발생하지 않으면 명사를 추출하여 데이터베이스에 저장하는 제 6 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
또한, 본 발명은, 사전에 없는 불용어를 임시 저장하는 제 7 기능; 불용어 사전을 참조하여 상기 불용어 사전에 등록되어 있는 불용어인지를 확인하는 제 8 기능; 상기 제 8 기능의 확인 결과, 불용어 사전에 등록되어 있으면 발생 빈도가 높은 불용어는 압축 불용어 사전에 저장하는 제 9 기능; 및 상기 제 8 기능의 확인 결과, 불용어 사전에 없으면 신조어로 간주하여 관리자 모듈로 이동하는 제 10 기능을 더 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 본 발명에 따른 형태소 분석 방법에 대한 일실시예 흐름도이다.
본 발명에서의 형태소 분석기는 단어 클러스터 엔진을 위한 입력어 추출기로 문서에서 핵심이 되는 명사들을 추출한다. 핵심 명사범주를 일반명사에 두지않고, 정보통신분야의 전문적인 기술정보용어를 기반으로 구성함으로써 전문정보를 체계적이고 효율적인 인터페이스로 제공할 수 있는 기반을 마련한다.
도 1 에 도시된 바와 같이, 본 발명에 따른 형태소 분석 방법은, 먼저 문서에서 "정보통신기술에 미친 영향 분석"(101)이라는 문장이 있다면, 상기 문장에서 어절단위로 단어를 추출한다(100). 스페이스(space), 콤마(comma), 기타 특수기호 등을 기준으로 단어를 구분한다. 단어의 추출은 문서단위와 문장단위로 처리함으로써 근접한 단어들 사이의 연관관계 도출 및 핵심문장 도출에 활용한다.
그리고, 다음 단어를 넘어가서(102), 명사가 아닌 단어들(예 : 동사, 형용사, 부사, 감탄사 등) 중에서 출현 빈도율이 높은 단어들은 압축 불용어 사전(122)으로 구성하고, 명사사전(131)을 참조하기 전에 먼저 참조한다.
높은 출현 빈도율을 가지는 명사단어와 비교하여 불용어의 출현 빈도율이 높게 나왔다면, 명사사전(131) 참조 전에 출현 빈도율이 높은 불용어부터 참조함으로써 속도향상을 도모할 수 있다. 따라서, 압축 불용어 사전(122)의 크기는 작고, 참조 알고리즘도 간단한 완전일치법을 사용한다.
출현빈도가 높은 불용어선택을 위한 임계(Threshold)값 결정은 아래 [수학식 1]을 바탕으로 결정한다.
상기 [수학식 1]에서, "n"은 명사, "N"은 명사사전, "d"는 불용어, "D"는 불용어 사전, "k"와 "q"는 각 단어의 출현빈도수, 그리고 "max"는 최고 빈도값을 각각 나타낸다.
상기 압축 불용어가 아닌 단어들에 대해 명사사전(131)을 참조하여 명사여부를 체크한다(104). 여기서, 명사사전은 크게 2가지로 구분된다. 즉, 일반 명사와 정보통신분야 전문용어를 담고 있는 전문 명사이다.
상기 명사사전 참조단계에서는 단어 클러스터링 엔진에서 핵심적인 용어로 쓰기 위한 전문 명사를 추출해야 하므로 전문 명사와 일반 명사를 구분한다.
상기 전문 명사는 최장일치기법을 일반 명사는 최단일치기법을 사용한다.
상기 최장일치방법은 찾고자 하는 단어와 사전에 저장된 단어들 사이의 비교결과, 사전에 저장된 단어가 여럿 있다면 이들 중 가장 긴 단어를 선택하는 방법이다. 상기 최단일치방법과 비교하여 명사추출시 추출 단어 개수가 작고, 의미있는 복합명사를 추출할 수 있다. 따라서, 최장일치방법은 복합명사를 포함하는 문장에서 복합명사를 추출하는데 효과적이다.
만일, 일반 명사로 등록된 단어가 전문명사 앞에 나온 경우, 즉 "한일기계번역"과 같이 "한일"(일반 명사) "기계번역"(전문 명사)이 함께 있는 경우에는, 사전검색을 통해 단어를 검색한 결과가 전문 명사로 태깅(tagging)된 경우는 가장 긴 단어를 추출하고 일반 명사로 태깅된 경우는 가장 짧은 단어를 추출한다.
상기 전문 명사를 우선으로 선택하며 만일 일반 명사가 전문 명사 전위에 위치한 경우 일반 명사부분을 제외한 전문 명사를 추출할 수 있도록 한다.
다음으로, 한 어절에서 최장일치 방법으로 전문 명사사전에 등록된 명사를 추출하고 남은 음절들에 대해 일반 명사 혹은 의존형태소 여부를 일반명사사전(131)과 의존형태소사전(132)을 참조하여 체크하고, 부적합 오류가 발생하였는지를 판단한다(105). 여기서, 참조 알고리즘은 예를 들어, "기계번역시스템에서의"라는 어절에서 명사사전에 "기계번역"이 저장되어 있어 최장일치방법으로 "기계번역"이 추출되면, 남은 음절체크를 통해 "시스템"은 일반명사로 "의"는 의존형태소로 분석대상 어절 끝까지 확인한다.
만일, 남은 음절체크 단계에서 분석대상 어절을 끝까지 확인 결과(105), 부적합 오류가 발생하면 명사사전 참조과정(104)부터 다시 수행한다. 다시 수행하였으나 더 이상 분석할 명사대상이 없거나 분석대상 어절 끝까지 확인 결과 부적합 오류가 발생하면 미등록어 처리모듈(120)에 어절 전체를 넘긴다.
분석대상 어절을 끝까지 확인 결과(105) 적합 판정이 나면 응용 데이터베이스로 전문 명사를 전달한다.
한편, 상기 미등록어 처리모듈(120)로 전달된 어절에 대한 처리 과정은 다음과 같다.
기존 방법 중에는 사전에 구축된 단어가 아닌 미등록어를 미리 추정하여 유형별로 분류저장함으로써 최대한 미등록어의 발생빈도를 줄이는 방법을 취하기도 한다. 즉, 사람이름, 도시이름 등 사전에는 포함되지 않은 미등록어이지만 문서에서 나타날 경우 처리할 수 없는 단어들을 미리 추정하고 유형별로 저장하여 활용한다. 대신 본 방법은 미등록어를 유형별로 구분하지 않고 미등록어가 나타났을 때 실시간으로 미등록어를 불용어 사전에 추가할지 신조어로 처리할지 결정할 수 있도록 미등록어 처리기(120)을 제공한다.
상기 미등록어 처리기(120)는 크게 2가지로 구성되어 있다. 불용어 자동 분류모듈(130)과 관리자 모듈(125)이다. 미등록어 처리기(120)로 이동된 단어는 우선 불용어 자동 분류 모듈(130)의 임시 불용어 사전으로 이동하여 불용어사전(121)에 해당단어가 수록되어 있는지 여부를 판단하고(124), 만일 있다면 빈도수를 증가시킨다. 만일 사전에 수록되어 있지 않다면 관리자 모듈(125)로 단어를 넘겨주고, 일정 시간 간격으로 관리자가 처리할 수 있도록 품사판정권한을 관리자에게 부여한다.
상기 불용어사전(121)에는 동사, 형용사, 부사, 기타 품사단어들과 명사중에서 관리자가 불필요하다고 지정한 명사단어를 포함한다.
기존에는 어절단위로 추출된 단어에서 명사를 추출하여 만일 해당 명사가 복합명사라면 단일 명사로 구분하여 추출하는 방법이 있다. 하지만, 본 방법에서는 한국어 복합명사가 단일명사로 분리되었을 때 고유의미가 상실되기 때문에 복합명사 그대로의 활용을 중요시한다. 따라서, 한 어절 내의 단일명사 추출뿐 아니라 다 어절에 걸쳐 형성될 수 있는 복합명사를 명사조합이라는 모듈을 두어 추출할 수 있도록 제공한다.
이를 위해 앞서 압축 불용어 및 의존형태소, 미등록어로 판명된 의미있는 명사가 아닌 형태소들은 복합명사 조합처리를 위해 해당 형태소 뒤에 태그를 붙인다.
상기 태그를 포함하지 않는 연속된 명사 단어 리스트는 비록 어절단위 단어추출단계에서 분리되어 추출되더라도 의미있는 하나의 복합명사일 가능성이 높으므로 명사조합을 한다. 상기 조합된 명사가 의미있는 복합명사인지 전문 명사사전을참조하여 결과 명사리스트에 추가한다.
각 문서의 각 문장(sentence)당 출현한 명사리스트와 출현빈도수 정보를 작성하여 단어 클러스터 처리모듈로 전달한다.
도 2 는 본 발명에 따른 AVL+Trie 사전구조에 대한 일실시예 설명도이다.
도 2 에 도시된 바와 같이, AVL+Trie 사전구조는 기존의 Trie(reTrieval)구조의 장점과 AVL(Adelson-Velskii and Landis) 트리구조의 장점을 조합한 구조이다. 여기서, Trie는 가변적인 길이를 가진 '키이'더라도 검색속도를 항상 일정하게 유지할 수 있기 때문에 복합명사를 많이 포함한 한국어의 저장/검색/삭제에 유용한 자료구조이다.
상기 Trie구조에 AVL구조의 장점을 조합하기 위해, Trie 각 단계별 노드대신에 하나의 AVL 트리를 구성하고, 음절단위 혹은 자소단위의 작은 문자셋을 범위로 저장/검색/삭제가 이루어 질 수 있도록 구성한다. 즉, Trie단계를 음절단위로 구성시 도 2 와 같이 구성되며, 첫음절을 찾기 위해 첫음절을 위해 구성해 놓은 AVL 구조(210)를 참조한다.
상기 각 AVL 구조의 노드는 다음 음절(220, 230, 240)을 위한 링크정보를 가지고 있으며, 이 링크정보를 이용하여 다음 음절 정보를 가지고 있는 링크된 AVL 트리로 점프한다. 또한, 각 AVL 트리의 각 노드에는 복합명사의 띄어쓰기 오류 및 단일명사로의 분리를 위해 단일명사로 분리될 수 있는 음절에는 분리 태그(Taq)를 셋팅시킨다.
AVL 트리는 작은 양의 데이터에 대해 저장/검색/삽입 시 메모리를 사용할 수있어 사전사용에 상당한 속도향상을 도모할 수 있다.
상기 AVL+Trie구조를 이용하여 단어를 검색하는 과정에 대하여 일예를 들어 설명하면 다음과 같다.
예를 들어, 사전에 수록된 단어가 "정보처리", "의존형태", "태그", "정보통신", "단일명사", "불용어", "합성어", "정보화", "정보검색", "정밀측위"이고, 찾고자 하는 단어가 "정보처리"라면, 첫번째 단계에서는 첫번째 음절을 위한 첫번째 AVL 트리(210)에서 "정"을 검색하고, 두번째 단계에서는 "정"이 링크하고 있는 두번째 음절을 위한 두번째 AVL 트리(220)로 이동 후 "처"를 검색한다.
다음으로, 세번째 단계에서 "보"가 링크하고 있는 세번째 음절을 위한 세번째 AVL 트리(230)로 이동 후 "처"를 검색하고, 네번째 단계에서 "처"가 링크하고 있는 네번째 음절을 위한 네번째 AVL 트리(240)로 이동 후 "리"를 검색하게 된다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
상기한 바와 같은 본 발명은, 검색시 초기 개념 인식부담을 감소시키며, 단어 클러스터 엔진의 성능부담을 감소시키는 효과가 있다.

Claims (8)

  1. 형태소 분석 장치에 적용되는 사전구조(AVL+Trie)를 이용한 한국어 형태소 분석 방법에 있어서,
    어절 단위로 단어를 추출하는 제 1 단계;
    상기 추출된 단어를 압축 불용어 사전을 참조하여 검색하는 제 2 단계;
    상기 추출된 단어를 명사사전을 참조하여 검색하는 제 3 단계;
    상기 명사사전 참조 검색 후 남은 음절을 체크하여 부적합 오류가 발생하였는지를 확인하는 제 4 단계;
    상기 제 4 단계의 확인 결과, 부적합 오류가 발생하면 미등록어로 처리하는 제 5 단계; 및
    상기 제 4 단계의 확인 결과, 부적합 오류가 발생하지 않으면 명사를 추출하여 데이터베이스에 저장하는 제 6 단계
    를 포함하는 형태소 분석 방법.
  2. 제 1 항에 있어서,
    사전에 없는 불용어를 임시 저장하는 제 7 단계;
    불용어 사전을 참조하여 상기 불용어 사전에 등록되어 있는 불용어인지를 확인하는 제 8 단계;
    상기 제 8 단계의 확인 결과, 불용어 사전에 등록되어 있으면 발생 빈도가 높은 불용어를 상기 압축 불용어 사전에 저장하는 제 9 단계; 및
    상기 제 8 단계의 확인 결과, 불용어 사전에 없으면 신조어로 간주하여 관리자 모듈로 이동하는 제 10 단계
    를 더 포함하는 형태소 분석 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제 2 단계는,
    상기 압축 불용어 사전을 참조하여 상기 추출된 단어와 완전일치하는지를 확인하는 제 11 단계;
    상기 제 11 단계의 확인 결과, 완전일치하면 다음 단어를 추출하는 과정으로 진행하는 제 12 단계; 및
    상기 제 11 단계의 확인 결과, 일치하지 않으면 상기 제 3 단계로 진행하는 제 12 단계
    를 포함하는 형태소 분석 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 3 단계는,
    명사사전을 참조하여 상기 추출된 단어가 최장일치하는지 확인하는 제 13 단계;
    상기 제 13 단계의 확인 결과, 최장일치하면 상기 제 4 단계로 진행하는 제 14 단계; 및
    상기 제 13 단계의 확인 결과, 최장일치하지 않으면 미등록어로 처리하는 제 15 단계
    를 포함하는 형태소 분석 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 명사사전을 참조하는 과정은,
    전문분야 명사사전에서는 최장일치방법으로, 일반분야 명사사전에서는 최단일치방법으로 확인하는 것을 특징으로 하는 형태소 분석 방법.
  6. 제 2 항에 있어서,
    상기 불용어를 압축 불용어 사전에 저장하는 과정은,
    하기의 [수학식 1]과 같이 결정된 임계(Threshold)값에 따라 출현빈도가 높은 불용어를 선택하여 상기 압축 불용어 사전에 저장하는 것을 특징으로 하는 형태소 분석 방법.
    [수학식 1]
    여기서, "n"은 명사, "N"은 명사사전, "d"는 불용어, "D"는 불용어 사전, "k"와 "q"는 각 단어의 출현빈도수, 그리고 "max"는 최고 빈도값을 각각 나타낸다.
  7. 대용량 프로세서를 구비한 형태소 분석 시스템에,
    어절 단위로 단어를 추출하는 제 1 기능;
    상기 추출된 단어를 압축 불용어 사전을 참조하여 검색하는 제 2 기능;
    상기 추출된 단어를 명사사전을 참조하여 검색하는 제 3 기능;
    상기 명사사전 참조 검색 후 남은 음절을 체크하여 부적합 오류가 발생하였는지를 확인하는 제 4 기능;
    상기 제 4 기능의 확인 결과, 부적합 오류가 발생하면 미등록어로 처리하는 제 5 기능; 및
    상기 제 4 기능의 확인 결과, 부적합 오류가 발생하지 않으면 명사를 추출하여 데이터베이스에 저장하는 제 6 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  8. 제 6 항에 있어서,
    사전에 없는 불용어를 임시 저장하는 제 7 기능;
    불용어 사전을 참조하여 상기 불용어 사전에 등록되어 있는 불용어인지를 확인하는 제 8 기능;
    상기 제 8 기능의 확인 결과, 불용어 사전에 등록되어 있으면 발생 빈도가 높은 불용어를 상기 압축 불용어 사전에 저장하는 제 9 기능; 및
    상기 제 8 기능의 확인 결과, 불용어 사전에 없으면 신조어로 간주하여 관리자 모듈로 이동하는 제 10 기능
    을 더 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020000083385A 2000-12-27 2000-12-27 사전구조를 이용한 한국어 형태소 분석방법 KR20020054254A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000083385A KR20020054254A (ko) 2000-12-27 2000-12-27 사전구조를 이용한 한국어 형태소 분석방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000083385A KR20020054254A (ko) 2000-12-27 2000-12-27 사전구조를 이용한 한국어 형태소 분석방법

Publications (1)

Publication Number Publication Date
KR20020054254A true KR20020054254A (ko) 2002-07-06

Family

ID=27687072

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000083385A KR20020054254A (ko) 2000-12-27 2000-12-27 사전구조를 이용한 한국어 형태소 분석방법

Country Status (1)

Country Link
KR (1) KR20020054254A (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100831037B1 (ko) * 2006-09-29 2008-05-20 한국전자통신연구원 병렬 말뭉치를 이용한 신조어의 대역어 자동 선정 방법 및장치
KR101283726B1 (ko) * 2007-05-03 2013-07-08 엔에이치엔(주) 동영상 관련 정보 제공방법 및 제공 시스템
CN103942190A (zh) * 2014-04-16 2014-07-23 安徽科大讯飞信息科技股份有限公司 文本分词方法及系统
KR20180104899A (ko) * 2017-03-14 2018-09-27 한국전자통신연구원 신조어 자동 인식을 위한 언어 분석에 기반한 온라인 문맥 광고 지능화 장치 및 그 방법
CN111460175A (zh) * 2020-04-08 2020-07-28 福州数据技术研究院有限公司 一种基于snomed-ct的医学名词词典构造与拓展方法
KR102570594B1 (ko) * 2022-07-29 2023-08-25 솔닥 주식회사 인공지능 기반의 비대면 진료 영상 처리 장치, 방법 및 프로그램
WO2024117315A1 (ko) * 2022-11-30 2024-06-06 주식회사 미리내테크놀로지스 기계학습, 자연어처리 및 패턴기반 참조 라이브러리 기반 탐색 언어학습 시스템을 이용한 지식엔진구축방법

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6020234A (ja) * 1983-07-15 1985-02-01 Fujitsu Ltd 日本語形態素解析方式
KR960018972A (ko) * 1994-11-29 1996-06-17 조백제 어절구조 특성을 이용한 형태소 분석 시스팀 및 분석방법
JPH11338863A (ja) * 1998-05-29 1999-12-10 Nippon Telegr & Teleph Corp <Ntt> 未知名詞および表記ゆれカタカナ語自動収集・認定装置、ならびにそのための処理手順を記録した記録媒体
KR20000021962A (ko) * 1998-09-30 2000-04-25 정선종 부분 문자열별 기분석에 기반한 한국어 형태소 분석장치 및 그방법
KR20000033993A (ko) * 1998-11-26 2000-06-15 정선종 워드프로세서의 형태소 정보를 이용한 문서 정렬장치 및 방법
KR20000039406A (ko) * 1998-12-12 2000-07-05 이계철 부분 구문 분석을 통한 보어-술어 관계의 복합명사 색인 방법
KR20020049164A (ko) * 2000-12-19 2002-06-26 오길록 유전자 알고리즘을 이용한 카테고리 학습과 단어클러스터에 의한 문서 자동 분류 시스템 및 그 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6020234A (ja) * 1983-07-15 1985-02-01 Fujitsu Ltd 日本語形態素解析方式
KR960018972A (ko) * 1994-11-29 1996-06-17 조백제 어절구조 특성을 이용한 형태소 분석 시스팀 및 분석방법
JPH11338863A (ja) * 1998-05-29 1999-12-10 Nippon Telegr & Teleph Corp <Ntt> 未知名詞および表記ゆれカタカナ語自動収集・認定装置、ならびにそのための処理手順を記録した記録媒体
KR20000021962A (ko) * 1998-09-30 2000-04-25 정선종 부분 문자열별 기분석에 기반한 한국어 형태소 분석장치 및 그방법
KR20000033993A (ko) * 1998-11-26 2000-06-15 정선종 워드프로세서의 형태소 정보를 이용한 문서 정렬장치 및 방법
KR20000039406A (ko) * 1998-12-12 2000-07-05 이계철 부분 구문 분석을 통한 보어-술어 관계의 복합명사 색인 방법
KR20020049164A (ko) * 2000-12-19 2002-06-26 오길록 유전자 알고리즘을 이용한 카테고리 학습과 단어클러스터에 의한 문서 자동 분류 시스템 및 그 방법

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100831037B1 (ko) * 2006-09-29 2008-05-20 한국전자통신연구원 병렬 말뭉치를 이용한 신조어의 대역어 자동 선정 방법 및장치
KR101283726B1 (ko) * 2007-05-03 2013-07-08 엔에이치엔(주) 동영상 관련 정보 제공방법 및 제공 시스템
CN103942190A (zh) * 2014-04-16 2014-07-23 安徽科大讯飞信息科技股份有限公司 文本分词方法及系统
CN103942190B (zh) * 2014-04-16 2017-08-25 科大讯飞股份有限公司 语音合成中文本分词方法及系统
KR20180104899A (ko) * 2017-03-14 2018-09-27 한국전자통신연구원 신조어 자동 인식을 위한 언어 분석에 기반한 온라인 문맥 광고 지능화 장치 및 그 방법
US10691892B2 (en) 2017-03-14 2020-06-23 Electronics And Telecommunications Research Institute Online contextual advertisement intellectualization apparatus and method based on language analysis for automatically recognizing coined word
CN111460175A (zh) * 2020-04-08 2020-07-28 福州数据技术研究院有限公司 一种基于snomed-ct的医学名词词典构造与拓展方法
KR102570594B1 (ko) * 2022-07-29 2023-08-25 솔닥 주식회사 인공지능 기반의 비대면 진료 영상 처리 장치, 방법 및 프로그램
WO2024117315A1 (ko) * 2022-11-30 2024-06-06 주식회사 미리내테크놀로지스 기계학습, 자연어처리 및 패턴기반 참조 라이브러리 기반 탐색 언어학습 시스템을 이용한 지식엔진구축방법

Similar Documents

Publication Publication Date Title
US7516125B2 (en) Processor for fast contextual searching
CA2426104C (en) An information retrieval system
US7389224B1 (en) Natural language search method and apparatus, including linguistically-matching context data
US5794177A (en) Method and apparatus for morphological analysis and generation of natural language text
US7424421B2 (en) Word collection method and system for use in word-breaking
KR100453227B1 (ko) 번역 지원 시스템에서의 유사 문장 검색 방법
US8135717B2 (en) Processor for fast contextual matching
US5752051A (en) Language-independent method of generating index terms
US5940624A (en) Text management system
JP3636941B2 (ja) 情報検索方法と情報検索装置
US20040117352A1 (en) System for answering natural language questions
US7676358B2 (en) System and method for the recognition of organic chemical names in text documents
WO2002080036A1 (en) Method of finding answers to questions
JP2011118689A (ja) 検索方法及びシステム
Chen et al. Named entity extraction for information retrieval
US20070112839A1 (en) Method and system for expansion of structured keyword vocabulary
JP3594701B2 (ja) キーセンテンス抽出装置
KR20020054254A (ko) 사전구조를 이용한 한국어 형태소 분석방법
Chien et al. Internet Chinese information retrieval using unconstrained mandarin speech queries based on a client-server architecture and a PAT-tree-based language model
JPH11259524A (ja) 情報検索システム、情報検索システムにおける情報処理方法および記録媒体
Grishman Information extraction and speech recognition
EP0592402B1 (en) A text management system
Boucham et al. A language independent approach to multilingual document representation including Arabic
JP2897191B2 (ja) 日本語形態素解析システム及び形態素解析方式
KR20010004090A (ko) 에이치티엠엘 기반 한글 용어/약어 하이퍼링크 생성기

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20001227

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20030730

Patent event code: PE09021S01D

N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20030802

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20031114

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20030730

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I