kakao / khaiii

Kakao Hangul Analyzer III
Apache License 2.0
1.41k stars 284 forks source link

띄어쓰기 없는 경우 분석오류 #62

Closed skyer9 closed 5 years ago

skyer9 commented 5 years ago
$ echo "갤럭시케이스" | ./bin/khaiii --rsc-dir=./share/khaiii
갤럭시케이스  갤럭시/NNP + 케이스/NNG

$ echo "아이폰케이스" | ./bin/khaiii --rsc-dir=./share/khaiii
아이폰케이스  아/NNP + 이/NNG + 폰케/NNP + 이스/NNG

사용자 사전에 아이폰 을 등록해도 바람직한 결과는 안나오네요.

사용자사전등록+정확한 띄어쓰기 이어야 원하는 결과가 나오는데... 해결방법은 없을까요?

krikit commented 5 years ago

말씀하시는 문제는 띄어쓰기 문제라기 보다는 미등록어 및 복합명사 문제로 보는 것이 맞을 듯 합니다. khaiii는 사전 없이 음절 기반으로 분석하다 보니 띄어쓰기 오류나 복합명사에 취약한 부분이 있습니다. (사실 미등록어 및 복합명사 부분은 다른 분석기들에서도 쉽게 해결되는 것은 아니라 생각됩니다.)

그중 띄어쓰기 부분에 관한 한 아래 실험을 통해 어느정도 보완을 했으며, 조만간 C++ 디코더 개발을 하여 v0.4를 배포할 예정입니다. 띄어쓰기 오류에 강건한 모델을 위한 실험

복합명사 부분은 사용자 사전처럼 전처리 단계가 아니라 분석 과정에 직접 참여하는 형태의 사전을 모델에 넣는 것을 고민하고 있습니다만 여러 실험을 해봐야 그 성과를 알 수 있을 것 같아 빠른 시일 안에 개선되기는 좀 힘들어 보입니다.

기분석 사전에 아마도 "아이폰" 이라고 입력을 해보셨을 텐데요. 그래도 "케이스" 부분이 오분석이 났다면 "아이폰케이스"를 통째로 넣고 "아이폰/NNP + 케이스/NNG"로 분석 결과를 넣는 것도 하나의 임시 방편은 되실겁니다.

skyer9 commented 5 years ago

아는 지식이 엉망이라 버그 리포트 말고는 다른 말 하기가 머시기 하네요. 버전 0.4 기대할게요. ㅋㅋ