Kakao Open-Sources CNN-Based Korean Morphological Analyzer 'khaiii'
Key point
Achieves an F1 score of 97.11 with a CNN model based on the Sejong Corpus, offering fast performance without GPU requirements via C++ implementation
Details
Kakao has open-sourced khaiii (Kakao Hangul Analyzer III), a deep learning-based Korean morphological analyzer developed by its Natural Language Processing team. Unlike previous rule-based analyzers (dha1, dha2), khaiii utilizes machine learning algorithms to perform data-driven morphological analysis.
CNN-Based Syllable Classification Model
To address speed issues in Korean morphological analysis, khaiii adopted a CNN (Convolutional Neural Network) instead of an RNN. It classifies each input syllable to determine tags, resolving input-output length mismatches caused by stem restoration and irregular conjugations through syllable-level alignment and composite tags.
For training, a corpus of approximately 10.03 million words was used, based on the National Institute of Korean Language's Sejong Corpus, with errors corrected by Kakao and 60,000 proprietary words added. The network structure embeds left and right context based on window size and applies filters with various kernel sizes (2, 3, 4, 5) to extract features.
Performance and Speed
Model performance is offered in two versions, considering the trade-off between accuracy and speed.
- Large Model: Configured with a window size of 3 and embedding size of 30, it recorded an F1 score of 97.11. Analyzing 10,000 sentences takes approximately 78.8 seconds.
- Base Model: With an F1 score of 95.30, it takes approximately 10.5 seconds to analyze 10,000 sentences, making it suitable for real-time processing.
The decoder is implemented in C++, allowing it to run relatively fast without a GPU, and provides Python bindings for easy developer integration.
This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.
Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.