stanford core nlpを使って、自然言語処理の問題を解こうとしているのですがうまく行きません。
昔のqiita 記事を参考に試しているので、動かない場合があるとは思うのですがどうしたらうまく行きますか?
どなたかご教授ください。
また、stanford core nlpでオススメのライブラリがあれば教えていただきたいです。
python
1""" 253. Tokenization 3Stanford Core NLPを用い,入力テキストの解析結果をXML形式で得よ.また,このXMLファイルを読み込み,入力テキストを1行1単語の形式で出力せよ. 4""" 5import pprint 6import json 7import corenlp 8 9# パーサの生成 10corenlp_dir = "/Users/*/Downloads/stanford-corenlp-full-2013-06-20/" 11parser = corenlp.StanfordCoreNLP(corenlp_path=corenlp_dir) 12 13# パースして結果をpretty print 14result_json = json.loads(parser.parse("I am Alice.")) 15pprint.pprint(result_json)
error
1Traceback (most recent call last): 2 File "/usr/local/lib/python3.7/site-packages/pexpect/expect.py", line 111, in expect_loop 3 incoming = spawn.read_nonblocking(spawn.maxread, timeout) 4 File "/usr/local/lib/python3.7/site-packages/pexpect/pty_spawn.py", line 485, in read_nonblocking 5 return super(spawn, self).read_nonblocking(size) 6 File "/usr/local/lib/python3.7/site-packages/pexpect/spawnbase.py", line 176, in read_nonblocking 7 raise EOF('End Of File (EOF). Empty string style platform.') 8pexpect.exceptions.EOF: End Of File (EOF). Empty string style platform. 9 10During handling of the above exception, another exception occurred: 11 12Traceback (most recent call last): 13 File "n53_exercise.py", line 11, in <module> 14 parser = corenlp.StanfordCoreNLP(corenlp_path=corenlp_dir) 15 File "/usr/local/lib/python3.7/site-packages/corenlp/corenlp.py", line 435, in __init__ 16 self._spawn_corenlp() 17 File "/usr/local/lib/python3.7/site-packages/corenlp/corenlp.py", line 424, in _spawn_corenlp 18 self.corenlp.expect("\nNLP> ") 19 File "/usr/local/lib/python3.7/site-packages/pexpect/spawnbase.py", line 341, in expect 20 timeout, searchwindowsize, async_) 21 File "/usr/local/lib/python3.7/site-packages/pexpect/spawnbase.py", line 369, in expect_list 22 return exp.expect_loop(timeout) 23 File "/usr/local/lib/python3.7/site-packages/pexpect/expect.py", line 117, in expect_loop 24 return self.eof(e) 25 File "/usr/local/lib/python3.7/site-packages/pexpect/expect.py", line 63, in eof 26 raise EOF(msg) 27pexpect.exceptions.EOF: End Of File (EOF). Empty string style platform. 28<pexpect.pty_spawn.spawn object at 0x10a9c2a20> 29command: /usr/bin/java 30args: ['/usr/bin/java', '-Xmx3g', '-cp', '/usr/local/lib/stanford-corenlp-full-2013-06-20/stanford-corenlp-3.2.0.jar:/usr/local/lib/stanford-corenlp-full-2013-06-20/stanford-corenlp-3.2.0-models.jar:/usr/local/lib/stanford-corenlp-full-2013-06-20//xom.jar:/usr/local/lib/stanford-corenlp-full-2013-06-20//joda-time.jar:/usr/local/lib/stanford-corenlp-full-2013-06-20//jollyday.jar:/usr/local/lib/stanford-corenlp-full-2013-06-20/ejml-0.19-nogui.jar', 'edu.stanford.nlp.pipeline.StanfordCoreNLP', '-props', '/usr/local/lib/python3.7/site-packages/corenlp/default.properties'] 31buffer (last 100 chars): b'' 32before (last 100 chars): b'java:190)\r\n\tat java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)\r\n\t... 23 more\r\n' 33after: <class 'pexpect.exceptions.EOF'> 34match: None 35match_index: None 36exitstatus: None 37flag_eof: True 38pid: 32876 39child_fd: 5 40closed: False 41timeout: 60 42delimiter: <class 'pexpect.exceptions.EOF'> 43logfile: None 44logfile_read: None 45logfile_send: None 46maxread: 8192 47ignorecase: False 48searchwindowsize: 80 49delaybeforesend: 0.05 50delayafterclose: 0.1 51delayafterterminate: 0.1 52searcher: searcher_re: 53 0: re.compile(b'\nNLP> ')
Stanford CoreNLP (Pythonラッパーではなく)が動くことは確認しているのでしょうか?
というかこの課題は(Pythonラッパーではない)CoreNLPを使って解析してXML形式で保存して、PythonのプログラムからそのXML形式のファイルを読め、という意味かと思います。
(もちろん、PythonからCoreNLPを呼ぶことに挑戦したいというモチベーションがあるなら、そう解いても全然構いません)
問題の解釈自体間違ってました!
一度、Stanford CoreNLP で解いてみて確認してみます! ありがとうございます
> 一度、Stanford CoreNLP で解いてみて
Stanford CoreNLP はツールの名前で、それ自体はJavaで実装されています。
Stanford CoreNLP を使うことで、平文ファイルから解析結果情報を含むXMLファイルを作れるはずです。
承知しました! やってみます。ありがとうございます
普通にできました! 助かりました。ありがとうございます
回答1件
あなたの回答
tips
プレビュー