自然言語処理の研究者が SKK を使うのはちょっと悲しい

午前中助教室にいると自分を訪ねて来てくれた学生さんがいる。どうもこれからインターンシップに行く人だそうで、いろいろと不安なので相談に乗ってほしい、ということだ。

自分の経験や今後のキャリアについてお話してみたり。やはり今どきの女性は一生働く(途中に出産や育児で休んだり時短にしたりするのを考慮に入れて)キャリアを考えて人生設計すべきだと思うし、男性も同様。意外に行ってみるといろいろ道が開ける(というかつながっている)ものである。

そうそう、今年の SVM 勉強会は 8月7日開催 なので、お日にち間違えなきよう (※松本研の OB/OG の同窓会です)。

午後は水曜日からの読書会の読み合わせ。夏の勉強会は

The Syntactic Process (Language, Speech, and Communication)

The Syntactic Process (Language, Speech, and Communication)

の The Syntactic Process という本を1冊読むのである。これは組み合わせ範疇文法(Combinatorial Categorial Grammar)という文法理論について書かれた本で、その筋では有名な本である。CCG は並列構造なんかをうまく扱うことができ、効率的に計算する方法もあるので注目されている。機械学習するためのコーパスなんかも CCGbank として数年前に公開されている。関数型言語とかラムダ計算とかに萌える人もこの文法理論はおもしろいと感じるであろう。

なんで読み合わせをするかというと、章ごとに数名ずつ担当して5日間ずっと輪読するのだが、何のチェックもなしに突然輪読に入ると、分からない箇所があるとそこで輪読がストップするからである。(特に言語学の基礎知識をつけていない人が言語学の本を読むとき、逆に機械学習の基礎知識をつけていない人が機械学習の本を読むときにこれが起きる) そういう基礎レベルの話はみんなの前に出る以前に解決しておくべきであり、同じ章の中でちゃんと聞ける人がいるように章の担当もスタッフと学生(博士と修士)がまんべんなく担当するように割り振るわけである。

しかしながら、この読み合わせの習慣、自分が修士のころは存在していたと思うのだが、博士に上がるくらいになってから消滅してしまったようで、読書会がどんどんグダグタになっている気がする(気がする、というのは、自分は結局博士課程3年間のうち、2回はインターンシップに行っていたため、1回しか参加していないから)。

これまで学んだこと・学んでいないことを確認するためにも、読み合わせはしたほうがいいんじゃないかと思うのだが、前の章を読んでいないと後ろの章が分からなかったりして、そのあたりの事情も読み合わせができたりできなかったり難しい話なのだ。

午後は @ARAMAKI さんと @emikoy さんが研究室に。前 @ARAMAKI さんが奈良にいらしたときは入れ違いだったかなにかでお会いできず、ようやくお会いできて満足(といっても挨拶しかしなかったが)。@emikoy さんは2年前1年間松本研にいたのだが、もうそのころ在籍していた学生はほとんど卒業してしまい(いまの M2 の人がちょうど入れ違い)、せっかく来てくださったのにあまりその当時を知る人がいなくて申し訳ない。一応自分はしばらくいるつもりなのだが……。

夕方は週明けのブートキャンプ用に使う機械翻訳のためのマシンの設定。自分が使う訳ではないので Ubuntu 10.04.1 をセットアップしているのだが、いろいろと使いにくい。Ubuntu やめましたとなるのも分かる。/etc の下なんて全く触らないような人にはいいのかもしれないが、手で /etc の下をいじると設定を破壊するかもしれないようになっている OS ってどうかと思う(というかどこをいじれば所望の動作をするのか分からない。勝手に設定ファイルの位置をデフォルトから変えないでほしい。いや、設定ファイルを生成する設定ファイルを書き、手動で自動(!)生成しなければならないというのがおかしいと思うのだけど)。自分が使うマシンに Linux 入れるなら Arch か Gentoo かなぁ、やっぱり。

ついでに SKK の話も引用しておくと、

自然言語処理の研究者にはskkユーザが多い。 これは、偶然じゃないと思う。このインチキさを笑え。

というの、自分も同感。"Eat your own dog food." という言葉があるように、自分で作ったり提供したりするものは自分で使うべきであり、自然言語処理の研究者が SKK (のようないわゆる「AI 変換」も予測入力もなにもない入力メソッド) を使うのは欺瞞だと思う。

もちろん、自分も SKK は5年以上使っていたし、SKK だと単語の切り間違いやらなにやらの問題がないのでストレスが少ないのは承知の上だが、もしそういうストレスがあるのだとすると、そういうストレスこそ自然言語処理の技術や研究で解決するべきことなのではないか? 全部自動で推定されるべきことなのではないか? と思うからだ(だから、いまは多少使いにくくても自分が作っている入力メソッドで入力することにしている)。

まあ、現在の技術でできることとできないことを峻別し、できることに取り組む、というのも極めて工学的な態度ではあるし、そういう工学的な態度からすると、SKK を使って日本語を入力するのは理に適っている。それに、もし自分が自然言語処理の研究者だからといって、みんながみんなかな漢字変換につながる研究をしているわけでもないし、日本語入力に関係しなくても重要な研究テーマもたくさんあるわけだから、そこは割り切って SKK を使う、というのは仕方なかろう。

ただ、やっぱり自然言語処理の研究者が SKK を使うのって、自然言語処理ってそもそも使えないよね(という言い方が言い過ぎだとすると、そもそも自然言語処理で研究されているような手法なんか使わなくて、もっと安直な方法でも実用的には問題ない精度を出せるよね)、ということを自分たちで言っているようなものなので、止めた方がいいかなと思うのだ。せめて Mozc/Google 日本語入力を使ってほしい。単語のコストは自分でクロールしたコーパスから推定して振り直したりすると自然言語処理的になるし……。

松本研の卒業生は、形態素解析の研究なんてしていなくてもみんな ChaSen にはとても詳しいと思われるようだが、そこで「いや研究してないので知りませんから」と言うのではなく、やっぱり ChaSen (MeCab でもいいが) くらいは松本研に来たなら卒業するまでに一度くらい動かしてみてほしいし、中でどういう仕組みで形態素解析しているのかくらいは分かって卒業してほしいなと思うし、そこで「形態素解析はやっぱり使えないんで結局文字 N グラムでやってます」となってしまうのはちょっと悲しい。(もちろんタスクによって文字 N グラムでやるのが妥当なケースもある)