統数研リーディングDAT養成コース(2019年)に行ってきた
11/6から1/28までの5日間、数理統計研究所のリーディングDAT養成コースを受講してきました*1。
5万円で5日間、統計モデリングと機械学習の基本的なトピックを入門+αまで一通り学べちゃう、民間と比べると圧倒的にコスパが最強なセミナーです。
どんなコンテンツ?
統計モデリングパート
一般化線形モデルの基本的な考え方
この辺の話はみどりぼんを一読したので知らないトピックでは無かったです。でもみどりぼんを必死に読み解いたときの内容が綺麗に体系化されていて、つまりは「みどりぼん読む前と後の2回聞きたい講義」でした。個人的にはリンク関数で系統的成分、データの確率分布で確率的成分を表しているという整理が少し新鮮で、リンク関数を「元データの分布に応じておまじないのようにつけるもの」的な理解から抜け出さなきゃなと反省しました。もう少し勉強を進めたら、改めてみどりぼんに戻って来ようと思った次第です。
階層ベイズモデルの基礎とグループの推定
階層ベイズモデルのことを「GLMのような単純なモデルで表現できないときに、ベイズ的アプローチで頑張っていい感じのモデルにするやつ」だと思ってたんですが、今回の講義ではグループ間をゆるく関連づけられる階層ベイズのメリットが小地域推定・縮小推定の文脈でも活きるよって話がポイントだと受け取りました*2。階層ベイズ、個人差・場所差を考慮するいい感じの問題設定ができると色んな領域に攻め込める武器になりそう。
状態空間モデルによる時系列解析と、Rによる実装
購買履歴などのストックデータに触れる機会が多かったので、時系列データの調理方法は個人的にも関心事のひとつでした。とはいえARIMAモデルとかだと結果をいい感じの日本語として解釈するのが難しいので、その点、今回の状態空間モデルには可能性を感じました。特に外生変数をうまく作ることができれば、マーケティング施策とかもいい感じにモデルに加えることができるんじゃないかと妄想が広がりました。
機械学習パート
画像・動画データの低ランク近似によるノイズ除去・欠損補完
普段のデータ分析業務ではテーブルデータしか扱ったことが無いので、画像・動画データには全くと言っていいほど馴染みがありませんでした。とはいえ、大きなデータを「小さなデータを組み合わせたもの」として分解してあげると、重要な要素/そうでない要素に着目したデータ処理が可能となるという発想は非常に興味深かったし、後述するレポート課題でのアルゴリズム実装でも思いの外楽しめました。もっとやってみたいと思えるお話です。
カーネル法とサポートベクタマシンの数理的な説明
再生核ヒルベルト空間とか何が何だかよくわかんなかったです。再生核の「核」って英語で「カーネル」なのか!というのが収穫になるレベル。「非線形なデータもカーネルトリックという魔法をかけると、線形データとおんなじような分析手法が使えるようになるよ!」が私の理解の全てです。講義前は「非線形データにちちんぷいぷいする方法なんて無限にあるんじゃないの?」って思ってたんですが、どうやらそうじゃないらしいということは分かりました。
決定木とアンサンブル学習の主なアルゴリズム
kaggleとか登録してみたはいいけど、深夜残業続きで結局やらずじまいで終わってたので、恥ずかしながらLightGBMとかXGBoostが決定木をどう発展させたアルゴリズムであるのか全く知らなかったです*3。転職したんでkaggleとかやる時間もできたらいいなあ。
ニューラルネットワークが生まれた背景と基礎的な仕組み
DNNと類比される実際の脳活動の例として視覚野の話が出てきて、そういえば私は視覚野まわりの研究で学士(文学)を取ってたことを10000000億年ぶりくらいに思い出しました。マーケティングリサーチの世界にいるからか「説明」がしにくいDNNはどうしても勉強が後回しになっていましたし、独特の用語に何となくの忌避感を持ってたんですが、私のデータ分析以外のバックグラウンド的にはむしろ相性が良いのかもとか思っちゃいました。
ガウス過程回帰の数理的な概要
ガウス過程なるものを使うと「モデルの束」みたいなのを考えられるので、従来のモデリングよりも柔軟な表現ができるようになるらしい。以上が私がなんとか理解できた全てです。カーネル法のときもそうでしたが、数理的な説明が続くと議論についていけなくなるのが課題ですね。ガウス過程という考え方はベイズモデリングやカーネル法ともつながる(のでこのへんの理解も必須)という印象を受けたのですが、その理解が合ってるかも自信がないです。
成果は?
レポートを2枚提出して、無事に修了書をいただきました。
提出したレポートに関しては、講師の方から下記のような講評もいただけます。レーダーチャートの下には良かった点・悪かった点までコメントまでいただけてます。大学時代のレポートでもそこまでやってもらった経験は数えるほどなのに…!
課題1:状態空間モデル
考察が弱いよね、というやつ。
KFASパッケージを使えば分析自体はまあまあ簡単に出来たんですが、出力される各指標がそれぞれ何を意味しているのかみたいな理解がまだまだ甘かったと思っています。マーケティングのデータ分析業界にいる身としては、何を指しているか日本語で説明できない数字は全く意味がないので、この結果は重く受け止めねばです。。。
課題2:画像の欠損値補完
同じく考察と、あと数学的理解が弱いよねというやつ。
「数学的理解が弱い」にすべての課題が集約されています。例えば今回の場合、ギョウレツノトクイチブンカイとやらを作業としては実装できるんですが、「特異値分解ってどんな意味を持ってるんだっけ?」みたいなところがいまいち腑に落ちてないので、「画像の複雑さって表現するのに必要なランクで表現できるよね!」みたいな考察に発展できませんでした。
これから何やるの?
勇み足で少し背伸びしたレベルに参加してしまった自覚があるので、「今回学んだことを実務に還元します!」というよりは、今回なんとなく聞きかじったけど消化しきれていないコンテンツをきちんと咀嚼することが、当面やっていくことになるんじゃないかと思いました*4。
とはいえ、今回の講座で置いていかれたパートもそうだし、課題2のレポート講評での指摘もそうだし、この領域をちゃんと理解するにあたって基礎となる数学まわりがモノにできていないが故の行き詰まりは感じています。なので、まずはオーソドックスに微積分・線形代数あたりの基礎を固めにいかなきゃいけないかもです。数学2B以降のお勉強をあんまり真剣にやってこなかったツケが10年遅れくらいで回ってきてます。
転職先のお仕事とかの諸々が落ち着いたらお勉強頑張るので、よかったらおすすめの参考書とか教えて下さい。
*1:最終日の講義に出席するためだけに、前職の退職日を1月末まで引き伸ばしました。
*2:ところで小地域推定・縮小推定について「下位集団で十分な標本数がないときに何とかするやつ」以上、とっかかりがどこにあるのかすら分からないです。課題意識としてはマーケティングリサーチの人に刺さってるのは確か。
*3:autoML に絡んでたときにLightGBMとかXGBoostも触れてたんですが、「決定木の仲間なんだなあ」程度の理解でなんとかなってしまってました。
*4:幸いなことに(?)、成果の還元を強いられる”実務”とやらは無くなったので。。。