実は身近な自然言語処理の話〜首都大学東京 准教授 小町守様~


過去分はコチラ

マメ研インタビューシリーズ第1回 産業技術総合研究所 油井誠
~マーケターもクエリ言語をやりましょう!~

マメ研インタビューシリーズ第2回 サイバーエージェント チーフデータアナリスト岡川宏之
~結果の積み重ねで信頼を勝ち取る!~


首都大学東京 システムデザイン学部准教授 小町守 様
2005年東京大学教養学部卒業。2010年3月奈良先端科学技術大学院大学博士後期課程を修了し、博士(工学)を取得。奈良先端科学技術大学院大学助教を経て2013年4月より現職。自然言語処理を専門に研究。ヤフー株式会社、アップルジャパン株式会社等に対し研究開発コンサルティングの実績も持つ。

マメ研先生と小町様2ショット

自然言語処理に関する分野で先進的な研究をおこなっていらっしゃる小町守先生をお迎えして、「ビッグデータ」ブームや、ご研究などについてなど、ざっくばらんにお話いただきます。

「ビッグデータ」ブームに関して

[豊澤] 本日は、自然言語処理分野でご活躍中の首都大学東京、准教授、小町守様にお話を伺います。当サイトの読者様はマーケティング寄りのデータ分析に関心のある方が多いと考えられます。恐らく、ビッグデータという言葉・ブームについて色々とお感じになっていらっしゃると読者様も多いのではと推測しているのですが、まず先生のご見解を伺いたいと思います。

[小町] ビッグデータについて(ブームに水を差すような)発言すると後ろから誰かに刺されるのではないかと思っていまして(笑)、公の場では自分の考えを発表することを控えていました。

ですが、良い機会なので話させていただきます。

個人的にはビッグデータが関係するようなデータに関わる仕事をされている人は多くないと思っています。

それほどデータをもっているような会社も多くはないでしょうし、また、データを扱うのに特殊なノウハウが必要です。

リアルタイムで扱うにはチューニングも相当程度必要になりますし、大規模データを扱うのでしたら計算量のオーダーをちゃんと気にしないといけないとか、割とコンピューターサイエンスの基礎を身に付けている人でなければ扱えないことがあります。

独学でやっているとその場その場でのプログラミングはできるでしょう。しかし、そういう大規模になった瞬間に実装しているアルゴリズムの計算量が3乗のオーダーなのか2乗のオーダーなのか、それともデータが増えても時間が増えないのか認識しないといけない。

そういうような感覚をもっている人っていうのはそんなにいない印象ですね。

逆に言うとほとんどの企業では所謂ビッグデータは関係ないと思っておりまして、それよりは、凄くその個別企業さんで持っているような中規模で分野の知識が詰まっているようなデータをいかにマイニングしていく方が大事なんだろうと思います。

[豊澤] まずはスモールデータの活用からしっかりしないとということですね。

言語学との出会い

[豊澤] 続いて小町先生が言語学にご興味を持たれたきっかけを教えて下さい。

[小町] もともと学部で就職するつもりだったのですが、工学部は修士まで行く、医学部歯学部は6年通う、文系だけ6年大学に居られないのはおかしいと思いまして、自ら2年留年するつもりだったんですね。留年していたときに留学を1年しました。

哲学で身を立てようとなんとなく思っていましたが、留学していた時に言語学の授業を受けまして、それが非常に面白くて。

実際に言語学の2つの授業でもトップの成績だったので、もしかしたら言語学だったら自分の才能を活かせるんじゃないかと思ったのが、哲学から言語学に移るきっかけでした。

小町様

[豊澤] 留学中ということは英語で言語学を学ばれたんですね。ネイティブの方々よりも成績が良かったとは!

[小町] 言語学って実は英語がネイティブだからできるってものではなくて、むしろ我々のように日本人で第2言語として英語を凄く勉強した、第2言語として勉強すると文法や語彙を意識的に学ぶようになるので、英語ネイティブの人よりも逆に英語の研究ができたりすることもあります。

その後、留学から帰ってきて言語学を学ぶ大学院を探したのですが、願書を出す日を1日間違えてしまいまして、留年してしまいました(笑)

その留年中に、先輩が紹介してくれた国の研究機関である国立国語研究所でアルバイトをする機会がありました。

言語の研究だから多少興味はあったんです。実際のところは、XMLプログラマーとして仕事があると言われて行ってみたら、自然言語処理に関係するような作業の内容でした。

周りの研究員の人に聞いてみたら自然言語処理という分野がある、と。

自然言語処理だったら奈良先端大の松本先生のところがいいよとまで勧めていただいて、自分でも調べてみたら文系から行ける自然言語処理の研究室っていうのは日本では北陸先端大か奈良先端大ぐらいしかなく、研究内容と興味関心の一致から奈良先端大を選択しました。

[豊澤] 留年したことで自然言語処理と出会えたとは。何が起こるかわかりませんね。

インターンシップで得た貴重な経験

[豊澤] これまでのお話で、言語学から自然言語処理という道筋が見えた気がします。続いて、研究内容についてお伺いできますか?

[小町] そうですね、大学院進学直後は元々言語に興味があったので、言葉の意味に関わる研究をしていました。

