CoNLL-2011 最終日: ゲームと自然言語処理の意外な関係

会議の全日程を通じて今日が最終日。いや〜、もうへとへと……

午前中は CoNLL の共通タスクの報告会。今年は共参照(coreference)といって、たとえば

東日本大震災からの復興策を検討する政府の復興構想会議(議長・五百旗頭真防衛大学校長)は25日、「復興への提言」を決定し、菅直人首相に答申した。津波で被害を受けた地域の復興に向けて土地の利用手続きを一本化することや、一定区域に「特区」を設け、規制緩和や税制優遇を盛り込んだ。復興費を賄う財源として、臨時増税の検討を求めた。首相が退陣表明するなど政局は混迷しており、実現は曲折が予想される。

といった文章があったとき、「菅直人首相」と「(...)首相(が退陣表明...)」が同じ実体を指している、ということを解析するタスクであり、日本語では NAIST テキストコーパスでも共参照の情報を付与している。

さて、今回の共通タスクは@jhirwinくんが参加したので、これまでこのタスクについて詳しく知らなかったのだが、いろいろと知ることができて有意義であった。問題の性質が自然言語処理の他のタスクとけっこう違っていて、素性の数も (自然言語処理では高次元スパースだとよく言われるが) 数百程度が普通であるし、訓練データを増やしたら逆に性能が落ちたり、今回最高精度を出したStanford Deterministic Coreferece Resolution Systemはルールベースで作り込んでいたり (他にも機械学習でやろうとして性能が伸びず、結局ルールベースとのハイブリッドでやったりしたチームも多数)、いろいろと勝手が違うのである。

NTT の S 木さんとも「ちょっとこの状況だと共参照解析に機械学習の人たちが算入するのは難しそう」「今後気軽に参加できそうな共通タスクが設定されたら参加してもいいけど、共参照だったら簡単には手を出さないほうがいいかも」という話をしたり、このタスクに向けてデータを見てかなりいろいろ作り込まないといけないみたいなので、突然参加したいと思っても厳しいかもしれない。

さて、今回は共通タスクで上位の成績を収めた順に半分くらいのチームが1チーム10分くらいで口頭発表し、残りのチームはポスター発表(口頭で話した人もポスターやりたいならやってもよい)する、という感じで、ポスターは閑散とするのかと思いきや、@jhirwin くんのところはずっと人が絶えないような感じで、けっこう盛況であった。いやはや、お疲れさま!

お昼は@haplotyperさんらと合流して@jhirwinくんのお疲れさま会。会場近くのVeritable Quandaryに行く。10分ほど待たされたが、テラスでランチ。サラダしか頼まなかったが、悪くない。午後のセッションの開始まであまり時間がなかったので、あまり長居できなかったけど。

午後は Yee Whye Teh さんによる Bayesian Tools for Natural Language Learning という招待講演。ベイズ言語モデル深イイ話を聞けるのかと思ったら、割と初歩的な話をされていたので、これだったら他のに出てもよかったなぁ……

運営会議にちょろっと顔を出してみる。アナウンスがあったように、来年の CoNLL は EMNLP と共同開催で、韓国の済州島で開かれる ACL と連続開催。来年の共通タスクは今年の9月に決定されるそうだが、ノミネートされているものとして、

  • 医学文献の概念認識 (と呼ばれているが、要は表現の正規化。バイオ分野の人は少しの表記の揺れで検索できなくなったりするので、こういう技術が求められているとのこと)
  • 英語学習者の作文の誤り自動訂正 (これまで学習者のコーパスがなかったのでできなかったが、最近は相次いでコーパスができてきたのでできるようになった。実用的にはみんなほしいと思っている)
  • Supertagging (普通は品詞タグづけのあとに構文解析や意味解析をするが、品詞以外もタグづけの問題として解く supertagging という手法が近年注目されている。1,000クラス以上のタグづけ問題になるのが手法的にチャレンジングなところ。これまでの共通タスクもこういう機械学習的な問題が好まれてきた)

が挙がっているそうだ。

個人的には言語学習者の誤り訂正タスクだったら参加したいところ。Helping Our Own という誤り訂正のパイロットタスクも始まっており、「英語の非母語話者が自然言語処理の論文を書くときの誤り訂正」というタスクを設定しているそうで、むしろこれできるんだったら自分が使いたい。

