
- 作者: Aurélien Géron
- 出版社/メーカー: O'Reilly Media
- 発売日: 2019/10/15
- メディア: ペーパーバック
- この商品を含むブログを見る
機械学習の教科書的テキストとして評判のHands-On MLの第2版(英語版)が出たので早速買って読んでみました。 構成としては基本的に第一版と同じようですが、TensorFlowなどのライブラリバージョンアップに伴って内容がアップデートされているようです。 日本でも第一版は翻訳されていますが、翻訳がまずいのかイマイチ評判はよくないようです。
実は第一版はかなり前に読んだのですが、あまり理解できないところが多かったので第2版に改訂されたのを期にもう一度再読してみようと思います。
読んだ内容は何回かに分けてまとめていきたいと思います。
まず、本の内容は全体的にこのような構成になっています。
機械学習の基本知識
- Kerasによるニューラルネット入門
- ディープニューラルネット学習
- TensorFlowによるモデル生成と学習
- TensorFlowによるデータ読み込みと前処理
- 畳み込みニューラルネットによるコンピュータビジョン
- RNNとCNNによるシーケンスデータ処理
- RNNとAttentionによる自然言語処理
- オートエンコーダとGANによるデータ生成学習
- 強化学習
- TensorFlowモデルの展開とスケールアップ
全体的に前半が非ニューラルネットアルゴリズムについてに書かれていて、後半はニューラルネット/ディープラーニングという構成になっています。
ちょっと読んだ感じでは、今回の改訂で変更、追記されたのは主に後半部分ではないかと思います。
サンプルプログラムはこちらのURLからダウンロードできます。
Jupyter Notebook形式になってますので、実行結果を確認しながらコードを読むことができます。
ハンズオンと本のタイトルにもあるように、実際にコードを動かすことを基本とする内容なので、ぜひとも自分のPCに実行環境を作って動かしながら読み進めてください。
では、まず初回ですので実行環境を作る説明をします。
私の実行環境はMacですが、他のプラットフォームでもそんなに違わないと思います。
まず、Pythonをインストールする必要がありますが、おすすめはAnacondaというパッケージシステムを使うことです。
AnacondaはPythonだけでなく、いろんなライブラリを簡単にインストールできるディストリビューションです。
機械学習関連のライブラリが充実していて、アップデートもコマンドで簡単にできます。
上のURLからPython3のバージョン(2019年11月現在Pythonのバージョンは3.7)のインストールイメージをダウンロードしてください。
ダウンロードファイルは、インストールプログラムになっているので実行してインストールします。
ターミナルを開いて、Pythonがインストールされていることを確認します。
% python -V Python 3.7.3
前にダウンロードしたサンプルファイル(handson-ml2/)内にrequirements.txtというファイルがあります。
これは、サンプルコードを動かすために必要なPythonライブラリの情報が書かれています。
requirements.txt
... ##### Core scientific packages jupyter==1.0.0 matplotlib==3.1.1 numpy==1.17.2 pandas==0.25.1 scipy==1.3.1 ....
以下のコマンドでrequirements.txtに書いてあるライブラリを一気にインストールできます。
% conda install --yes --file requirements.txt
ただ、requirements.txtはpipというコマンドの形式なのでcondaでインストールするとパッケージが見つからないと言われることがあります。
その時はpipコマンドで個別にインストールします。
% pip install [ライブラリ名]
サンプルコードはJupyterノートブックという形式になっています。
これはブラウザ上でPythonを動かせる環境で、実行結果がブラウザ上に表示されるので試すのにとてもいいです。
handson-ml2ディレクトリ内でJupyter Notebookを起動します。
% jupyter notebook
ブラウザでhttp://localhost:8888にアクセスすると以下のページが表示されます。
次回からいよいよ内容について書いていきたいと思います。