日本橋濱町Weblog(日々酔亭)

Quality Economic Analyses Produces Winning Markets

Pythonの習得の再開と現状・・・どこまで進んだか?・・・Hallo world! Hallo Python!

AIを使うばかりでなく、自分で作って利用する時代になった。10年前にここまでになるなんてこと、考えてもいなかった。RPA(ロボティック・プロセス・オートメーション)といって業務の自動化も可能になった。そうなってくると自分でも何かしたくなろうというもの。

 

 

だいぶ前に機械学習によく使われるPythonを始めたという記事を書いたが、こえがそれ以来止まっていた。今回それを再スタートするということ。

mnoguti.hatenablog.com

さて、再スタートにあたって、何をするか・・・昔、ほぼ30年前にC言語に手を出した経験があるし、3年前ぐらいにPythonの勉強を考えたが、まあ、忘れているので、ほぼゼロからのスタート。どうせならということで、機械学習等を使ってPythonで時系列予測を勉強することに。ちょうど、仕事でそういう知識が必要になったというところもある。

Sutra is the key to mastering programming!

プログラミングのマスターには写経が大切!

経済関係でよくあるのは、時系列データでの予測になるので、手近なところでFacebookが提供しているライブラリーProphetを使い実行するというのがある。仕事ではこちらを使って予測しているが、Pythonのプログラミンを時系列データを扱えるようになるための勉強したいというところなので、ProphetはProphetでマスターするが、自分でコーディングしてみたいと勉強のターゲットが最近やっと明確になったというところ。

現状は、まだ初歩の初歩で、上記の教科書を地道に読み、写経の毎日だ。現在、Part2の「基礎:Pythonの基本構文を学ぶ」に入ったところ。Chapter 3の「値と変数」に入ったところだ。毎日、5ページ進むことをノルマにしているが、それも実行できないことがあるが、挫けることなく、少しでもいいから進めていこうともがいている。

 

 

これが自宅でのPython勉強の状況だが、仕事の方はそうはいかない。言ってみればパラシュート勉強法で、ライブラリーProphetを見よう見まねでいきなりコーディングして、データを読み込ませ動かしている。

最近はこういう教科書がでているし、ネットでググるといろいろと解説してくれているので、Prophetを動かすこと自体は誰でもできるようになるだろう*1。予測値を出せるようになるのと、その仕組みを理解するのはまた別の問題。予測値が出せるようになると、その仕組みを知りたくなるというもの。そしてその裏側を知ることは、機械学習などAIが出した予測結果を評価するための一つの課題になっているところだ*2。そういうことに少しでも近づくという思いもあり、自分用の時系列ライブラリーができればいいという大いなる野望を持ちながら、コーディングを勉強している。

 

 

そんな中、Pythonで自分が何をしようとしてしていて、そのためにはPythonのどの部分を重点的に理解すればいいのかが徐々に分かってきたのが最近。具体的に何かというと・・・自分はPythonで時系列予測のプログラミングが自分仕様で書けるようになりたいので、いくつかのライブラリーとその中での関数を自在に使えるようになることが必要だ。

  • pandas:データ解析用のライブラリ、データを読み込み、分析加工する
  • Numpy:数値計算をするときに利用する外部ライブラリ
  • scikit-learn(sklearn):機械学習用のライブラリ
  • matplotlib:グラフを作成するときに使うライブラリ
  • datetime:日時を扱うときに使うライブラリ
  • calendar:カレンダーに関するライブラリ

最低、これらのライブラリを使いこなす必要がある。この中でも、pandas、Numpy、datetimeについては、時系列データを加工分析する際には必ず必要になるので、習熟しておきたいところ。pandas、Numpyについては以下の書籍。

時系列データは、必要に応じて、時間の単位を変えたり、期間を数えたり、いろいろ時間情報を扱うことになるので、datetime、calendarライブラリの中の関数などに習熟している必要がある。


www.youtube.com

手っ取り早く理解するには、YouTubeの動画を見るのがいい。自分が見ているのは、この動画だが、これは説明が簡潔なのと1本1本が短いので集中してみられるのがいい。


www.youtube.com

他にもいろいろな動画がある。こちらのキノコードさんの動画もおすすめだ。


www.youtube.com

キノコードさんの動画にはこういうのもある。


www.youtube.com

こういうのでさっさと時系列データの扱いや分析のコーディングを覚えて、さらにその先に進むのがいい。

 

 

さて、ここまでは進み方が各駅停車以下だったが、今後、速度を上げていけるであろうか。コツコツ進めていければと思う。

ブログランキング・にほんブログ村へ

*1:英語の書籍でも最近は優秀な自動翻訳サービスがネットで簡単に利用できるので、躊躇することはない。例えば、DeepLを自分は使っている。

www.deepl.com

*2:

hacarus.github.io