質問:どのようにデジタル識別「5」?O(∩_∩)O〜
例えば「5」の手書きの数字:書かれたが、様々な変化します
プログラム:画像から特徴量が抽出される -----学習技術によってモデルの特徴量を学習
使用ニューラルネットワークを学習指標と呼ばれる損失関数。
損失関数は、多くの機能として使用することができる、最も有名なのはある平均二乗誤差(平均二乗誤差)。
二乗誤差式を意味:
Y K -----------ニューラルネットワークの出力
T K -----------管理データ、ワンホット表現
ここでは、ニューラルネットワークの出力yは出力ソフトマックス関数です。ソフトマックス出力機能として解釈することができる確率。
Pythonはによって達成平均二乗誤差:
デフ mean_squared_error(YT ):
返す 0.5 * np.sumを((YT)** 2)
平均二乗誤差に加えて、クロスエントロピー誤差(クロスエントロピー誤差)もしばしば損失関数として使用されます。
表現のクロスエントロピー誤差:
「2」は、出力が0.1に相当する場合には、クロスエントロピー誤差は、例えば、対応するニューラルネットワークの出力は0.6であると、その後、クロスエントロピー誤差が-log 0.6 = 0.51、インデックスのタブの正解が「2」であると仮定-log 0.1 = 2.30。すなわち、クロスエントロピー誤差の値がある正解ラベル出力対応する決定。
図自然対数に示す画像。
1 インポートPLT AS matplotlib.pyplot 2 インポートNP AS numpyの 。3 。4 位データを生成した 。5 X = np.arange(0.01,1.01,0.01 ) 。6 Y = np.log(X) 。7 。8 #描画画像 。9 plt.plot(X 、Y) 10 plt.xlabel(' X ' ) 。11 plt.ylabel(' Y ' ) 12である(plt.show)
クロスエントロピーエラーコードについて:
デフcross_entropy_error(Y、T): デルタ = 1E-7 戻り -np.sumさ(t *のnp.log(Y +デルタ))