文章に関してこの単語はこの意味だとか、文の構造を自動で推定するモデルを作成して解析するといったことを修士の時は行っていました。博士にあがるときに転機がありまして、ある外資系企業のインターンでシアトルに3ヶ月行っていました。

そこでは実際にやることは決まっていなかったのですが、使ってほしいデータは決まっていて、当時の検索エンジンのクエリログを使って何か研究できないかということでした。

つまり、①データ、②期間は3ヶ月、③論文として発表するということが決まっていたわけです。

最初の1か月は100本ほど論文を読んでサーベイをして、週一で発表をしていました。2か月目からプログラムを書き始めて、3か月目で論文を書き始めました。結局、国際会議でも採択されて論文誌にも載り高い評価を得ることができました。ここの経験で研究の進め方を学ぶことができました。

ニッチ領域で先端的な研究に取り組む

[豊澤] 現在取り組まれていらっしゃるご研究をご紹介下さい。

[小町] 私が取り組んでいる内容は最先端であるとの自負はありますが、メインストリームをやっているわけではありません。

メインストリームの研究は構文解析や機械翻訳といった分野になるわけですが、これらの研究は計算機科学の粋を集めた総合格闘技みたいなものです。

メモリの扱いなどのハード的な部分、計算効率性の追求といったアルゴリズムの要素、データ構造の持たせ方の工夫などでーた構造とアルゴリズムの深い理解が必要になります。また、非常に大規模なコミュニティがある、歴史の長い研究領域でもあります。

この分野については世界中の研究者が取り組んでおり、奈良先端科学技術大学院大学もその一つであると言えます。私も所属していた自然言語処理系だけで、大学院生90名、スタッフも10名程度と合わせて100名の大所帯です。

これぐらいの規模で自然言語処理の研究に取り組んでいるところは他にはカーネギーメロン大学ぐらいではないでしょうか。

こういった背景もあり、小規模な研究室でも成果をあげられそうな、メインストリームではないニッチな分野に積極的に取り組んでいます。

[豊澤] 具体的にそのニッチな分野では、どのような研究に取り組まれていますか?

[小町] ここ3年間くらい言語学習支援の研究を行っています。英語を勉強する日本人や日本語を勉強する外国人、それら語学を教える先生を支援する研究です。特に誤り訂正と呼ばれる分野です。

具体的にはLang-8という言語学習用SNSのデータを活用しています。このサイトでは、例えば英語で日記を書くとネイティブの方がもの凄い勢いで添削してくれます。添削はボランティアなのですが、対価として海外の方が日本語で書いた日記を添削することになります。

ちなみに、Lang-8の創業者の方は、京都大学で自然言語処理の研究をされていた方です。

世界中の方が利用していて、60万アカウントのうち20万アカウントぐらいはアクティブです。この中で日本語⇔英語については学習者が最も多く年間100万文ほど増えています。

Lang-8の貴重なデータで画期的な研究

[豊澤] 膨大なデータ量ですね。具体的にはどのようなデータなのでしょうか?

[小町] 例えば日本語を学んでいる海外の方が「傘をひらく」と書いていたとしましょう。これを日本人の方が「傘をさす」と訂正したとします。この例では「ひらく」が「さす」に対応している訳ですが、この対応を誤り訂正パターンとして、動的計画法によって抽出しています。

これまでの誤り訂正の研究はデータ量が非常に限られていました。なぜかというと、英語/日本語に通じた方が一文一文確認する必要があったためです。ですので、多くても数千文という規模でした。このLang-8が収集したデータ量はこれまで地球上に存在していないとても貴重なデータであると言えます。

この貴重なデータを活用した誤り訂正モデルは非常に高い効果を挙げることがわかりました。

マメ研先生

[豊澤] 初めから高い効果があると確信はあったのでしょうか?

[小町] いえ、全くありませんでした。Lang-8のデータは分析には、不適当なデータも多数含まれていました。例えば、添削をしていても最初の数単語で力尽きて止めてしまっていたり、添削せず全て文章を消去してOKとだけ記入していたり、様々な問題がありました。

[豊澤] ノイズが含まれていたということですね。

[小町] そうです。このノイズを丁寧に除く必要がありました。

[豊澤] 実社会において、誤り訂正はどのように活用されていますか?

[小町] 例えばMicrosoftのWordなど文書作成ソフトでは誤っていると判断される個所に赤や緑の波線が自動的に引かれますよね。

また、検索エンジンに入力する単語はかなりのケースにおいてスペル誤りが含まれていますし、誤り訂正やサジェストされる前提で入力している場合も多いでしょう。

例えば、「2」と検索エンジンに入力すると何が検索されるか知っていますか?

[豊澤]

[小町] 某有名巨大掲示板が検索されます(笑)。
身近な所で自然言語処理が活用されていることを感じてもらえるのではと思います。

オススメ書籍

計算機プログラムの構造と解釈

MITのプログラミング入門の教科書として使われていた古典的名著です。
大学院の1年生のとき、毎週演習問題を全部解く、
という形式で数人で集まって丸々1年かけて輪読しました。
時間はかかりましたが、データ構造やアルゴリズムの基礎を身に付けることができました。
日本には優れた教科書を残す文化がないのですが、
いつかこうやって長く使われる教科書を書いてみたいですね。