Garu: analisador morfológico de coreano de 1,7 MB que roda no navegador (F1 95,3%, WASM)
(github.com/ongjin)Criei um analisador morfológico de coreano que roda no navegador sem servidor.
Os analisadores morfológicos existentes (Kiwi ~40MB, MeCab-ko ~50MB) foram projetados assumindo um ambiente de servidor, então não havia opções quando era necessário fazer análise morfológica no lado do cliente.
O Garu usa uma arquitetura não neural baseada em codebook + Viterbi e roda diretamente no navegador com apenas um modelo de 1,7 MB e um engine WASM de 93 KB.
- Tamanho do modelo: 1,7 MB (gzip ~950 KB, cerca de 1 MB em transmissão de rede)
- Precisão: F1 95,3% (com base no corpus NIKL de fala de todos)
- Comparação: Kiwi 87,9% / MeCab-ko ~85%
- Sem rede neural: 0 parâmetros treináveis, apenas lookup puro + decodificação Viterbi
npm install garu-kopermite uso tanto em servidor quanto no navegador
Após duas tentativas fracassadas, incluindo destilação de conhecimento com BiLSTM e rotulagem de sequência em nível de jaso, cheguei a uma arquitetura não neural de codebook + Viterbi. O processo de otimização de 76,1% até 95,3% (treinamento direto com dados gold do NIKL, cache inteligente de eojeol, regras de pós-processamento baseadas em contexto etc.) foi organizado em um artigo técnico.
GitHub: https://github.com/ongjin/garu
Artigo técnico: https://github.com/ongjin/garu/blob/main/docs/paper.md
npm: https://www.npmjs.com/package/garu-ko
1 comentários
Foi movido para Show GN.
Só para constar, posts cuja categoria for ajustada por um moderador podem ter a exibição na página inicial limitada, então pedimos que confira a categoria mais uma vez antes de publicar.