注释语料库(语法网)

时间:2016-05-26 15:02:50

标签: nlp tensorflow syntaxnet

我在Syntax official documentation on Github之后下载并安装了SyntaxNet。在文档(注释语料库)之后,我尝试通过SyntaxNet读取名为.conll的{​​{1}}文件,并将结果写在wj.conll中,但我不能。我的问题是:

  1. SyntaxNet总是会读取wj-tagged.conll个文件吗? (不是.conll个文件?)。我有点困惑,因为我知道SyntaxNet读取.txt文件用于训练和测试过程但我有点怀疑有必要将.conll文件转换为.txt文件以便有他们的部分演讲和依赖性解析。

  2. 如何从文件中读取SyntaxNet(我厌倦了所有可能的方法在GitHub文档中解释有关SyntaxNet的内容并且它对我没有用)

2 个答案:

答案 0 :(得分:6)

将这些声明行添加到" context.pbtxt"在文件的末尾。在这里" inp"和" out"是syntexnet根目录中的文本文件。

   input {
   name: 'inp_file'
   record_format: 'english-text'
     Part {
     file_pattern: 'inp'
     }
   }
   input {
   name: 'out_file'
   record_format: 'english-text'
     Part {
     file_pattern: 'out'
     }
   }

在" inp"添加句子要为其完成标记的文件,并在下次使用--input和--output标记运行syntaxnet时在shell中指定它们。

为了帮助你一点点我粘贴一个示例shell命令。

bazel-bin/syntaxnet/parser_eval \
--input inp_file \
--output stdout-conll \
--model syntaxnet/models/parsey_mcparseface/tagger-params \
--task_context syntaxnet/models/parsey_mcparseface/context.pbtxt \
--hidden_layer_sizes 64 \
--arg_prefix brain_tagger \
--graph_builder structured \
--slim_model \
--batch_size 1024 | bazel-bin/syntaxnet/parser_eval \
--input stdout-conll  \
--output out_file \
--hidden_layer_sizes 512,512 \
--arg_prefix brain_parser \
--graph_builder structured \
--task_context syntaxnet/models/parsey_mcparseface/context.pbtxt \
--model_path syntaxnet/models/parsey_mcparseface/parser-params \
--slim_model --batch_size 1024

在上面的脚本中,第一个shell命令的输出(POS标记)用作第二个shell命令的输入,其中两个shell命令由" |"

分隔。

答案 1 :(得分:-1)

如果你想在.txt文件中保存demo的输出,只需快速帮助:

尝试echo "open file X with application Y" | ./demo.sh > output.txt 它会将句子树提供给当前目录。