python - 从 SyntaxNet 获取输出作为 python 对象,而不是文本

标签 python nlp syntaxnet

在执行一些示例 syntaxnet 脚本(如 parse.sh)后,我收到了 text-conll 格式的输出。我的目标是采用一些功能并将它们进行到下一个网络。一种可能的选择是使用诸如 nltk.corpus.reader.ConllCorpusReader 之类的东西将文本输出解析为 python 对象。但对我来说很有趣 是:

是否可以通过一些代码修改从 SyntaxNet 获取与解析结果相关的 Python 对象而不是文本?

我发现在 parser_eval.py 的第 133-138 行,syntaxnet 已经获取了文本版本的结果。

while True:
    tf_eval_epochs, tf_eval_metrics, tf_documents = sess.run([
        parser.evaluation['epochs'],
        parser.evaluation['eval_metrics'],
        parser.evaluation['documents'],
    ])

但我无法找到生成此文本的对象以及生成方式的位置。

最佳答案

有很多方法可以做到这一点,据我所知,所有方法都涉及解析 SyntaxNet 的输出,并将其加载到 NLTK 对象中。我在我的博客上写了一篇简单的帖子,举例说明:

http://www.davidsbatista.net/blog/2017/03/25/syntaxnet/

关于python - 从 SyntaxNet 获取输出作为 python 对象,而不是文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39880244/

相关文章:

nlp - 判断邮件是否为垃圾邮件的有效方法?

python - 语法网入门

python - 在 python 中使用 Syntaxnet POS 标签?

machine-learning - 使用 SyntaxNet 进行分块?

python - 简单的多任务处理

python - 如何在不丢失离散值的情况下缩小图像?

python - 如何定义修改后的leaky ReLU - TensorFlow

python - 从python中的字符串中提取日期

seo - 在大量内容中自动创建上下文链接的工具或方法?

python-2.7 - NLTK程序包估计(字母组合)的困惑