我们想在俄罗斯语料库上训练斯坦福神经网络依赖解析器,有什么关于如何做的提示吗?论文中描述了超参数,但是了解如何准备训练数据(注释,特别是如何创建 word2vec 注释)会很好。非常感谢任何帮助或对某些文档的引用!
谢谢!
以下是一些答案:
如果您想构建俄语的矢量表示,请访问 word2vec 网站:
依赖项需要采用 CoNLL-X 格式:
http://ilk.uvt.nl/conll/#dataformat
词嵌入应采用以下格式(每个词向量独占一行):
字\tn0 n1 n2 n3 n4 ...
例如:
苹果 .45242 .392323 .111423 .999334
将嵌入放入名为 Russian_embeddings.txt 的文件中
训练命令(假设你的词向量的维度=50)
java edu.stanford.nlp.parser.nndep.DependencyParser -tlp edu.stanford.nlp.trees.international.RussianTreebankLanguagePack -trainFile russian/train.conll -devFile russian/dev.conll -embedFile russian_embeddings.txt -embeddingSize 50 -model nndep.russian.model.txt.gz
Run Code Online (Sandbox Code Playgroud)一个很大的复杂性是,截至目前,edu.stanford.nlp.trees.international.RussianTreebankLanguagePack 还不存在,因此您必须创建此类并在其他语言的 TreebankLanguagePacks 之后对其进行建模;如果您查看 edu.stanford.nlp.trees.international 包,您可以看到这些 TreebankLanguagePack 文件在其他语言中的样子(注意:法语只有 143 行长,因此为俄语创建一个类似的类并不容易)根本不可能);我将咨询其他小组成员,看看我是否能弄清楚你需要做什么才能完成这项任务
构建俄罗斯神经网络依存解析模型面临很多挑战。如果您需要更多帮助,请告诉我。我将与 NN 解析器的开发人员交谈,看看是否可以给您更多建议,这些答案只是作为一个起点!