limitVue.js、PHP、Java、Cordova、Monacaを中心にハイブリッドアプリ開発、PWA開発など効率的なWEB、iOS、Androidアプリ開発の情報を共有します。予測モデルの訓練ここからモデルの学習・訓練です。訓練は次のようになります。1:モデルにデータを投入する2:モデルに画像とラベルの関係性を学習させる3:テストデータの画像とラベルが一致することをモデルに確認させるこれらを以下の一文で実行しています。epochs=5)fitの引数には「train_images」、「train_labels」、「epochs=5」があります。「train_images」、「train_labels」は訓練用画像とラベルであり、「epochs=5」とはモデルを訓練するエポック数が5という意味です。エポック数とは訓練データを繰り返し学習させる回数であり、エポック数を増やしたり、減らすことで精度に影響を与えます。エポック数をどのようにすれば精度が高くなるのかを試行錯誤してみると、面白いのでここで実験してみましょう。チュートリアルで実行されている、エポック数が5の時の結果です。0.8918lossというのが損失関数であり、accは精度を表します。損失関数を小さくすることがニューラルネットワークの目的であり、それによって精度が高くなっていきます。上記の例でも試行回数が増えていくにつれて、損失関数が小さくなり、精度が高くなっているのがわかります。この訓練の最終的な精度は89%程度になりました。エポック数を1、500とした時の結果も見てみましょう。epochs=1)結果は以下の通りです。0.8263制度は82%程度となり、エポック数が5の場合に比べて精度は低くなってしまいました。epochs=100)試行回数が増えるのでかなり時間がかかります。チュートリアルの100倍の時間。結果は省略して記載します。0.9948これは精度が99%程度まで上昇しました。損失関数も0.018と、かなり小さくなっています。これだけをみるとエポック数が大きければ大きいほど精度が高くなると言えるかもしれませんが、この精度はあくまで訓練データに対しての値になります。この精度をテストデータでも出すことができるでしょうか?確かめるために、モデルの評価を行いましょう。モデルの評価10000件あるテストデータを使って、訓練されたモデルの評価を行います。test_labels)テストデータを投入して、損失関数と精度を算出できます。各エポック数におけるそれぞれの値は以下の通りです。エポック数5損失関数:0.37083422453403475精度:0.8636エポック数1損失関数:0.4242110157966614精度:0.8493エポック数500損失関数:1.1986104100959207精度:0.8858このようにエポック数が500の場合、損失関数の値が大きくなってしまっています。ディープラーニングでは損失関数の値を小さくすることが求められますので、これでは意味がありません。訓練データに対する精度には大きな差がありましたが、テストデータに関する精度はあまり変わりません。エポック数を大きくすれば良いという訳ではなさそうです。テストデータに関する精度」となっていますが、これは過学習の一種と言えます。本筋からずれてしましましたので戻します。チュートリアルで実施しているように、エポック数を5として進めます。最後に、予測とある画像データに対する予測結果がどのようになるか確認してみましょう。予測ここまでで訓練と評価が終わったので、実際に予測をします。予測結果の取得test_imagesに対する予測結果を配列で返します。model.predict(test_images)前述した通りで、返却値は「画像が各分類クラスである確率」の配列です。ここではテストデータ全てに関する予測を取得しました。次は、テストデータから任意のデータを取り出して、予測させた場合の結果を確認します。単一画像データの予測結果まずはテストデータの1番目を用意します。predictions[0]最後に、配列の中で最も大きな値(最も確率の高い)のラベルを取得します。np.argmax(prediction)print(result)ここでは最終的な結果が「9」と表示され、以下の分類と比較すると、このデータはアングルブーツであると予測されていることがわかります。アンクルブーツ以上になります。次回からは、チュートリアルの回帰問題(住宅価格の予測)について解説していきたいと思います。AIはてなブログをはじめよう!duo-taro100さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。