kerasで自前データで機械学習

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
kerasで自前データで機械学習 [2017/08/02]
adash333 [1.C:/python/ フォルダ下に、dataフォルダ以下を作成]
kerasで自前データで機械学習 [2018/10/07] (現在)
ライン 1: ライン 1:
 ===== (7)Kerasで自前データで機械学習 ===== ===== (7)Kerasで自前データで機械学習 =====
 +
 +<​html>​
 +<iframe width="​560"​ height="​315"​ src="​https://​www.youtube.com/​embed/​SEVd0iervv8"​ frameborder="​0"​ allowfullscreen></​iframe>​
 +</​html>​
  
 http://​twosquirrel.mints.ne.jp/?​p=19448 http://​twosquirrel.mints.ne.jp/?​p=19448
ライン 40: ライン 44:
 ファイル名はなんでもよい。 ファイル名はなんでもよい。
 画質もむちゃくちゃ。 画質もむちゃくちゃ。
- 
- 
- 
  
 ==== 2.Anaconda Promptを起動後、jupyter notebookの起動 ==== ==== 2.Anaconda Promptを起動後、jupyter notebookの起動 ====
ライン 52: ライン 53:
 画面右上の方の、「New」>​「Python3」で新しいタブを開く 画面右上の方の、「New」>​「Python3」で新しいタブを開く
  
 +==== 3.fruit.pyのコードをコピペして、Shift+Enter で実行。 ====
 +以下のコードをコピペして、Shift+Enterで実行。
  
