SSブログ

Python で日本語文章要約 [Python]

最近、諸般の事情により、
「自然言語処理でなんか面白いことできないかなー」
って調べてて
「そういえば以前に、どっかの大学院生が日本語要約を python でやっててソースを公開してたな」
ってことを思い出して探したんだけど・・・
https://recruit-tech.co.jp/blog/2015/10/30/summpy-released/
↑これだった。
公開した直後以降はソースコードの更新は行われず、python2.7 でしか動かないようだった。残念、というかもったいない。Python2.7 でしか動かないものは、今後使われなくなってしまう。

MIT ライセンスなので、結果のよさそうな LexRank アルゴリズムのエッセンスの部分を1ファイル(1モジュール)に抽出して Python3 で動かせるようにして gist に貼っておきます。
https://gist.github.com/nakagami/92c0904ac9c1a98ee4ff8d8fb644fd69
正直、アルゴリズムの数学的な意味などさっぱり分かっていないけど・・・

自然言語処理研究者でない人(例えば自分)向けの LexRank による要約についての
ざっくりとした日本語解説は、これが比較的わかりやすいかと思います
https://qiita.com/takumi_TKHS/items/4a56ac151c60da8bde4b

jabstract.py をダウンロードして
import jabstract
text = '複数の文がある、ながーい文章'
sentences = jabstract.summarize(text, sent_limit=10)
print(sentences)

という感じで要約できるんだけど、ちゃんと動いてるかな?
必要なパッケージとか、関数のパラメーターとか、詳しくはソースコード読んでください。

コメント(0) 
共通テーマ:日記・雑感

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

Facebook コメント