botter記(22-02-17) Wannado List
仕事がカンスト気味だなあと思っていたところで昨年末にbotterとしてそこそこの結果が出たので、自主的育休を兼ねて年始に退職いたしました。ひとまず1年くらいは専業botterとして活動しようかなと考えています。
せっかく少し時間が増えたので、長期目標として今年やっていきたい研究についてふわっと書きました。あらかじめ学習計画などを立てる方で、ただの個人的なメモ書きです。
最終目標
Transformer系のモデルを自分である程度実装、及び調整出来るようになり、時系列解析に持ち込みたい。
(裏の目標)
体系的に統計を学び、botter活動に必要なデータ解析で生じるストレスを軽減したい。
誰かに強制されたわけでも締め切りがあるわけでもない上に、そもそも私が自作の深層学習モデルで大きな利益を出せると期待していません。よってこれに関しては難易度含めて駄目だなと思ったら投げ出しても別に良いだろうくらいの心持ちですが、その土台となるデータ解析の技術に関しては腰を据えて身につけたいと考えています。太陽を目指さないと月にもたどり着けないのだ。
モチベーション
なんだかTransformerのアーキテクチャがいけてる気がする。機械学習は全然専門じゃないけれど、問題の解決方法が工学的というかなんかいけてる気がする。これで遊んでみたい…!というロマン枠。
それまでの課題に対する解法がひねりなく全部ぶっ倒してやるぜ!という感じが熱くないですか?流行り始めたのはそこそこ前だしそろそろライブラリもいくらか出てきてるみたいなので、個人的な頂として設定して登山したいです。
一番盛り上がっているのは自然言語の分野みたいで、時系列解析にも応用が進んでいるようです。現実的な目標なのかさえわかりませんが、自分なりに何か作って動かしてみたいなと夢見ています。
課題
ひとまず学部レベルのカリキュラムを適当にいくつか拾ったところ、機械学習系のコンピュータサイエンスではなくて、データサイエンス系の学部の知識から入って、発展的に機械学習に比重を移していく感じで進めてるのが良さそうに思えました。
数学
機械学習向けの数学。必要に応じて文献にあたるイメージ。あくまで主要なライブラリの内部で深層学習の処理を書く際に、何をやっているのか理解できるレベルを目指す。最悪実装例ググればなんとかなるやろの精神で。
なおいわゆる文系プログラマなので私の数学力はお察しレベルです。
統計
じっくり取り組む。データサイエンスの基礎としてまずは体力をつけることが大事だと思うので、ベースとなる統計の知識習得に時間を割く。ここは数式から逃げず粘る。
実務で利用されているレベルの統計モデルに関してはあくまで発展的な内容という位置づけ。実戦投入出来るか否かにはそこまでこだわらず、古典的モデルから可能な範囲で一歩ずつ進めたい。
pandas
単一の課題として切り出す。botterとしてデータ解析を効率よくこなすためには、pandas習熟の優先度は高いと考える。pandasやmatplotlibのような描画系のライブラリはこれまで私が取り組んできた類のプログラミングのライブラリとはなんとなく毛色が異なっており、別の言語を習得するつもりで継続して手を動かして身につけたい。
機械学習
あくまで発展的な課題。複雑なモデルについては今は無理だなと思ったらどこかで区切るくらいの気持ちで。
時系列分析に利用できる機械学習の知識は一通り見ておきたい。最終的には深層学習のなかのTransformerを利用したモデルをPyTorchあたりのライブラリを使って自分で動かせるようになりたい。
学習計画
優先度順。3と4は様子を見て適宜入れ替えながら同時進行になりそう。
基本的な統計の知識と単純なモデル
pandasを使った時系列分析
やや発展的な統計モデル
時系列分析に適した機械学習モデル
深層学習モデル
終わりに
必要なものだけかいつまんできたので歪な知識しかないため、時系列データ解析用のスキルセットを体系的に育てていきたいです。読んだ本、学んだ内容などについては学習記録としてまたどこかの折に書き残していきたいなと思います。