'사전'에 해당되는 글 4건

  1. 2016.03.17 [Elasticsearch] Elasticsearch에 Arirang 외부 사전 등록하기
  2. 2015.11.20 [arirang] 사전 데이터 등록 예제
  3. 2013.01.22 루씬 한국어 형태소 분석기 사전 구성 및 팁.
  4. 2008.08.12 [펌]야후, 미니 일어사전 오픈

[Elasticsearch] Elasticsearch에 Arirang 외부 사전 등록하기

Elastic/Elasticsearch 2016. 3. 17. 12:49

arirang 한글 형태소 분석기를 적용하고 사전 데이터를 업데이트 할 일들이 많이 생깁니다.

jar 안에 들어 있는 사전 데이터는 패키지 빌드 후 재배포하고 클러스터 재시작까지 해줘야 하는데요.

이런 과정 없이 사전 데이터만 외부에서 파일로 업데이트 및 관리하고 재시작 없이 바로 적용했으면 합니다.


기본적으로 이전 글에서 사전 데이터를 reload 하는 REST API를 구현해 두었습니다.

이 기능으로 일단 기능 구현은 완료가 된 것입니다.


이전 글 보기)


그럼 elasticsearch에서 어디에 사전 파일을 두고 관리를 해야 적용이 가능 할까요?

이전 글을 보시면 기본적으로 수명님이 만드신 arirang.morph 에서 classpath 내  org/apache/lucene/analysis/ko/dic 과 같이 생성 및 배치 시키시면 먼저 이 파일을 읽어 들이게 되어 있습니다.


이전 글 보기)


단, elasticsearch 실행 시 classpath 정보에 생성한 경로를 추가하지 않으시면 사전 파일들을 찾을 수 없으니 이점 유의 하시기 바랍니다.


elasticsearch classpath 설정)

elasticsearch에서 가이드 하는 것은 수정하지 마라 입니다. 하지만 수정 없이는 이를 활용할 수 없으니 이런건 수정해줘야 합니다.


$ vi bin/elasticsearch.in.sh

.....

ES_CLASSPATH="$ES_HOME/lib/elasticsearch-2.2.0.jar:$ES_HOME/lib/*:$ES_HOME/설정하신경로입력"

.....


이렇게 수정하신 후 재시작 하시고 직접 사전 정보 업데이트 후 reload api 를 이용해서 적용되는지 확인해 보시면 되겠습니다.


참고 정보 - 간단 요약)

arirang.morph 에서 properties 파일과 dic 파일 loading flow


Step 1)

load external korean.properties into classpath.

dic files are same.


Step 2)

if not exist, load korean.properties into jar.

dic files are same.


사전 데이터는 어떻게 등록 할 수 있는지 궁금하신 분은 이전 글 참고하세요.


사전 데이터 등록 예제)

:

[arirang] 사전 데이터 등록 예제

ITWeb/검색일반 2015. 11. 20. 15:15

arirang analyzer 를 사용하면서 사전 활용을 위해서는 사전 파일이 어떻게 구성이 되어 있고 관리가 되어야 하는지 알아야 합니다.

아래 공식 카페에 들어가시면 많은 정보들이 있으니 참고 하시면 되겠습니다.


[공식카페]


[형태소분석 사전 구성 및 사용법]


[사전 등록 예시]

# 위 구성 및 사용법 에서와 같이 인덱스 순서가 이렇게 되어 있습니다.

명사 동사 기타품사 하여(다)동사 되어(다)동사 '내'가붙을수있는명사 na na na 불규칙변형


# 엘사는 명사이고 동사, 기타품사, 불규칙이 아니다, 라고 가정하면 아래와 같이 표현이 됩니다.

엘사,100000000X


# 노래는 명사이고 하여 동사가 됩니다.

노래,100100000X


# 소리는 명사이고 소리내다와 같이 내가 붙을 수 있는 명사 입니다.

소리,100001000X


[사전작업 후 리로딩]

arirang-morph 패키지에서 DictionaryUtil.java 내 loadDictionary() 호출을 통해 다시 올려 줍니다.

▶ 별도 구현이 필요합니다.


[불규칙변형 태그]

