关于如何在新语料库上训练 nn 依赖解析器的任何提示?

ran*_*123 5 stanford-nlp

我们想在俄罗斯语料库上训练斯坦福神经网络依赖解析器,有什么关于如何做的提示吗?论文中描述了超参数,但是了解如何准备训练数据(注释,特别是如何创建 word2vec 注释)会很好。非常感谢任何帮助或对某些文档的引用!

谢谢!

Sta*_*elp 4

以下是一些答案:

  • 如果您想构建俄语的矢量表示,请访问 word2vec 网站:

    https://code.google.com/p/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 解析器的开发人员交谈,看看是否可以给您更多建议,这些答案只是作为一个起点!

  • 我会得到一些更具体的答案,但我知道依赖解析器不太(或根本)不使用 TreebankLanguagePack。我将咨询一些小组成员,但我相信我们可以提出一个小型实施方案,让您能够继续下去。 (2认同)