Visualizing Wikileaks #1
2011 BLOG VISUALIZATION
昨年は会社の仕事を通して新しいことにいろいろチャレンジできた年でした。
その一例を挙げると、
- Androidアプリのプログラミング
- AndroidでのOpenGLプログラミング
- iPhone上での3Dオブジェクトを多用したゲーム(coming soon…)
- Pythonを使ったサーバサイドプログラミングおよび自然言語処理 (Poibot)
こんな感じでしょうか。その中でも、Poibot (http://poibot.jp/ および http://twitter.com/poibot_jp)の実装のために覚えたPythonと自然言語処理のイロハは今後いろいろと役に立ちそうです(人工知能の研究室出身とはいえ、最適化計算一本やりだったので、自然言語処理はノータッチでした。おはずかしい…) 忘れる前にPython/自然言語処理をより掘り下げようと、お正月休みを利用して実験していた結果が今回のポストです。
今回、題材としては、昨年世の中を騒がせたWikileaks (http://www.wikileaks.ch/)を取り上げました。
Wikileaksに関しては、いろいろとニュースで流れてはいるものの、どういった内容の文書が含まれているのか、また日本と世界の外交にどのような影響があるのか、いまいち実感として分からないというのが多くの方の印象ではないでしょうか。だからといって、いちいち文書を読む気にもならない…. また中身を調べるとしても、公開されている文書の正当性/真偽に疑問符がつく以上、文書の内容に踏み込んだ解説は避けたいというのもあります。
そこでまず手始めに、Wikileaksの文書上で最も参照されているのはどの国か、もっと簡単に言うと日本のことが書かれた文書はどのくらいあるのか? という点にしぼって、解析および可視化を行いました。
対象: 12月25日 Wikileaksでtorrentとして公開されている 6521の PDF, Plain Text, Rich Text, Microsoft Wordのデータのうち、テキスト化することができた4829の文書
今回の実験は
- 英語以外の文書に関しては正しく処理できていない (10〜20%くらいは英語以外(スペイン語、アラビア語など)の文書が含まれている模様)
- 国の名前のみをカウントしている (たとえば、日本政府を指す意味で”Tokyo”という単語を使っていたとしても無視している)
- 文書単位でしか共起度を計っていない
といった点であくまでも簡単な統計ですが、なんらかの参考になれば幸いです。文書内に含まれている特徴語などについても引き続き、調べていきたいと思っています。
主な参考書は以下の二冊。まずは文書の解析はこちらの本を参考にしています。
“入門 自然言語処理” (Steven Bird, Ewan Klein, Edward Loper)
Pythonのライブラリ NLTK を使った実践的な内容。Pythonの入門も兼ねているので、これから始めたいという人に最適。Poibotの実装のときには最初にこれを買っておけばよかったと公開しています。特に日本語版は補遺の中で、日本語特有のトピック(単語の分かち書き、文字コードなど)を丁寧に扱っているので、英語が読める人でもこちらの日本語訳の方をおすすめします。(なお、原文はこちら、日本語版の補遺の内容はこちらで読むことができます)
Processingをつかったビジュアライズはもちろんこの本! CSVの読み込みやアニメーションの表現など、細かいところでも大変参考になります。
Featured Articles