-==== 3.fruit.pyのコードをコピペしてShift+Enter で実行。\\ ==== +https://​gist.github.com/​adash333/​20151dd19e3d3275edbd0b121e036c64 
-サイトの、fruit.py のコードをコピペして、Shift+Enter実行+ 
 +上記コード、下サイトの、fruit.py のコードを全部コピペして、最後に、モデル可視化のコードを加えたもの
  
 Kerasによる、ものすごくシンプルな画像分類(りんごとオレンジ) Kerasによる、ものすごくシンプルな画像分類(りんごとオレンジ)
 http://​qiita.com/​hiroeorz@github/​items/​ecb39ed4042ebdc0a957 http://​qiita.com/​hiroeorz@github/​items/​ecb39ed4042ebdc0a957
  
 +以上で、\\
 +(1)約20枚ずつのりんごとオレンジの画像から学習(train)し、\\
 +(2)その学習したモデルから、別の5枚のりんご画像と5枚のオレンジ画像を、りんごかオレンジかを予測させてみた\\
 +(3)今回は、その10枚の予測の正解率は100%であった\\
 +[[http://​twosquirrel.mints.ne.jp/​wp-content/​uploads/​2017/​07/​image-326.png|結果の図の例]]\\
 +ということになります。
 +
 +(動画の解説はここまで)
 +
 +==== メモ ====
  
-https://​gist.github.com/​adash333/​20151dd19e3d3275edbd0b121e036c64 
  
 さらに、以下を組み合わせたい さらに、以下を組み合わせたい
ライン 97: ライン 110:
     print(result)     print(result)
 </​code>​ </​code>​
 +
 +上記コードを少し変更
 +
 +<​code>​
 +# original code from http://​yujikawa11.hatenablog.com/​entry/​2017/​01/​09/​153436
 +
 +from keras.preprocessing import image
 +import numpy as np
 +import sys
 +
 +filepath = "​./​pikachu.jpg"​
 +image = np.array(Image.open(filepath).resize((25,​ 25)))
 +print(filepath)
 +image = image.transpose(2,​ 0, 1)
 +image = image.reshape(1,​ image.shape[0] * image.shape[1] * image.shape[2]).astype("​float32"​)[0]
 +result = model.predict_classes(np.array([image / 255.]))
 +print("​result:",​ result[0], "​(0:​りんご,​ 1:​オレンジ)"​)
 +</​code>​
 +
 +さらに変更
 +<​code>​
 +テスト
 +</​code>​
 +
 +https://​gist.github.com/​adash333/​15d9b33eef7a00f993bbc32a168f6ca0
 +
  
 ===== 画像をkerasに読み込ませる方法 ===== ===== 画像をkerasに読み込ませる方法 =====
ライン 114: ライン 153:
  
 これを、numpy配列に直して、数字の配列に変換することにより、初めて、kerasが、画像を認識することができるようになる。 これを、numpy配列に直して、数字の配列に変換することにより、初めて、kerasが、画像を認識することができるようになる。
 +
 +具体的には、
 +
 +from keras.preprocessing import image
 +import numpy as np
 +
 +のあと、、、、
 +
 +Numpy配列というものを、ある程度、使えるようにしておく必要がある。
 +数学での行列とは微妙にことなるところがあるので、注意。
 +
 +Numpy
 +reshape
 +transpose
 +http://​www.mathgram.xyz/​entry/​keras/​preprocess/​img
 +
 +
 +
 +===== numpy =====
 +NumPyで画像処理\\
 +http://​www.mwsoft.jp/​programming/​computer_vision_with_python/​1_3_numpy.html
 +
 +http://​qiita.com/​supersaiakujin/​items/​c580f2aae90818150b35\\
 +[Python]Numpyデータの並べ替え
 +
 +
 +https://​deepage.net/​features/​numpy-transpose.html\\
 +2017-06-23
 +配列の軸の順番を入れ替えるNumPyのtranspose関数の使い方
 +
 +
 +
 +Python – NumPyで画像を配列として取得する
 +投稿者: edo1z 投稿日: 09/​27/​2015\\
 +https://​endoyuta.com/​2015/​09/​27/​python-numpyで画像を配列として取得する/​
 +
 +
 +numpyのテンソル(配列)関係\\
 +http://​oppython.hatenablog.com/​entry/​2014/​01/​05/​004454
 +
 +numpyの多次元配列の「軸を入れ換える」ということについての学習
 +ラベル: Python
 +2015年10月03日20時00分公開
 +2016年11月30日08時27分更新\\
 +https://​p--q.blogspot.jp/​2015/​10/​numpy.html?​m=1\\
 +この解説が具体的で分かりやすい!しかし、これでと、軸とかいまいちよくわからない、
 +
 +
 +http://​discexuno.wp.xdomain.jp/​2016/​10/​21/​pythonnumpytransposeを用いた3次元のデータの転置/​\\
 +PYTHON
 +[Python+Numpy]transposeを用いた3次元のデータの転置
 +2016年10月21日 ばいろん
 +
 +
 +http://​python-remrin.hatenadiary.jp/​entry/​2017/​05/​10/​183809\\
 +2017-05-10
 +NumPyの使い方(4) 形状変換と転置
 +
 +
 +http://​sleeping-micchi.hatenablog.com/​entry/​2014/​04/​18/​003935\\
 +
 +多次元行列の転置
 +多次元行列の軸の入れ替え
 +多次元行列の軸の入れ換えとは、該当する要素の軸を入れ替えた新しい行列を作成すること
 +
 +2次元行列の場合
 +2x3行列の場合
 +元の行列のa13を、新しい行列のb31に設定。
 +元の行列の全ての要素について同様の操作を行う
 +すると、新しい行列のBは、3x2行列として出来上がる。
 +(絵の説明を入れたい)
 +
 +3次元行列の場合
 +3x2x4行列の場合
 +
 +http://​qiita.com/​secang0/​items/​1229212a37d8c9922901\\
 +行列による画像処理 基礎編&目次 ~Python画像処理の再発明家~
 +secang0
 +2017年04月05日に更新
 +
 +作成中
 +
  
  
ライン 124: ライン 245:
 https://​librabuch.jp/​blog/​2013/​05/​python_pillow_pil/​\\ https://​librabuch.jp/​blog/​2013/​05/​python_pillow_pil/​\\
 Python 3.5 対応画像処理ライブラリ Pillow (PIL) の使い方 Python 3.5 対応画像処理ライブラリ Pillow (PIL) の使い方
 +
 +http://​aokiji.science/​blog/?​p=219\\
 +Pythonで画像処理
 +2015-04-17 画像の切り出しなど
  
 today 2013-05-06 Mon person Takahiro Ikeuchi today 2013-05-06 Mon person Takahiro Ikeuchi

kerasで自前データで機械学習.1501681519.txt.gz · 最終更新: 2018/10/07 (外部編集)