機械学習

今日から始めるDeepLearning! 【MLC 第7回目 】

こんにちは、チズチズです~

ディープラーニング… 色んな所で使われています。

今日は、ディープラーニングの中身を見ていきましょう。

ディープラーニングの用途

主に…

画像認識

ほぼ画像認識で使われます。

人の顔を認識したり、リンゴの画像、、、

道路で車と人の認識も…

やってみよう

習うより慣れろです。

まず、手を動かしてみましょう。

Keras公式ドキュメント

本家様のコード

ディープラーニングで使うのは主に

  • Tnsorflow
  • Keras
  • Pytorch

の3つです。

まずは、使いやすいKerasからやってみましょう。

今日行うのは、0から9までの数字が書かれたデータを学習させて書いた文字が何の数字か予測させるアレです。

こんなデータが7万個あります。

初期設定

これらはコピペで大丈夫です。

これから実装するときにこのライブラリが使われるので、そのとき理解できれば十分です。

バッチサイズはいくつのまとまりで学習させるかという大きさというか数です。

小さくすればするほど時間はかかりますが、精度は上がります。

大きくすれば反対に時間は少ないですが、精度は悪いです。

num_classesはデータの種類です。今回は0~9なので10個です

epochsは何回データを学習させるかです。バッチサイズはあるデータの分割を決めますが、エポック数はあるデータの学習を何回行うかです。

これも精度と時間は上と同じです。

データ調整

これらのコードはコンピュータが認識しやすいようにデータを調節させています。

1行目は前もやったようなテストデータとトレーニングデータの分割です。

それから下は配列を2次元に変えて、

その下は小数にします。

その下、データを255で割ってます。なぜでしょう?

正規化させるんです。

通常画像データは255ピクセルで256までの数字が入っています。

コンピュータは0~1の数字の方が認識しやすいので0~1に収まるように255で割ります。これを正規化といいます。

よく使われるので覚えておきましょう!

6万のトレーニングデータに1万のテストデータです。

ディープラーニングはこれくらいのデータやそれ以上のデータを扱います。(頭がクラクラ

One Hot Vector

どっかで見たやつです。

カテゴリごとに1か0にします。

モデル

この辺は結構理解が難しいです。(俺もまだまだ…

ってことで今度詳しく説明します。

活性化関数ってものです。

これ使いこなせたらもう最強

こんな風に学習が進みます。

個人的にこの画面格好いいと思ってる。

特に黒い背景のとき。

結果発表!!

デンデンデンデンデン

98%!!!でした。

結構高いですね。

応用すれば自分の書いた数字も判定できます。

結構簡単でしょ?

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です