AIのブツブツ

まあ色々あって、というかあり過ぎて最後の投稿から2年くらい経つ。

業務形態が大幅に変わって自由な時間が少なくなったのも大きい。

それはともかく。

「AI」というキーワードが気になり出したのが1年半くらい前。2021年の夏頃だろうか。

研修講師の現場で、最後の挨拶で「AIに立ち向かうためにはAIを習得するしかない」みたいにブっていた以上、自分でも身に付けないと話にならないと感じ、動画などで見て少し手を出した。

が動画では印象が薄いし、業務が忙しく精神的に余裕がなくなり、すぐに中断。

ただ業務の間もずっと気になっていて、AI業務に関する資料などには目を通していたものの技術は習得できなかった。

半年くらいしてやっと本格的に始められそうになり、少し「投資」した。

いわゆるスクールですね。

ただこれが入ってみると目的に合わず、すぐに退校してしまう。大枚をはたいた自分が悔しかった。

が、実はこれが図らずも後になって役に立ったのだ。

その後は色々な本を買って自習。やはりキツかったのは数学の本だ。高校時代の悪夢が蘇ってくる想いがした。

この段階ではあまりピンと来るものがなかった。

実はこの後、クラウドソーシング経由で学習モデル作成のタスクがあり、これに飛び付いてみた。今思うとかなり大胆な事をしたと思うが、サンプルソースを漁れば何とかなるかな、と思ってとりあえずこのタスクをひったくって取り組んでみたところ、意外と良い評判が得られた。

はじめて得られた達成感だったが、実はこの時飛び乗る決心が出来たのは、前述のスクールでPythonやpandas、numpyのノックを受けていたからだった。

その後は「ゼロつく」をひたすら空き時間を使って進めて行った。「ゼロつく」はじっくり読めば必ず理解できる良書だと思うが、数ページ進むだけで何日もかかったりして焦りを感じていた。
特にクライマックスの勾配逆伝播の部分は遅々として進まずイライラしてしまった。

今思い出す悪夢は、自分のコードがサンプルと寸分違わないはずなのに予測がおかしくなった時だった。
その時の原因はPythonの罠で、

x -= a
x = x – a

の挙動の微妙な違いによるものだった・・・

リスト、numpy配列の累算代入について – Qiita

AI以前の問題だ。これは気付かない。軽く1〜2日ハマってしまった。(ちなみにスカラー値だと全然問題なくて、mutableな参照値を使うと起こる事象らしい)

もうひとつ、エクセルでニューラルネットのモデルを動かす試みがあり、これはかなり理解の助けになった。単純な法則で学習が進んでいく様子は感動モノだったが、エクセルの限界で逆伝播計算が使えない。どうやって学習出来たのか、今となっては思い出せない・・・あ、普通に数値微分したんだっけ。

この頃になると朧げながらもAIに対する全体像が掴めて来た。何よりもまあまあ実用的なモデルを作り上げた経験がもたらしたものが大きかったと思われる。

だがここで再びスランプ。

AIに関する膨大なリソースが氾濫する中、次に一体何をすれば良いのか、何をマイルストーンにすれば良いのかが解らなくなってしまい、立ち往生。

何というか、途方もない無駄な努力をしているようにも思えた。山道を登っているのに、どこを目指しているのかが見えていない状態。

AI学習を再開して半年くらいの頃だ。

この時「Kaggleというのがあるじゃないか」こう閃いた。

例えば、Kaggleのコンペティションを大きなタスクと捉えて、それに必要な理論を中心に攻めて行けば良い、とこう思ったのだ。

スコアは特に気にしない。NotebookやDiscussionでメダルを目指すという手もある。

「よしKaggleありきで行こう」

こう決心したのだ。

(つづく)

コメント

タイトルとURLをコピーしました