being qua being

情報的な何かと政治的な何か

プログラミング初心者がPythonで自然言語処理に挑む[その2]

さてPythonのインストールも終わり、“Hello World!”とプログラミング界の先人たちへの挨拶をを終えた私は次なるステップに進むことにした。とはいっても何がしたいのか自分でもよくわからないので、「文系なら言葉だろ」と言うことで自然言語処理に挑むことにした。

早速俗にオライリー本と言われる分厚い教科書を借りてきた。その名も『入門 自然言語処理

入門 自然言語処理

入門 自然言語処理

さらっと1.1.1では「Pythonを使ってみよう」などと書いてあるが、早速NLTKを使ってみることにする。私と同じPython2.7をインストールした人は(そうじゃなくてもだが)とにかく、「PyYAML」というものと、「NLTK」というもの。どちらもインストールしなければならない。

入門自然言語処理読書のためにwindows7環境でNLTKが使えるようにする - toyoshiの日記 http://d.hatena.ne.jp/toyoshi/20110220/1298189082

entertainment-lab: NLTK導入メモ
http://entertainment-lab.blogspot.com/2011/07/nltk.html

最初にPythonをインストールした時になすがママにインストールした場合は、こちらもなすがママにインストールして大丈夫である。そしたら次に移る。Pythonを起動して

>>>import nltk
>>>nltk.download()

と入力する。すると

NLTK Downloader
---------------------------------------------------------------------------
    d) Download      l) List      c) Config      h) Help      q) Quit
---------------------------------------------------------------------------
Downloader> d
Download which package (l=list; x=cancel)?
Download which package (l=list; x=cancel)?
  Identifier> book
    Downloading collection 'book'

こんな感じの画面が表示される。この時に「d」を入力してダウンロードするということまではわかるが、次に出てくる文字が「Download which package (l=list; x=cancel)?」という質問なので普通に「l」を選択する。するとズラーと色んなタイトルのパッケージが表示されるのはいいが、何回「l」を押しても永遠ループするだけでなかなかインストールされない。

というのも「Identifer>」という表示が出ているところで、bookなら「book」と入力しなければならないのであった。本には『図1.1で示すようにbookというコレクションを選択して、本書に必要なデータをインストールしよう』と書かれているが、本の図のようなかっこいいインターフェイスは出てこないし、bookとコマンドを入れなくても全てリストに表示されるパッケージが自動でインストールされるもんだと思ってしまった。そこまでPythonはやさしくないみたいだ。


一応bookライブラリをインストールしたら以下のようなコマンドを入力して動作確認を行うのが鉄則のようだ。

「入門自然言語処理」を読む準備をする | Kwappa研究開発室 http://randd.kwappa.net/2010/12/04/189

>>>from nltk.book import *
>>> from nltk.book import *
*** Introductory Examples for the NLTK Book ***
Loading text1, ..., text9 and sent1, ..., sent9
Type the name of the text or sentence to view it.
Type: 'texts()' or 'sents()' to list the materials.
text1: Moby Dick by Herman Melville 1851
text2: Sense and Sensibility by Jane Austen 1811
text3: The Book of Genesis
text4: Inaugural Address Corpus
text5: Chat Corpus
text6: Monty Python and the Holy Grail
text7: Wall Street Journal
text8: Personals Corpus
text9: The Man Who Was Thursday by G . K . Chesterton 1908

こんな感じの画面が表示されれば成功である。私のようにリストを表示するだけでダウンロードされたと思い込んでしまった人は、何回やってもこのように本のタイトルが表示されることは無い。しっかりこの画面が出るまで原因をすこしずつ探っていくしか無いみたいだ。

NumPyだが、どうやら64bit版は公式には用意されていないみたいだ。

Python Extension Packages for Windows - Christoph Gohlke http://www.lfd.uci.edu/~gohlke/pythonlibs/

そういう時はここからダウンロードするといいかもしれない。


と書いたが、64bitであっても内部で32bitに変換することができるのでそんなことはないはずだ。色々調べた所。Numpyも普通の32bit版で大丈夫みたいだ。ただしPython2.7だったらちゃんと、Python2.7用のものをインストールしないとインストールすらできない。(「これは2.6用のものです」と警告が出る)

matplotlib を使ってグラフを簡単表示 - sonoshouのまじめなブログ
http://d.hatena.ne.jp/sonoshou/20111023/1319348056

私の場合でも上のsonoshouさんのように

Need nose >= 0.10.0 for tests

と表示されてしまったので、同じようにnoseのインストールを行った。noseのファイルは「.tar.gz」で圧縮されているので、解凍レンジでもラプラスでも構わないが、解凍ソフトに投げ込む必要がある。解答が終わったファイルは適当な場所におき、コマンドプロンプトから\cd…以下ファイルの場所を指定した上で、

>python setup.py install

を実行すれば完了する。私もこれでようやくNumPyが使える状態にすることができた。