機械学習が近寄って来た

TwitterのプロフィールにMachine Learningと書いているものの、これまでは趣味の領域というか、本業とは関わりのないものだったんだけど、今年に入って急にMachine Learningの考え方が本業にも登場して来た感じがするので、久しぶりに独学で勉強を始めてみたという話です。

 

これまでやって来たこと

前も書いて来たような気もするけど、最初は自然言語処理に興味を持って、この本をやり始めたのは、このブログの過去記事にも残っているはず。

 

入門 自然言語処理

入門 自然言語処理

 

結局、最後までやりきる前に他のものに興味が移ってしまって記事的には中途半端になってしまったけど、この時学んだ内容のお陰で、 今年の学び直しにでは結構役立ったのも事実。(それと大学院の夏期集中で取ったファイナンスのための統計基礎とかも)

 

機械学習が向こうからやって来た

今年に入って、本業をしている時にもチラチラ機械学習というキーワードが聞こえて来る中、社内でもMLのワークショップ的なものが開催されると聞いて参加してみたら、これまでは業務時間外にコソコソ開くしかなかったJupyter Notebookを堂々と使って機械学習のデモをしていらっしゃる。

 

時代は変わったな。もう内職と呼ばなくていいんだな。という思いとともに、この波に乗れるもんなら乗っておこうというテンションが上がり、秋頃からまた機械学習の予習を始めてみようと手に取ったのがこちらの本。

 

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

 

 

ブログにはしていないものの、一通り手を動かしながら完走済み。scikit-learnというライブラリを使って機械学習の基本を学びましょうねというコンセプトの本。最近のディープラーニングブームを受けてなのか、本の帯に「ニューラルネットを学ぶその前に」と書いてあるのに釣られたというのは、ここだけの話だけど、これをやることで後から触る本の理解度が全然違ったのは事実。Githubに最新のソースがすべて載っているので、本の通りやっても動かんぞ?となったときは、そちらを見ながら微調整すれば何の問題もなし。

 

本の帯に従って(!?)、今度はDeep Learningを学ぼうと言うことで今度はこちらの本に挑戦。これもブログにしていないけど完走済みの1冊。 

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

 

 

自分の場合、数学的な理論はよく分からない文系おじさんとしては、ライブラリを使いこなして、むしろどう使うかということろで勝負した方が良いのかなというところもあったので、進めながらやりたいのと少し違うかなと思っていたのは事実。でもね、後になって英語の本を読んだときに、これってどういうこと?というときに必ずこの本に立ち戻るんだよね。やっぱり、読んでおいて良かった1冊。
 

現在進行中のもの

Deep Learningの基礎の本を読んで、やっぱりライブラリを使うのに注力した方が良いかなと言うことで、TensorFlowの本を試してみることに。この本は現在進行中。 

Learning TensorFlow: A Guide to Building Deep Learning Systems

Learning TensorFlow: A Guide to Building Deep Learning Systems

 

最初Kindle版で読み始めて、結構良いかなと思って結局書籍版も買ってしまったという1冊。やはり算数も英語もイマイチ弱いおじさんとしては、時々意味が分からなくなり、ゼロから作るディープラーニングと行ったり来たりしながら進めてます。でも、丁寧に読むと結構分かりやすく説明してくれている事に気づきました。今は、ちょうどTensorBoardが出てくるあたりを熟読中。 

 

上の本を選ぶときにもう1冊候補になったのが、この本。結局買っちゃったんだけど。 

Hands-On Machine Learning With Scikit-Learn and Tensorflow: Concepts, Tools, and Techniques to Build Intelligent Systems

Hands-On Machine Learning With Scikit-Learn and Tensorflow: Concepts, Tools, and Techniques to Build Intelligent Systems

 

Pythonで始める機械学習でScikit-learnをある程度触っていたのと、amazon.co.jpの書評でボロクソに書いてあるのを見て、 まずはTensorFlow単体で扱っているものを選んだという流れになったわけです。ただ、Learning Tensorflowを半分ほど終わらせて、この次どうしようかなと言うときに、再びこの本が俎上に上がってきました。

 

確かに日本の書評の評価は低いんだけど、アメリカの評価は平均で4.7ぐらいある。そこで日本側のコメントをよくよく読んでみると、Kindleで数式のフォーマットが崩れるだとか、ソースコードすべてが載っていなくてGithub見るのが面倒だとか、6000円は高いだとか、本の内容と関係のないところでツッコミが入っている。そういう人は、手取り足取り至れり尽くせりの日本語の本を買えば良いじゃんという結論となり購入を決断。

 

2018年も機械学習

一応、今挙げた本を一通りこなしたら、何か自分で色々遊んでみようかなという事で、2018年も機械学習のお勉強は続けていこうかなという感じです。

 

この本も気になっている。

統計学が最強の学問である[数学編]――データ分析と機械学習のための新しい教科書

統計学が最強の学問である[数学編]――データ分析と機械学習のための新しい教科書

 

 

PythonユーザのためのJupyter[実践]入門

PythonユーザのためのJupyter[実践]入門