루씬 한국어 형태소 분석기 사전 구성 및 팁.

Elastic/Elasticsearch 2013. 1. 22. 14:25

원본출처 : http://cafe.naver.com/korlucene


형태소사전은 모두 8개로 구성되어 있습니다. 그 중 하나는 음절정보이므로 실제로는 7개로 봐야 하겠군요.

사전은 org/apache/lucene/analysis/kr/dic 아래에 있습니다.

이 사전은 모두 jar 에 함께 패키징되어 있는데, KoreanAnalyzer 는 우선 classpath 에 있는 파일에서 찾고

없으면 jar 에 패키징되어 있는 것을 읽어 옵니다. 따라서 커스터마이징된 사전을 사용하고자 한다면

%CLASSPATH%/org/apache/lucene/analysis/kr/dic 아래에 각자의 사전을 저장해서 사용하면 됩니다.

 

각 사전에 대한 자세한 설명은 다음과 같습니다.

 

1. total.dic : 기본사전

용언과 체언을 포함한 기본사전입니다. 사전의 형식을 보면 다음과 같이 구성되어 있습니다.

================

납부,10011X

================

콤마(,)를 중심으로 좌측은 단어이고 우측은 단어정보입니다.

단어정보는 6글자로 구성되어 있는데 각 글자는 단어의 사용규칙을 나타내며 아래와 같습니다.

=========================================================

  1      2         3            4             5             6

명사 동사  기타품사  하여동사  되어동사  불규칙변형

=========================================================

1~3은 품사에 대한 정보이며, 위에 기술한 각 품사 여부를 나타냅니다.

4~5는 명사인 경우 "하다"와 "되다"가 붙을 수 있는 경우를 나타납내다. 주의)동사는 반드시(0)이어야 합니다.

6은 동사인 경우 불규칙변형의 종류를 나타내며 종류는 아래와 같습니다.

    B:ㅂ 불규칙, H:ㅎ 불규칙, L:르 불규칙, U:ㄹ 불규칙, S:ㅅ 불규칙, D:ㄷ 불규칙, R:러 불규칙, X:규칙

 

2. extension.dic : 확장사전

기본사전은 가능한 그 대로 사용하는 것이 좋을 것입니다. 그런데 사전을 조금 보완하여야 할때 확장사전을

사용하면 됩니다. 사전을 구성하는 규칙은 기본사전과 동일합니다.

 

3. josa.dic : 조사사전

조사들만 모아둔 사전입니다. 각 조사는 한줄씩 구분되어 있습니다.

 

4. eomi.dic : 어미사전

어미들만 모아둔 사전입니다. 각 어미는 한줄씩 구분되어 있습니다.

 

5. prefix.dic : 접두어 사전

복합명사를 분해시 2글자 이상의 단어로만 분해합니다. 그러나 "과소비" 같은 경우 "과"를 접두어로 분리해 내어

"과소비"와 "소비"를 색인어로 추출하기 위해 만든 사전입니다.

 

6. suffix.dic : 접미어 사전

복합명사를 분해 시 "현관문" 같은 경우 "문"을 접미어로 분해하여 "현관문"과 "현관"을 색인어로 추출하기 위해

만든사전입니다.

 

7. compounds.dic : 기분석 복합명사 사전

복합명사는 명사 사전을 기반으로 최장일치법에 의해 분해를 합니다. 그런데 "근로자의날" 같은 경우 중간에 조사가

포함되어 있으므로 분해가 불가능합니다. 이런 경우 복합명사 사전에 등록을 합니다. 규칙은 아래와 같습니다.

=========================================

근로자의날:근로자,날

=========================================

콜론(:)을 중심으로 좌측은 복합명사이고 우측은 함께 추출될 색인어입니다. 따라서 위의 경우는 색인어로

"근로자의날","근로자","날" 이렇게 3개가 추출됩니다.

 

 

 

: