DeepLearning

1/2ページ

備忘録_ニューラルネットワークの学習

ニューラルネットワークの学習の手順(確率的勾配法(SGD)) 確率的とは、「確率的に無造作に選び出した」という意味である。 ステップ1 ミニバッチ 訓練データの中からランダムに一部のデータを選び出す。その選ばれたデータをミニバッチと言い、ここでは、そのミニバッチの損失関数の値を減らすことを目的とする。 ステップ2 勾配の算出 ミニバッチの損失関数を減らすために、各重みパラメータの勾配を求める。勾配 […]

備忘録_勾配

すべての変数の偏微分をベクトルとして纏めたものを勾配という。 Pythonで実装すると・・・ np.zeros_like(x) xと同じ形状の配列で、その要素が全て0の配列 今回の例で使用する関数     Pythonで実装した場合 (3, 4)、(0, 2)、(3, 0)での勾配 ※実際は[6.00000000000378, 7.999999999999119]という値が得ら […]

備忘録_数値微分

微分 微分とはある瞬間の変化の量を表したものである 数式で表すと・・・     のについてのに対する(微分)を表す記号 「小さな変化」であるhを限りなく0に近づけるという意味 導関数と微分|数学|苦手解決Q&A|進研ゼミ高校講座|ベネッセコーポレーションにわかりやすく書いてあります。 そのままPythonで実装すると・・・ x 関数fへの引数 h できる限り小さな値 1 […]

備忘録_データから学習する

「学習」とは訓練データから最適な重みパラメータの値を自動で獲得することである。損失関数を基準として、その値が最も小さくなる重みパラメータを探し出すということが学習の目的である。 ニューラルネットワークの特徴はデータから学習できる点にある。データから学習するとは、重みパラメータの値をデータから自動で決定できるということである。 データ駆動 データから答えを探し、データからパターンを見つけ、データから […]

備忘録_手書き数字認識

MNIST 手書き数字の画像セット 機械学習の分野で最も有名なデータセット 0から9までの数字画像から構成 訓練画像 60,000枚 テスト画像 10,000枚 訓練画像を使って学習を行い、学習したモデルでテスト画像に対してどれだけ正しく分類できるかを計測する 28×28のグレースケール画像(1チャンネル) 各ピクセルは0から255までの値を取る それぞれの画像データに対して対応するラベルが与えら […]

備忘録_出力層の設計

ニューラルネットワークは、分類問題と回帰問題の両方に用いることができる。ただし、分類問題と回帰問題のどちらに用いるかで、出力層の活性化関数を変更する必要がある。一般的に、回帰問題では恒等関数を分類問題ではソフトマックス関数を使う。 分類問題 データがどのクラスに属するかという問題。 例としては人の写った画像から男性か女性かを分類する問題。 回帰問題 ある入力データから、(連続的な)数値の予測を行う […]

備忘録_3層のニューラルネットワーク

各層における信号伝達の実装 入力層から第1層目への信号の伝達 ①はバイアスニューロンである。 上記の記号の意味は下記のとおりである。 を数式で表現     行列の積を用いて表現     、、、は下記のとおり     Numpyの多次元配列を使用して行列の積を計算 ※ここでは、入力信号、重み、バイアスは適当な値に設定している 第1層目の活性 […]

備忘録_活性化関数

ステップ関数(階段関数) 入力が0をこえたら1を出力し、それ以外は0を出力する関数である。     ステップ関数をグラフで表すと。。。 ステップ関数をグラフで表すプログラム np.arange(-5.0,5.0,0.1)は-5.0から5.0までの範囲を0.1刻みでNumPy配列の生成をする。 シグモイド関数     exp(-x)はを意味する。eはネイピア数 […]

備忘録_ニューラルネットワークの仕組み

ニューラルネットワークの繋がり方 ニューラルネットワークを図で表すと、下記のようになる。 一番左の列を入力層、一番右の列を出力層、中間の列を中間層と呼ぶ。中間層は隠れ層と呼ぶこともある。 ニューロンの繋がり方に関して言えば、パーセプトロンとなんら変わりはない。 活性化関数とは 入力信号の総和を出力信号に変換する関数は一般に活性化関数と呼ぶ。活性化関数は入力信号の総和がどのように活性化するか(どのよ […]

備忘録_多層パーセプトロン

XORゲート 排他的論理和とも呼ばれる論理回路。x1とx2のどちらかが1のときだけ出力が1になります。単層なパーセプトロンでは表現できなく、層を重ねることで表現ができる。 x1,x2をNANDゲートとORゲートへの入力とし、NANDゲートとORゲートの出力をANDゲートの入力にすると表現できる。 まず、x1,x2をNANDゲートへ入力とすると、s1の出力になる。 次に、x1,x2をORゲートへ入力 […]