作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
有什么方法可以更高效地使用 Standford Tagger?
每次调用 NLTK 的包装器都会为每个分析的字符串启动一个新的 java 实例,这非常非常慢,尤其是在使用更大的外语模型时...
http://www.nltk.org/api/nltk.tag.html#module-nltk.tag.stanford
最佳答案
找到解决方案。可以在 servlet 模式下运行 POS Tagger,然后通过 HTTP 连接到它。完美。
http://nlp.stanford.edu/software/pos-tagger-faq.shtml#d
例子
在后台启动服务器
nohup java -mx1000m -cp /var/stanford-postagger-full-2014-01-04/stanford-postagger.jar edu.stanford.nlp.tagger.maxent.MaxentTaggerServer -model /var/stanford-postagger-full-2014-01-04/models/german-dewac.tagger -port 2020 >& /dev/null &
调整防火墙以限制仅从本地主机访问端口 2020
iptables -A INPUT -p tcp -s localhost --dport 2020 -j ACCEPT
iptables -A INPUT -p tcp --dport 2020 -j DROP
用wget测试
wget http://localhost:2020/?die welt ist schön
关闭服务器
pkill -f stanford
恢复 iptable 设置
iptables -D INPUT -p tcp -s localhost --dport 2020 -j ACCEPT
iptables -D INPUT -p tcp --dport 2020 -j DROP
关于python - 如何使用 Stanford NLP Tagger 和 NLTK 提高速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23322674/
我是一名优秀的程序员,十分优秀!