国境大好き芸人

旅行と語学ととプログラミング。陸路で国境を越えるのが生きがいです。

機械学習やるためにPython始めました【プログラミング】

業務効率化のために手を出したプログラミングですが機械学習楽しいですね



こんばんは!ktymです。
仕事で大量の数十万行のCSVファイルを扱うことがあって、ExcelAccessで処理しきれない!どうしよう!という課題解決のために始めたプログラミングですが、
1ヶ月ぐらい前から機械学習の勉強を始めています。

Excel作業をRで効率化した話は以下:
R言語を勉強したらExcelでの集計作業がめちゃくちゃ速くなった

で、機械学習関連の本を読みはじめて、最初はRでやろうと思ったのですが、
とある勉強会で講師をしていた方に、

機械学習やるならRよりもPythonの方が断然いい!」

と勧められたので、Pythonを始めました。
たしかに、機械学習の本をみてもPythonで書かれている場合が多いですね(特に最近の本は)。
時系列分析とか統計の本はRの方が多いような気もしますが、まあなんなら両方できればいいし、とりあえずPythonで(機械学習含め)いろいろやってみようと思って、勉強を始めました。

最初に読んだのは「退屈なことはPythonにやらせよう」だったのですが、読みにくかったです・・・



まあ、こんなことできるんだ~!とパラパラめくるにはいいと思いますが、
私の(個人的な)ニーズとしては、

・まずはExcelの業務をPythonでできるようにする
機械学習の勉強をする

ことだったので、pandasとかNumPyの書き方から入ったほうがよかったかもしれないですね。
pandasはひたすらググって使い方を勉強しました。
R言語のdplyrと同じ要領ですね。Rの方を先に勉強していたのですぐに飲み込めました。

【R言語】dplyrを使えばExcelの集計作業を代替できてしかも速い!

あと、かなり前にこんな本も読みました。「いちばんやさしいPythonの教本」



この本は本当にやさしいのでプログラミング初心者におすすめですね。
なんだか散らかってしまいましたが・・・

結局RとPythonを行ったり来たりしています。

機械学習と時系列分析を勉強しています



で、ここからが本題?なのですが、RとかPython使って業務効率化ができたので、
機械学習とか統計とかを使ってもっと良い分析ができるようになりたい!というモチベーションのもと、色々とやってみています。

機械学習は、元々はクラスタリングに興味があって始めました。
仕事で扱う商材とか、顧客の分類とかができたらなあと思ったんですよね。

そこで始めたのが、「Rによる機械学習」です。



機械学習の全体感を把握するのには良い気がしています。
例題をRに書いていくと理解が深まりますね。
自分で例を見つけてきて分析するとさらに理解が増しそうです。

これで全体を俯瞰しつつ、「ゼロから作るDeep Learning」を読み始めました。
数学的に難しいところもあるのですが(誤差逆伝播法とか)、厳密さよりも速さ重視で読んでいこうかと思います。
もちろん数学的な厳密さを重視したいところではあるのですが・・・
目的は数学をやることではなく、仕事の課題を解決することなので、速さ重視です。

あと、何回も読んでいるうちに(コードを書いているうちに)、数学的な意味がわかってくるということもあると思うので(数学書を写経するうちにだんだんわかってくる的な)、
そういう意味でも速読・速習で、まずは本の全体を俯瞰しようと思っています。



2月中には読み終わりたいな~

また、仕事では時系列データを扱うことも多いので(ほぼすべてのマーケターがそうでしょうが)、
「現場ですぐ使える時系列データ分析」という本を読みました。



自己回帰モデルについて平易に書かれています。
いや~これはすごいわかりやすかった!ある程度確率の知識はあったほうがいいとは思いますが、
数学的なバックグラウンドがなくても、読みやすいんじゃないかなと思います。

「現場ですぐ使える時系列データ分析」は一通り読めたので、次読むなら「Rによる時系列分析入門」ですかね。



そんな感じで、機械学習やら、時系列分析やら、ゆるゆる勉強していますが、
そろそろ本腰入れてガッツリ勉強して、勉強会とかにも積極的に出ていこうかなと思ってます!

あ、よかったらTwitterフォローしてください!
https://twitter.com/ktym_stdf