スポンサーリンク

Python機械学習プログラミングを読んでみる(第1章)

TensorFlowをやりたくて、機械学習とPythonを勉強し始めているが、なるほどさっぱりわからん。

監訳者が、この本の読み方について記載してくださっている。

ブック・インサイド―『Python機械学習プログラミング』学び方ガイド
2016年6月30日(木)
https://thinkit.co.jp/article/9926

(環境)
Windows8.1

 

●第1章 「データから学習する能力」をコンピュータに与える

 

スポンサーリンク

機械学習には、3種類ある。

(1)教師あり学習 supervised learning
     (1-1)分類 classification -> 例)メールスパムフィルタ
     (1-2)回帰 regression -> 例)「勉強時間」から、「テストの点数」を予測(回帰分析など、これは見たことあるぞ。)

(2)強化学習 reinforcement learning -> 例)チェスエンジン(報酬は、「勝ち」「負け」)

(3)教師なし学習 unsupervised learning -> 例)マーケティング(ラベル付けされていないデータや構造が不明なデータを集めて、意味のあるグループ(クラスタ)としt構造化するデータ解析の手法:クラスタリング clustering)(グループの所属関係が事前にわかっている必要はない。)

 教師なし学習には、次元削減 dimensionality redutcion (dimension reduction)というサブフィールドがある。大量のデータを解析するためにはコンピュータ資源が限られており、また4次元以上のデータを可視化することを目的に、「教師なし次元削減」によって、データがからのノイズを取り除き、データをより低い次元の部分空間に圧縮する。 -> 例)3次元の「ロールケーキ」を、新しい2次元の部分空間に圧縮(新しい部分空間では、ロールケーキの真ん中と端を、線形分離できる(?))

 

「Python機械学習プログラミング」で用いるIrisデータセット

Irisデータセットには、150枚のアヤメの花の計測データが収録されている。

あやめのデータセットは、3種類のあやめの品種のそれぞれからの150の花の、センチメートル単位の蕚(がく)片の長さと幅、花弁の長さと幅の計測結果を与える。 品種は Iris setosa, versicolor, virginica である。

以下からダウンロードできるらしい。(2016/8/21時点)
https://dl.dropboxusercontent.com/u/432512/20120210/data/iris.txt

(参考)2012-02-14 統計を学びたい人へ贈る、統計解析に使えるデータセットまとめ
http://d.hatena.ne.jp/hoxo_m/20120214/p1

Edgar Anderson のあやめのデータ
http://www.is.titech.ac.jp/~mase/mase/html.jp/temp/iris.jp.html

こんな感じで150個のサンプルと、それぞれにおける4つの特徴量(Sepal.Length, Sepal.Width, Petal.Length, Petal.Width)と、Class label(Species)が記載されている。

コンピュータで計算するためには、行列で記載するのがよいらしく、150個のサンプル、4つの特徴量の600個の数字を、150行 x 4列の行列で記述するらしい。

 

機械学習システムを構築するためのロードマップ

本当のロードマップは、

https://thinkit.co.jp/sites/default/files/article_node/PML_structure_v2.png

をご覧ください。

(1)前処理
(2)学習
(3)評価
(4)予測

教師あり学習 の場合、

(1)前処理
「生のデータ」「ラベル」を、入力できる形にしてから、「トレーニングデータセット」と、「テストデータセット」に分ける。

(2)学習
「トレーニングデータセット」を用いて、「学習アルゴリズム」に学習させ、「予測モデルのトレーニングと選択」を行う。

「モデル選択」「交差検証」「性能指標」「ハイパーパラメータ最適化」

(3)評価
「テストデータセット」を用いて、モデルの評価を行う。あまりに正解率が悪い場合は、再度、(2)のステップを繰り返す(?)

(4)予測
本番。新しいデータを「最終モデル」に入力して、結果(「ラベル」)を出させる。

 

Pythonのインストール

(環境)
Windows8.1

https://www.continuum.io/downloads

から、 python3.5 , anaconda 64 bit をダウンロードしてインストールした。

インストールには、かなり時間がかかった。30分から1時間くらい?

cmd.exe で、python と入力すると、以下のように表示された。
Python 3.5.2
Anaconda 4.1.1 (64-bit)