Hatena::ブログ(Diary)

武蔵野日記 このページをアンテナに追加 RSSフィード

2013-06-12

基礎勉強の内容と最先端の研究をリンクさせる

基礎勉強の内容と最先端の研究をリンクさせるを含むブックマーク 基礎勉強の内容と最先端の研究をリンクさせるのブックマークコメント

午前中、外部からうちの研究室を受けたいという人の研究室見学。正確にはいま南大沢にいる人なので、大学的には内部だが、学部 (大学院の研究科) 的には外部扱いなのである。

実は自分の所属する首都大のシステムデザイン学部情報通信システムコース (大学院のシステムデザイン研究科情報通信システム学域) は、キャンパスとしては日野市 (最寄り駅は JR 中央線豊田駅で、立川から2駅八王子から1駅) にあって、もともとは都立科学技術大学であったキャンパスなのだが、教員は南大沢キャンバスの工学部から移動してきた人が過半数で、少しだけ (1-2割程度?) 都立科学技術大学に採用された教員がいて、若干名首都大になってから採用された人がいる、という感じのようである。

ややこしいのは、実は理工学研究科自体は南大沢キャンパスにあり、たとえば電気電子工学専攻はいまも南大沢なので、高校生のとき深く考えず情報通信と電気電子は似たようなものでは? と思ってコースを選択すると、学部からして違う学部 (必修も1-2年生のときこそ共通科目が多くあるが3年生以降は違うキャンパスなので、全然違う科目) になるので、もしかすると興味と違った研究をしないといけない、という点である。

とはいえ1-2年生では同じキャンパスで、授業も共通のものがあり、サークル活動なんかをしていると先輩や後輩に他の学部の人もいたりするので、雰囲気が分かりやすい、というのは利点なのかもしれない。

首都大のようにキャンパスが複数分かれている場合、東大のように1年生では全体で教養学部みたいなところでコースを決めずに入学させ、入学してから進学先を決められるようになっていたらいいと思うのだけどなぁ (そういえば東大も駒場キャンパス、本郷キャンパス、柏キャンパス等と3年以降の進学先は分かれているし)。理学系の分野と違い、工学系の分野は高校までの授業で学ぶわけではないので、実際入学して大学で授業に出たり先輩から話を聞いたりしないと、どんなことをやっているのか全然見当違いの予想をしていたりすることがあるので……。

昼の研究会では

を紹介。著者のサイトで Keynote 形式のスライドPDF 形式のスライドが公開されているので、論文を読む人はこちらを参照されるとよいだろう。Keynote 形式のスライド (アニメーションつき) を再生するために Keynote をインストールしたのは秘密だ :)

さて、この論文の内容は、リソースが少ない言語にいかに高精度な自動品詞付与器を作成するか、という問題に、半教師あり学習で取り組む、というタスクなのだが、2時間でやるにはどうするか? というチャレンジングな問題設定である。2時間は人手によるタグづけに使ってよいとして、どう使うか? と考えると、大きく分けると (1) 辞書作成 (2) コーパス作成の2つあり、それぞれの効果を調べた、という話。生コーパスを使って品詞を学習するのは EM アルゴリズムが思い浮かぶが、EM アルゴリズムが使えるのは高品質な辞書があることが前提で、そもそも辞書すら存在しないという現実的な設定では使えない、というのが解決しなければならないことなのである。そこで、まず2時間で単語の頻度順にソートしたリストに品詞をつけて辞書を作成し、その辞書と生コーパスから作成したグラフ上でラベル伝播することによって、単語のタイプ (異なり) ごとにタグづけされている情報を単語のトークン (出現) ごとのタグづけに活用する、というアイデア。また、辞書だけだと単語の前後のつながりを見ることができないので、コーパスにつけた品詞列の情報も参照してノイズを減らしたりして、最終的な EM に回す、というストーリー。

特定の言語で時間をかけてリソースを作る系の話はみんなさんざんやってきたのでこういう軽量な手法の研究が目新しく見えるのかもしれないが、現実的な問題設定で (新しいアプローチを適宜組み合わせて) できるだけ人手をかけずに高精度な解析をする、というのは自分の好みで、細かい手法のところはもっとうまくやれそうな気がするのだが、そういうのは置いておいて、楽しく読むことができた。ちょうどプログラミングチュートリアルで HMM による英語の品詞付与や日本語の単語分割、かな漢字変換をやっているので、やっぱりこういうふうにちゃんと最新の研究でも使われていることを勉強している、というのが紹介できてよかった。

午後はメールの返事とプログラミングチュートリアルの予習。かな漢字変換の課題をしていたのだが、辞書の辞書 (ハッシュのハッシュ、つまり2次元のマップ) を作る必要があり、そういえばこれまで Python で2次元のリスト (配列) や辞書を作る方法を教えていなかったことに気がつく。これはできないのではないか……。演習課題についてもそれまでに習ったことでできるかどうか事前に確認しないといけないな〜……。

夜は会議の資料作成。みなさんから送られてくる資料を PDF にして連番を振って印刷するだけの簡単なお仕事……なのだが、1時間強かかる。来年以降この仕事をどなたかするのか分からないが (1回やれば5年は回ってこないと思われるので)、この仕事を毎月してくれる人に畏敬の念を持つであろう。