午前2時半に起きて授業の資料を作成。育児支援休暇で1回授業を休講にしたので、その補講があるのだった。
今回いちばんホラーな点は、2限(10:30スタート)に授業があるのに当日の午前2時半で資料が1ページもできていないことで、しかも今回全く新規の内容を話す回にしていたことであった。最近あまり夢を見なくなったのだが、数カ月に1回見る悪夢は、翌日にいくつか授業をしないといけないのに、準備が全く終わっておらず、残り時間を考えると絶対全部間に合わない、というものである。それくらい、授業の準備というものにはプレッシャーがある。(90分、全く準備なしに、教えなければならない内容が決まっている授業を教えるのは難しい)
とはいうものの、なんとか4時間くらいで40ページ弱のスライドを作成し、一安心。事前に頭の中では考えていたので、全く準備がないわけではなかったのも幸いしたが、こういう綱渡りは何度もやりたくない……。授業自体は無事終了。これであとは期末試験と採点を済ませれば今学期はおしまいである。
一つ反省点は、補講のとき小テストを採点して返却する約束をしていたのだが、準備で一杯一杯で採点が間に合わず、授業のあとに目の前で採点して返却したことである。採点と成績を入力する時間は意外とかかるので、ちゃんと時間を確保しておかないとな、と思った次第である(今学期は、本当にTAの2人には感謝してもし足りないくらいくらい)。
午後は論文紹介を2本ほど。
- Marti A. Hearst. Automatic Acquisition of Hyponyms from Large Text Corpora. COLING 1992.
- Li Dong, Furu Wei, Chuanqi Tan, Duyu Tang, Ming Zhoug and Ke Xu. Adaptive Recursive Neural Network for Target-dependent Twitter Sentiment Classification. ACL 2014.
をそれぞれ紹介してもらう。前者は「自然言語処理におけるブートストラップ法」といえばこの論文を必ず参照するべきと言えるような古典で、20年前の論文で古さは否めないものの、機械学習も何も登場しないので、機械学習が最近の自然言語処理のとっつきにくさにつながっていると感じるような人や、最近自然言語処理に入門したばかりのような人には分かりやすいように思った。
後者は一転いま流行の深層学習(deep learning)をTwitter の感情極性分類に応用した話で、単語の極性から係り受けの部分木を用いて再帰的にツイートの極性まで伝播させていく手法で、けっこうおもしろかった(再帰的ニューラルネットワークの話をあまり追っていなかったせいかもしれないが)。
word2vec という単語をベクトル表現にする手法がこのところ注目されているが、[twitter:@unnonouno] さんが書かれているように word2vec のすごかった点は深層学習ではなく分散表現をちゃんと学習した点(深層学習に使えるという意味では確かに深層学習か?)で、深層学習っぽくて「なるほど」と思うのは、こういう低次のレイヤー(単語)から高次のレイヤー(フレーズや文)の意味を計算する研究で、おもしろいのは意味の足し算引き算ができるモデルではなく、意味のかけ算ができるようなモデルである。
個人的には極性分類のこういうモデルは Google の tetsu-na さん(当時 NICT)の2010年の以下の論文が決定版で、これを超えるようなものはなかなか作れないのではないかと思う。
- Tetsuji Nakagawa, Kentaro Inui, Sadao Kurohashi. Dependency Tree-based Sentiment Classification using CRFs with Hidden Variables. NAACL 2010.
論文紹介のあと、syncha がうまく動かない問題を深追いしてみたら、CaboCha をビルドするとき指定した辞書形式と MeCab の辞書形式が違ったせいで、直したら普通に動くようになった。比較手法が IPADic を使っていると IPADic を使わざるをえないのだが、両方変えないといけないのであった。
あと Google 中国語 N-gram を使えるように試してみてもらっているのだが、4-gram 以上を使おうとするとメモリ128GBでは足りないらしい(英語版も同じだそうだ)。どれくらいあればいいのか分からないが、最近は128GBもけっこう使われているので、メモリ512GBくらいのマシンがあったほうがいいのかな。