ただ、会場から「毎年コロコロ変えるのでなくて、数年くらいは同じタスクでやってほしい」と注文がついたし、せっかく今年も NAIST から共参照タスクに参加したので、来年改良したシステムで参加するためには、しばらくタスクを継続してもらうのも重要だと思うので、どうなるかは分からないが、今後の動きに注目したい。

あとちょっとセッションを移動してThe 6th Workshop on Innovative Use of NLP for Building Educational Applicationsに出てみる。

自分が聞きたかったのはBilingual Random Walk Models for Automated Grammar Correction of ESL Author-Produced Textで、先日 EM アルゴリズムを使って誤りモデルを学習者の書いたコーパスだけから自動で学習する、という論文が発表されていたが、そのグループからのもう一つの論文 (「この話はワークショップで話すから、ワークショップまでいる人はそちらに聞きにきてください」と宣伝もしていた)。

さて、この論文、誤り訂正を noisy channel model で作るところまでは前の論文と同じだが、誤りモデルの作り方が違って、誤りモデルを母語別に作ることで、母語では区別しない単語は誤りやすい、といったようなモデル化を可能にしている。具体的には対訳辞書を用い、母語の単語と学習言語の単語からなる2部グラフを作成し、この上でランダムウォークすることで誤り確率を獲得するというものである。エッジの重みのつけ方が微妙だったが、なるほどなという感じで、最終的な訂正モデルを作るときの言語モデルも (前の論文では bigram でいまいちだったが) trigram を使っているようで、これはこれでいいんじゃないかと思った。

結果を見るとどうも BLEU ではよくならなかったという negative results の報告だったが、実際に出てきた訂正文を人手で見ると、悪くなっているというわけではなく、正しい訂正なのに BLEU が下がってしまう例もあったり、いろいろ悩ましいところのようである。これは、そもそも BLEU で評価するのがよくない、という話ではないかと思うのだが……。(我々も、人間が見たらよくなっている気がするのに、BLEU が「なにもしない」というベースラインより下がる、という現象に悩まされていた) 冠詞や前置詞など特定の誤りに限定して評価すると評価はしやすいのだが、文全体を訂正するようなタスクでは、どのような自動評価が適切なのか、もっと真剣に考えたほうがいいのだろう。

次の話はMSRのMichael GamonによるHigh-Order Sequence Modeling for Language Learner Error Detection。「高次の」と書いてあるからなにかと思ったが、あらゆる単語がそれまでの単語のラベル(誤っているか否か)に依存しているというモデルで、最大エントロピーマルコフモデルで系列ラベリング問題として解く、という話。こんなに次数上げても過学習するのでは、と思うのだが、実用上は適当にしきい値を決めて適合率と再現率をほしい値に調整するので問題ないようである。

また、たぶんこういうふうに高次のモデルを上げたのが効いているというよりは、品詞タグづけのときに粗い品詞ではなく、よく出てくる機能語を語彙化して、たとえば the とか was とかは独立した品詞としてタグづけしているのが効いているのではないかなあ (Cambridge Learner Corpus は3,000万語入っている英語の学習者コーパスで、相当な分量があるから、たぶん頻出するものは語彙化したほうがよい)。

質疑で「MEMM ではなく CRF を使わないのにはなにか理由があるのか」と突っ込まれていたが、データが巨大すぎるので CRF で学習するのは厳しいということだ。確かに3,000万語だと厳しいか……。あと、今回は長さが変わるような問題は扱っていないので、MEMM でもよいと考えた、とのことである。

2つのトークしか聞いていないが、こんなに言語教育って熱気がある分野だとは思わなかったが、ものすごく活気がある。TOEFLTOEICを運用しているETSというところの人たちがこのワークショップを運営しているのだが、彼らは自動で誤りを検出・訂正したり、学習を支援したり、採点(語学の能力測定)を自動化したり、といった実務的な動機があるので、こういう研究が本当に必要で、本気でやっているのであった。次回どこかで開催されるなら、また来てみたいと思う。

さて CoNLL に戻り、JAIST T 岡さんの"Learning with Lookahead: Can History-Based Models Rival Globally Optimized Models?"を聞く。この研究、個人的には今回の CoNLL の論文の中でいちばんおもしろかったし、汎用性も高い優れた手法であるように思う。計算量の高い全体最適化をするモデル(CRFとか)のほうが精度が高いと言われているが、shift-reduce 法のように決定的に解析する手法のほうが計算量は文長に比例する速度で解析できるので優れている。そこで、決定的なモデルが計算量が低いというよさをできるだけ残したまま、精度を上げる方法はないか、と検討した、という話。