원문) http://cafe.naver.com/korlucene/135

# 위에서 제일 마지막에 'X' 라는 문자가 있습니다. 이 부분에 대한 설명 입니다.

B : ㅂ 불규칙

H : ㅎ 불규칙

L : 르 불규칙

U : ㄹ 불규칙

S : ㅅ 불규칙

D : ㄷ 불규칙

R : 러 불규칙

X : 규칙


:

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

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개가 추출됩니다.

 

 

 

:

[펌]야후, 미니 일어사전 오픈

ITWeb/스크랩 2008. 8. 12. 00:26

ㅎㅎ 일본에 관심 있는 분들은 좋겠내요.. ^^*
사실 저도 일본 애니에 관심이 많은데... 재팬야후 드가서 어케 검색을 해야 할쥐.. 고민을 많이 했었답니다.

앞에 펌글에도 있지만 야후는 기술력이 문제는 정말 아니라고 생각 되내요.
사실 야후가 구글 보다 뒤진다고 생각 하지도 않지만 떨어진 브랜드 파워는 정말 회복하는데 시간이 올래 걸리는것 같습니다.

그래도 더욱 분발 하시길... ^^*
야후 코리아에서 사용하는 형태소 분석기는 본사에서 만든 YWS 국민대에서 만든 KMA  라는 이 두가지를 사용 하고 있지요..
KMA 는 네이버에서도 사용중인데.. 지금도 쓰고 있는지는 잘 모르겠내요.. ㅎㅎ
국민대 강승식 교수 : 한글공학, 정보검색 연구소 : http://nlp.kookmin.ac.kr/
이 lab 에서 만들고 있는 document classification 이라는게 있는데 이 분야는 야후 본사에 이미 존재를 하고 있답니다. 제가 이걸 가지고 스팸 문서 분류 하는걸 구글에 계신 강재호 과장님과 함께 진행을 했었는데.. ㅎㅎ 기억이 새록 새로.. 하내요.. :)

ref. http://www.zdnet.co.kr/news/spotnews/internet/search/0,39040070,39171966,00.htm


야후, 미니 일어사전 오픈

김태정 기자(tjkim@zdnet.co.kr)   2008/08/11
야후!
[지디넷코리아]야후코리아는 단어를 자동으로 인식해 검색결과를 바로 보여주는 야후! 미니, 일어 사전 서비스(http://kr.dic.yahoo.com/search/jpn/)를 선보인다고 11일 밝혔다.

야후! 미니사전이란 인터넷 서핑이나 문서 작업 중 모르는 단어에 마우스를 갖다 대기만 해도 영어, 한자, 국어 등 사용자가 원하는 검색 결과를 미니 창에 바로 찾아주는 신개념 서비스다.

이번에 새롭게 추가된 야후! 일어 사전 역시, 별도로 타이핑 할 필요 없이 모르는 단어에 마우스로 더블 클릭하거나, 미니펜을 올려다 놓기만 해도 단어 검색이 가능하다.

반면, 현재 다른 포털사에서 제공 중인 일어 사전은 문자를 직접 그리거나, 일본어 입력기 등을 이용해 단어를 일일이 검색해야 한다.

특히, 야후 만의 형태소 분석기(Yahoo Word Segmentation)를 적용해 우리 나라와는 달리 띄어쓰기를 사용하지 않는 일본어 문장을 형태소 별로 인식해 보다 정확한 검색 결과를 제공함은 물론, 단어의 기본형을 찾아 검색해 주는 것이 특징.

예를 들어 미니사전이 문서에서 ‘하셨습니다’ 혹은 ‘하셨다’ 단어를 인식했을 경우, 형태소 분석을 근간으로 단어의 원형인 ‘하시다’와 관련된 뜻과 예문을 제공하는 방식이다.

야후코리아 검색팀 김봉균 부문장은 “일본어는 문자의 복합성과 한자를 혼용해서 쓰기 때문에 매번 검색창에 단어를 입력하기가 어려운 것이 사실” 이라며, “더욱 편리해진 야후! 일어 사전을 통해 초보 일본어 사용자들도 보다 쉽게 일본어를 접하고 학습할 수 있을 것으로 기대된다”라고 말했다.
: