⑥機械学習の自己学習

初の独学書「PythonとKerasによるDeepLaening」を読みかかり、同時にGithubのサンプルを漁る。
https://github.com/fchollet/deep-learning-with-python-notebooks

ディープラーニングの解説で幾度と無く登場する、MNISTのデータセット↓
http://yann.lecun.com/exdb/mnist/

・training set
・test set の二系統を準備するのがお決まりのパターン。本では、訓練セット、検証セット。
訓練セットから、最初の分類アルゴリズムのモデルを生成し損失関数(※1)を最小化するべく、学習(訓練)(※2)で少しずつデータを調整する。
そういえば、昔々自分が20代のエンジニア始まりの頃、フィードバック制御というモデルで出力結果を返して、
モデルを修正するという制御系仕事にどっぷり浸かった。この時の「モデル式修正」が、今で言うAIの「学習」相当なのだ。
※1  損失関数 ←30年前は、評価関数や目的関数とか言ってた。
※2  学習(訓練)←昔はパラメータ同定化とか言った。

「PythonとKerasによるDeepLaening」でも
訓練セット、検証セットそれぞれ決まって、
 ラベル
 イメージ の対で出てくる。

ラベルなら、こんなデータとの事。

offsettypevaluedescription
0000 32 bit integer 0x00000801(2049) 識別子(定数)
0004 32 bit integer 60000 or 10000 ラベルデータの数
0008 unsigned byte 0 ~ 9 1つ目のデータのラベル
0009 unsigned byte 0 ~ 9 2つ目のデータのラベル
.... .... .... ....
xxxx unsigned byte 0 ~ 9 最後のデータのラベル

ついつい中身を確認したくなるので、バイナリーエディタ(Stirling)で覗いてみた。↓

MNISTデータの中身.png


Tensorflow から MNISTを操作するなら ↓  

https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/tutorials/mnist

「PythonとKerasによるDeepLaening」なら↓
https://nbviewer.jupyter.org/github/fchollet/deep-learning-with-python-notebooks/blob/master/2.1-a-first-look-at-a-neural-network.ipynb

これらMNISTの取り込みが実装としての始まり
-------------------------------------------------------------------------------------------------------------------------------

from keras.datasets import mnist

(train_images, train_labels), (test_images, test_labels) = mnist.load_data()
-------------------------------------------------------------------------------------------------------------------------------

keras から mnist をimportし、.load_data() で、四つを取り込み。

Python独特の文法、
複数同時の代入 (multiple assignment)
a, b = 0, 1

でいきなり始まる。

トラックバック(0)

トラックバックURL: http://erikay.cho88.com/cms/mt-tb.cgi/53

コメントする

このアーカイブについて

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。