イデアとしては、チェスや将棋などのゲームで次の手を読むとき、先にどういう展開があるか、ゲームの展開を記述した「ゲーム木」を先読みする "lookahead" のが常識だが、自然言語処理にもこの考え方を適用し、決定的な解析をする際に、あとの解析でいまの判断が覆る可能性も考慮に入れて学習する、という話。結局自然言語処理の解析でも、ほとんどの部分は文頭から決定的に解析して大丈夫で、間違えるのは曖昧性が高くてうしろの解析結果を見ないと決められないような状況で、それは「先読み」すれば分かる、というストーリーである。

ゲームに関する解析アルゴリズム自然言語処理の解析アルゴリズムがつながるところが T 岡さんらしくてすばらしいところ (ご存知の方も多いかもしれないが、T 岡さんは「激指」という将棋ソフトの開発者で、激指は世界コンピュータ将棋選手権で過去4回優勝するなど、最強クラスの将棋ソフトである) で、自分もゲームの解析アルゴリズム自然言語処理にも使えるのでは、と思っていたが、こうやって実際使えるアルゴリズムを提案し、いろんなタスクで有効性を検証しているのはさすが。素性エンジニアリングとかの作り込みもしないでコンスタントに性能が向上しているそうで、これは優れた手法だと思った。

最後のトークは MSR のグループによるLearning Discriminative Projections for Text Similarity Measures。テキストの類似度を測るとき、単語のコサイン類似度を取ることが普通だが、単語だとスパースなので、SVD などの手法で低次元に落とすことがよくある。ただこれらは教師なしの手法で、実際にテキストの類似度を測りたいのは「このクエリが与えられたとき、正解だと分かっている文書を不正解だと分かっている文書より上にランキングするような類似度」にしたいだけなので、そのように類似度を教師あり学習する手法を提案します、という話。で、提案手法は直接目的関数を最大化するよう類似度を学習できるので、OPCA とか CCA といった他の教師あり類似度学習手法より精度がよかった、ということである。

これが CoNLL-2011 のベストペーパーでもあるらしいのだが、いろいろなタスクで評価してコンスタントによくなっているので、有効な手法であることは納得なのだが、そんなに新しい手法かなぁと思ったり。トークしか聞いていないので、理解が間違っているかもしれないが、先日紹介したNIPS 2009 の Polynomial Semantic Indexing がちょうど同じようなことをしていると思うのだが、そういう距離尺度の学習との比較も言及もないし…… (最近は距離尺度の学習について自分も追っているわけではないが)。自分的には T 岡さんの話のほうがおもしろかったけどな〜

はてさて、国際会議週間最後は @neubig さんに誘ってもらって NTT 研究所の人たちとダウンタウンへ。ご飯食べたり、旧市街をぶらぶら歩いたり、行きたかった Powell's Bookstore という大きな本屋に行ってみたり、路面電車に乗ってみたり、スーパーでおみやげを買ったり。これまで観光的なことをしないまま来てしまったので、少し観光的なことができてよかった。シアトルやサンフランシスコのように中継地点の年ならまだ行くこともあるだろうが、ポートランドは日本から直接のフライトもないくらいで、一生のうちもう訪れることはないかもしれないし……。

なにもないだろうな〜とあまり期待はしていなかったが、小さくまとまった街で、交通機関も整備されていたし、安全な町並みで、自分は好きだった。シリコンバレーに対抗して、シアトルからポートランドにかけてをシリコンフォレストと呼んでいるらしい (そういう名前の競走馬が日本にいるらしい……) が、シアトル同様ここも住みやすそうでいい街だったなぁ。大都会よりも、なにもないくらいのところのほうが、自分は落ち着くようである。

結局スーパーでビールを買い込んでホテルに行き、6人で日付が変わるまで大貧民 (笑) 大貧民は英語では President というゲームだそうだが、ルールを英語で説明するのは相当ハードルが高い。というか、トランプの用語って英語でどう表現するのか全然分からない。こういう日常会話の単語って、日本にいると全然使わないので、しばらく英語圏にいないと分からないなぁ……

自然言語処理の研究者が6人集まって延々大貧民する姿もおもしろかったが、1回も大富豪になれなかったのが心残り。初めてルールを知った人もいるのに、みなさん強いですね…… (自分は中学から高校にかけて、将棋部で相当やったはずなんだけど) やはりゲームと自然言語処理はつながっているのかもしれない (笑)