카카오, CNN 기반 한국어 형태소 분석기 'khaiii' 오픈소스 공개
핵심 내용
세종 코퍼스 기반 CNN 모델로 F1 점수 97.11 달성, C++ 구현으로 GPU 없이도 빠른 속도 제공
자세히 보기
카카오가 자연어 처리 파트에서 개발한 딥러닝 기반 한국어 형태소 분석기 khaiii(Kakao Hangul Analyzer III)를 오픈소스로 공개했습니다. 기존 규칙 기반 분석기(dha1, dha2)와 달리 khaiii는 기계학습 알고리즘을 활용해 데이터 기반으로 형태소를 분석합니다.
CNN 기반 음절 분류 모델
khaiii는 한국어 형태소 분석의 속도 문제를 해결하기 위해 RNN 대신 CNN(Convolutional Neural Network)을 채택했습니다. 입력된 각 음절을 분류 대상으로 삼아 태그를 결정하는 방식으로, 원형 복원과 불규칙 활용으로 인한 입력-출력 길이 불일치 문제를 음절 단위 정렬과 복합 태그를 통해 해결합니다.
학습에는 국립국어원의 세종 코퍼스를 기반으로 카카오가 오류를 수정하고 자체 데이터 6만 어절을 추가한 약 1,003만 어절의 코퍼스가 사용되었습니다. 네트워크 구조는 윈도우 크기에 따른 좌우 문맥을 임베딩하고, 다양한 크기(2, 3, 4, 5)의 커널을 가진 필터를 적용해 특징을 추출합니다.
성능 및 속도
모델 성능은 정확도와 속도 간 트레이드오프를 고려해 두 가지 버전으로 제공됩니다.
- Large 모델: 윈도우 크기 3, 임베딩 크기 30으로 구성되었으며, F1 점수 97.11을 기록했습니다. 1만 문장 분석에 약 78.8초가 소요됩니다.
- Base 모델: F1 점수 95.30으로, 1만 문장 분석에 약 10.5초가 걸려 실시간 처리에 적합합니다.
디코더는 C++로 구현되어 GPU 없이도 비교적 빠르게 동작하며, Python 바인딩을 제공해 개발자들이 쉽게 활용할 수 있습니다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.