向fugashi词典添加新词

问题描述

我正在使用 fugashi 从句子中提取单词。 如何将 fugacy 字典中没有的新术语添加到字典中?

例如,YouTube 分为“You”和“Tube”。

import fugashi
tagger = fugashi.Tagger()
nodes = tagger.parsetoNodeList("ユーチューブ")
goodpos = ['名詞']
nodes = [nn.surface for nn in nodes if nn.feature.pos1 in goodpos]

=> ['ユー','チューブ']

解决方法

我还没有开始为此制定适当的指南,但基本上您应该遵循 MeCab docs,但您可以使用 fugashi-build-dict 而不是 mecab-dict-index

为了给出简要说明,首先您需要制作一个与您的系统字典使用相同格式的 CSV 文件。这是基于 unidic-lite

令和,4786,8205,名詞,固有名詞,一般,*,レイワ,令和,レーワ,固,"1,0",*
㋿,5969,2588,補助記号,㋿,記号,999999
㋿,3992,*
夢夢,*

您可以通过从 UniDic 源和编辑字段中复制条目来实现此目的。然后你运行这个命令:

fugashi-build-dict -d dicdir/ -u mydic.dic mydic.csv

dicdir 是您的系统字典的位置,mydic.csv 是您制作的 csv 文件。这将创建 mydic.dic 文件,然后您可以通过指定 -u mydic.dic 将其与 fugashi 一起使用。