文系の人のための機械学習入門

朝、若干雨が降っていたので娘を車で保育園まで送る。道路がそんなに広くないのだが、車も小さいのでなんとか。もっとも、停める場所がないので、一人で送り迎えをするときは使えない技であるが……。

午前中は Skype ミーティングである。年間数回は奈良に行くかと思ったのだが、結局今年度はまだ1回も行っていない。SVM 勉強会もなかったからかなぁ。奈良に行くとリフレッシュできるので、日帰りでも行けるといいのだが、なかなか機会がない。

お昼も企業の方とミーティング。学生が経験を積めるといいですね、というお話をする。しかし問題なのは学生のスキルであって、学部生のときは時間があるのにスキルがなく、院生になるとスキルはあるのに時間がない。就職しても(一部の業種や人を除くと)しばらく研修したり OJT したりしないと仕事にならないことを考えると、ほとんどの場合戦力になれないし、将来活躍する学生を育てるという気持ちで受け入れてくれる場合でないと、難しいのかもしれない。だからといって完全なるお客様として扱われると、世間話以上のことはできないので、学生も成長できないし、ジレンマである。

結局のところ、どれくらい大学でトレーニングしてから送り出せるか、ということかもしれないが。(大学で教えた内容に関わらずできる学生はできる、というのは真実だが、もしそうだと大学の役割は入試でそういう学生に来てもらい、適切に選抜することになり、教員としては全然嬉しくない)

午後は南大沢で自然言語処理の授業。スペリング誤り訂正のお話をする。Google のウェブ検索の「もしかして」はみんな知っているので話が早いが、GNU aspell は(当然のことながら)誰も知らなかった。アルゴリズムが明らかなソフトウェアなりサービスなりを知っていてくれると説明しやすいのだが、ブラックボックスのシステムしか知らないと「こういうサービスは、典型的にはこんなアルゴリズムを使っている」というような歯切れの悪い説明になってしまい、微妙な感じ。

今回この授業を受けてくれているのはいわゆる文系の人たちで、国もバラバラ(ドイツ、オーストラリア、台湾、など)で、どこまでの知識を仮定していいのか分からないのが難しいところ。今日までは統計(頻度)や確率の世界の話で、条件付き確率・同時確率が分かればよかったのでなんとか乗り切れたが、来週以降機械学習の話が登場するため、どこまでちゃんと説明できるか不安である……。

機械学習の問題、モデル化とデコード(探索や分類)と最適化の3つに分解するとすると、まずはモデルは線形分類器、重みは天下り的に固定してデコードのところから説明するのがもっとも分かりやすいと思うのだが、最適化をどう説明するかが一番の難所。