科目レビュー
科目レビューという名の自分語り。
「自分語り」とは、聞かれてもいないのに自分の過去の話や、自慢話など止め度なく自分について話し続けること。
経緯は割愛しますが、単位に下駄を履いて入学したので初年度からDS専門科目を取りました。
対象5、6セメの科目を取っています。
どうしてこの中から選ばないといけなくなったのかも長くなるので割愛します。
レビューする科目は以下の3つです。
<前期>
・機械学習入門
<後期>
・シミュレーション技法
・質的データ解析
河本先生と一緒にお仕事をされていた大阪ガスの河村さんという方のお話を数年前に聞いたことがあり、大学に行ったら(行ってないけど)河本先生の授業を受けてみるんだ〜!という私のミーハーなお楽しみがあったわけです。
オラオラ系の手法紹介コードでポン!動画が多いです。
これに対して、授業では機械学習の仕組みを数学的な観点を盛り込んで教えて頂けます。
過学習、誤差評価、その抑制の話など機械学習を使う上で注意すべきことについて前半の数回分でじっくり解説あり。
その後、1授業につき1つくらいのペースで手法のお話です。
手法に関する数学の話付き。
式をバーン!!!と出されると、難しいスライドもありましたが、
例題もあります。
例題に関しては、本気を出せば手計算出来る量で、同じ結果を自ら導くこともできます。見て分からなきゃ書いてみろっていうのが通用する。
setosaやbostonのような出来合いのデータセットでバーンとやられちゃうと手を動かして計算することが不可能ですから。
河本先生が意図されていたのかは分かりませんが、時間をかければ自分でも導出可能なデータ量は有難い。
授業は理論の話が中心で実装はサンプルコードが配布されて紹介程度。
自分でサンプルコードを読み込めば、
実装はもちろん、描画関数も付いていて、scikitlearnやmatplotlibの使い方も結構掴める。
2年生の前期に必修になる多変量解析入門の授業がstreamで公開されていたので、夏に一通り見ましたが、良い感じの相互作用があると思います。
多変量解析入門の授業はRでの紹介もちょろっとありましたが、やるならまとめてpythonで実装の流れも知りたいし、数学的なことも一緒に抑えたい、ということであれば理解が深まると思います。
数学の話を隅々まで理解していないと課題ができないということはないと思う。
また、課題でコードを書く能力が必要とされることは全くありませんでした。
数学が苦手でも理解できるように設計しているよ!
と言っていた気がします。
テストなし、猶予1週間のレポートが3回。
河村さんの本:
モデルの概念をざっくり理解した後で、こういうのを読むと面白いかもしれないです。
あなたを支配し、社会を破壊する、AI・ビッグデータの罠 キャシー・オニール(インターシフト)
youtubeで数学の内容も盛り込みながら機械学習を紹介している動画。
グリッドサーチとかSVMとか授業で扱わなかった内容もこちらには紹介あり。
復習や補完に良い。
河本先生のファンブックもせっかくなので紹介しておきます。
地味に1回目の課題で役立ちました。
機械学習入門は次年度は
に授業名が変わっている?
シラバスの内容が全く同じだから多分変わっている。
他の授業ともシナジー満載でとにかく役に立つ。
前期の機械学習入門で3回の課題のうちの1つの提出で、
間違えて自分の答案ではなく、問題用紙を提出して終了するという大ポカを犯してしまい、単位は取れたものの、不本意な成績だったのでリベンジ戦。
エクセルを使ってモンテカルロシミュレーション。
というと難しそう?だが、基本的には繰り返し計算。
繰り返し計算すると1000行くらいになっちゃうわけですが、あとはそれをどうやってまとめようかという内容。
エクセルが計算してくれるということもあり、数学・統計の話は出てくるが、重きが置かれているわけではないように思う。
説明は丁寧にしてくれます。
前提条件に対して、どんな確率分布を適用するか、
この条件ならどの分布でいくか、
シミュレーションの結果をどうやって可視化するか、
条件がズレた場合のシミュレーションもしよう、などなど
Excel作りに関することが重視されているように感じた。
シミュレーションの結果に対して、説得力のあるExcelが作れるようになると思う。
エクセルに取り組む前に諸々の設定やら条件やらを整理するフレームワークが統一されている。こういのが統一されているだけですごく取り組みやすい。
授業中に扱う例題の解答も必ず配布してくれるので、エクセルの逆さ読み(出来上がったセルを読んでなんとなく理解すること)がある程度できれば、そのうち慣れると思われる。
ただ逆さ読みは逆さ読みなので、そこで止めないで、やっぱり自分でも更地から作ってみることも大事だと思います。
授業でもこの点はとても強調されていました。
授業の中盤で使う、Ntrandというエクセルのアドインが、おそらくMacに対応していない。授業の後半で企業の方が現場で使っているソフトウェアでシミュレーションを紹介してくれる。ちなみにこのソフトもMac非対応。
Macへの風当たりが強い。
後半5回くらいはエージェントシミュレーションや生存時間、疫病のシミュレーションみたいのがあってやたら難易度が上がった。
しかし、ここから課題は出なかった。
課題で必須ではないようだったが、ExcelのWhat-If分析のデータテーブルが使えるとシミュレーションするのに役立つ。
河本先生も模範解答ではWhat-If分析を使っていたが、これは一度組み込むとセルに施した処理が外から見にくいので理解しておいた方が吉。
テストなし、猶予1週間のレポートが3回。
Excelでシミュレーションをして考察まで。
例題に比べると作業工程が増えるので多少の根気がいる。
やることはあまり変わらない。
授業の中でエクセルを作りきれないので、溜め込まずに復習すると良いと思う。
確率・統計の復習をしながらExcelでアウトプットする練習できていいです。
かなり苦労しました。
Rで一般化線形モデルする内容。
まずRが分からない。致命的な状況。
後期が始まった頃は統計の話も全然分からなかった。
機械学習の時に決めていた回帰係数にどうやら、
標準誤差があるの?
実は0かどうかを検定しているらしい?
そんな所からスタート。
統計検定2級の事前知識があると授業内でも理解が進むと思う。
この授業に関しては途中の過程をすっ飛ばし過ぎて受講してしまった。
後から気づいたが、質的データ解析入門という授業があるらしい。
回帰係数が0かどうかの検定の話で、
「なんで1.96倍してるんですか〜?」
というアホな質問をしてしまい、
「統計検定の勉強をした方がいいですよ」
と言われる始末であった。
ただ、一度アホな質問をしてしまうと、何も恐いことがなくなり、大概のことは質問できるようになる。
勉強をした方がいいですよと言われたので、勉強して統計検定2級は取得した。
この授業のお陰で2級レベルの回帰係数の問題(最後の方)にはかなり強くなれた。
ただ私が受けたCBTでは回帰係数の問題が全然出なかった。
佐藤先生は自分の理解度が低い質問にも的確に答えてくれるし、返信がめちゃくちゃ早い。
大学の学務課の人も見習って欲しい。彼らの返信の遅さは常軌を逸している。
上記の質問からお察しの通り、統計に関する基本的な内容を全く持ち合わせていなかったので、
標準誤差などの初歩レベルから始まり、交互作用項、平均の有意差検定、適合度検定、などなどそんな用語が出てくるたびに色々と調べなければならなかった。
幸い、昨今はgoogle先生で調べれば有用な情報も多く、授業時間外で根気強く自分の尻を拭い続けた。
実際に授業では統計検定2級の参考書とは違う、一般化線形モデルでのアプローチが取られる。
これがとてもうまくできていてる。
拡張性が高いというか、まぁそんな感じ。
特に、重回帰モデルを使った平均の有意差検定がとても良かった。
複数のboxplotの平均の違いを直線で捉える考え方がシステマチックでイケイケでした。
テストなし、課題は3回。
猶予2〜3週間。
猶予があるだけの重さがありました。
統計検定を取った後も結局課題は楽ではなかった。
一般化線形モデルの話は統計検定2級には出てこないので。
内容はデータ分析の課題だったが、Rを使っても、pythonを使っても良い。
pythonだとstatsmodelでRと同じ入力で同じ結果を得られる。
私はRの使い方に結局自信がなかったので、pythonでやった。
3回目のニュートンラフソン法のフルスクラッチがキツ過ぎて泣きながらやった。
渾身のニュートンラフソン法をqiitaに書いたが、0LGTM。
隔年開講になったようで、来年度なし?
再来年はあるのかな。
Rに関しては
Rについてはこれで勉強しています。
内容濃過ぎて進まない。
地獄の水は魔法の水って感じの授業でしたね。
レポートはここまでです!
<この下は成績の話やらで、唐突な自分語りが始まります>
オーバーキルした感はあります。
単位を取るだけならもっとハードルはもっと低いかもしれません。
不可のある私が言うのもなんですが、
これを突き詰めてみよう!
と決めたものはとことんやってみるのも良いかもしれません!
1年間はあっという間で、最後に大学に行ってから389日経過しました。
レポート内容って具体的にはどういうの?
とかこれ以上のことに興味があればDMでも送っておいてください。