自然言語処理における双対分解に関するチュートリアル

結局飛行機の中で寝すぎてホテルに着いてから朝まで作業していて、翌日眠い。

朝の便でスーツケースが届くので、午前中にはホテルに届けます、という話だったので、ホテルで待機。10時になって、そろそろ店が開くので最悪買いに行くか、と思って荷物をまとめて出かけようとしたら、フロントからスーツケースが届いたとの電話。助かった。

朝ご飯も食べず待っていたので、Pioneer Place というポートランド的なショッピングセンターまで歩いて行って、地下のフードコートで食べる。ブティックみたいな店にはほとんど人がいなくて、日曜日だから11時開店らしく、休みだからかな? と思ったら、地下の Apple Store にはうじゃうじゃ人がいて(本当に異常なくらい、日本の通勤電車並み?)、iPhone 4 やら iPad やらをみなさん見ていて、びっくり。

オレゴンアメリカの州で唯一消費税がない州で、品物が安く買えるから近隣の人がよく買いに来るとは聞いていたが、確かに電子機器は単価が高いので、消費税の有無でけっこう値段が違うから、ここぞとばかりに来るのかも。

今日はどうも仮装大会があるらしく、いろいろとおもしろい格好をした人が町中を歩いている。ポートランドは町中も端から端まで1.5kmくらいで、歩いて十分回れる広さだし、ダウンタウン内は電車もバスも無料で乗り放題(空港から乗る場合はお金を取られるが)で、かつ相当頻繁に運行されているので、割合居心地がよい。自分的にはけっこうこういう場所は好きである。

午後から会場の Portland Marriot Downtown Waterfront に移動。途中で @neubig さんや @tettsyun くんらと会う。みなさん元気ですな〜 自分はトラブル続きで疲れていてすでに眠かったり…… (と思ったら @tettsyun くんはシアトルから来ているので時差は関係なかった)。いつも海外に行くとなにかトラブルが起きるのと、どうせ移動した直後の日は1日眠くて使い物にならないので、最近はチュートリアルから参加しつつ、チュートリアルの日にトラブル対応・一休みすることにしている。まあ、今回も1日休める日があってよかった。

チュートリアルは Dual Decomposition for Natural Language Processing に参加。ちなみにそれぞれのチュートリアル資料(スライドの2up)は全部公開されているので、会議に参加していない人でも自由に見ることができる(本番はスライドと違う話をする人もいたらしいが)。

Dual Decomposition (双対分解)の話は @hillbig くんによる Preferred Research ブログの 双対分解による構造学習 がとてもよい解説になっていて、むしろ今回のチュートリアルを聞いてもこの解説以上の内容はなかったので、期待して聞きにきた割には肩すかしだったかも……。

松本研でも品詞と係り受けの同時学習をやりたい人もいて、そういうのはこの話が直接的に使えるのだろうけど、やっぱり嬉しいのは全体の問題は複雑で計算不可能(NP困難とか)でも、個々の部分問題に分割すると効率的な解法(動的計画法とか、最大全域木とかで解ける)が知られているとき、個々の部分問題で解が一致するように学習すると性能の保証ありで学習できる、というところが嬉しいようで、部分問題に分割しても解きやすくなっていない場合はそんなに活用できない模様。

典型的には、解析に大域的な情報を用いたいが、大域的な情報を用いると計算量が爆発するが、局所的な情報(n-gram とか)だけで解析器を作るのは効率的に求められる、というような場合、大域的な情報から求まる解と局所的な情報から求まる解が一致するように学習するとよい、というのが使いどころなようで、確かに局所的な情報から上位 N 個の解析結果を出してリランキングする、という話よりは、こういうように性能保証つきで計算できるほうがスマートなので、使いどころはあるように思う。たとえば、n-gram で日本語入力システムのベースを作るが、長距離の依存関係とかの共起を変換のモデルに組み込みたいときとか、この双対分解を使うときれいに解けそう。

夕方からはウェルカムレセプション。SIGDIAL (対話の研究に関する国際会議)での発表が終わった@caeser_wanyaさんと、発表がこれからな@Pnnc205jさんに、NLP若手の会関係のお仕事をさっそくお願いしたり (汗) みなさんお疲れさまです〜

あとお久しぶりに@Yuki_araseさんとかにもお会いしたりなど。北京の Microsoft Research Asia (MSRA) のインターンシップのお話をお伺いしたりするなど。@Yuki_arase さん自身去年の4月から研究員として働いていて、これから初めてのインターンを受け入れるが、募集してもなかなか応募してくれる人がいないそうで、いつでもウェルカムなのでぜひコンタクトしてほしい、とのこと。確かにな〜。なかなかみなさん海外に行きたがらない(あるいは「海外=アメリカ」だと思い込んでいる)ので、もっと気軽に応募してみるといいと思うのだけど。

ちなみに6月20日〆切なのでいまさらの紹介になってしまうが、日本の Microsoft のサマーインターンシップもあり、「Kinect を使った日本語入力 (デベロッパー、プログラムマネージャー)」も募集されていて、期間は2ヶ月、1ヶ月のお給料は25万円で、交通費宿泊費支給、というのがあったのだが、こういうインターンシップにも挑戦してみるとよいかと思う。(もっと早く紹介しようと思って延び延びになってしまっていた……)

NAISTインターンシップに行くのが義務なんですか?」と聞かれたが、松本研はたまたま割合海外のインターンシップや共同研究に行く人が多い (毎年1-2人くらい?) だけで、必ずしも義務ではないし、行きたい人がいたら止めない、くらいかな〜と思う。

あと、研究(開発)の基礎が固まらないうちにあちこち行って根無し草になるよりは、しっかり研究室で基礎を身につけてから行きたいなら行く、というほうがよいし、研究所にインターンシップに行くなら、研究室で1回論文を書くくらいの経験はしてから外に出た方がいいのではないかと思う (一応最低限研究に必要な能力は大学で身に付けてから来ていることを期待されていると思うので……)。

最近は海外にインターンシップに行く学生も増えてきていて、学部生や大学院に入学したばかりの人も海外に行きたいと言う人がいて喜ばしく思っているのだが、やはり大学で学ぶべきことは学んでおいて、基礎体力をつけておくことは重要で、そこをおろそかにして応募してもなかなか通らない。結局学生の本分は勉強なり研究なりであって、そういうところをちゃんと逃げずにやっていると、「行きたい」と思ってから1-2年後にチャンスが巡ってきたりするものなので、行きたいと思い続ける一方で、コツコツと修行しておくことをお勧めする。

人間、1-2年固めて集中的に勉強するつもりになると、相当基礎からやることができるので、努力はそのうち報われると思っている。そういうとき、孤独なことが多いので、仲間がいてくれるのはとても心強い。野矢先生の話をいつも思い出すが、

「…ちょっと説教臭いことを言いますけどね…。君たちくらいの年代で一番重要なのは一緒に哲学をする仲間でね…。話題が自分の関心に近いかどうかは関係なく、仲間が話をするときには聞きに行くものだよ…」

1人でも2人でも仲間がいてくれるというのは(特に博士後期課程に進学する人にとっては)大事なので、少しくらい関心がずれていても仲間は大事にしたほうがよいと思うのである。(と毎回書いてしまうくらい、説教臭くなってしまったのかもしれないが……)