- 2019.06.06
減衰振動曲線の学習
≪ [前の記事] ニューラルネットワークによる回帰分析 減衰振動曲線の学習 Output_layer_cクラスを少し改造して Output_layer クラスを設計し、他の必要なコードもまとめて以下のリストに載せておきます。 # In[1] # モジュールをインポート import numpy as np import matplotlib.pyplot as plt # 2乗和誤差 […]
Python 数値計算入門 Jupyter NoteBook を活用した Python3 プログラミング学習サイト
≪ [前の記事] ニューラルネットワークによる回帰分析 減衰振動曲線の学習 Output_layer_cクラスを少し改造して Output_layer クラスを設計し、他の必要なコードもまとめて以下のリストに載せておきます。 # In[1] # モジュールをインポート import numpy as np import matplotlib.pyplot as plt # 2乗和誤差 […]
≪ [前の記事] Irisの品種分類 今回からニューラルネットワークを用いた回帰分析を扱います。 回帰分析とは入力値に対して連続的な数値を予測する手法です。 ・身長を入力して体重を予測する」 ・サイトへのアクセス数を入力して広告収入額を予測する などが回帰分析の対象となります。分類問題では正解値 (目標変数) は 0 か 1 の値しかとりませんでしたが、回帰分析における出力 […]
≪ [前の記事] Iris データセット Irisの品種分類 前回記事で作成した Iris のデータセットを使ってニューラルネットワークに 品種分類 を学習させます。今回構築するネットワークのスペックは以下の通りです。 ・入力層のユニット数 : 4 ・中間層 1 のユニット数 : 10 ・中間層 1 の活性化関数 : ReLU ・中間層 2 のユニット数 : 15 ・中間 […]
≪ [前の記事] 確率的勾配降下法 Irisデータセット 機械学習用ライブラリ scikit-learn には練習用データセットがいくつか用意されています。その中の 1 つ、Iris flower data set には、Iris (アヤメ属) に属する 3 品種、setosa (セトサ)、versicolor (バージカラー)、versinica (バージニカ) の特徴量測定値 […]
≪ [前の記事] 学習用データの作成 ニューラルネットワークの構築と稼働 下図のように、入力層、中間層、出力層がそれぞれ 1 層ずつからなるニューラルネットワークを構築します。 中間層の活性化関数は ReLU を採用します。 すでに部品は揃っているので、ネットワークの構築は簡単な作業です。 以下のように記述するだけで、ニューロン 5 個の中間層とニューロン 2 個の出力 […]
≪ [前の記事] Middle_layerクラス 学習用データの作成 ニューラルネットワークを試験運用するための簡単な 学習用データ を作成しておきます。入力データは $xy$ 平面の座標とします。正解値(目標変数)は、放物線 $y=x^2-4$ の上側にある点と下側にある点を、それぞれ 1 と 0 で表した 1 of K 表記のデータです。 # In[7] # ★★★ 座標データを […]
≪ [前の記事] Output_layerクラス Middle_layer クラス 活性化関数クラスの実装 今回設計する 中間層 (Middle_layer クラス) では、メソッドに活性化関数と、その導関数を渡す必要があります。これらの関数を別々に設定して渡すのは煩わしいので、あらかじめクラスの属性値としてまとめておくことにします。たとえば、Sigmoid クラスは属性 y で […]
≪ [前の記事] 重み更新式の意味 Output_layer_cクラス バックプロパゲーション機能 を持つ ニューラルネットワーク の実装を始めます。 今回は 出力層 をインスタンスとして生成する Output_layer_c クラス を設計します (Python におけるクラスの設計の基本についてはこちらの記事を参照してください)。末尾に添えた _c は classify (分類 […]
≪ [前の記事] バックプロパゲーション 重みの更新式の意味 今回は前回記事で得たバックプロパゲーションにおける 重みの更新式 の意味を考えます。 出力層の重み更新式 $d-1$ 層 $i$ 番ニューロンから $d$ 層 $j$ 番ニューロンに入力される信号に掛かる重み $w_{ji}^{(d)}$ は以下の規則で更新されます。 \[w_{ji}^{(d)}(t+1)=w_ […]
≪ [前の記事] 平均誤差の計算 損失関数の勾配 ニューラルネットワークは、ある層の出力値の線形結合を次の層に渡すことを繰り返すので、ネットワークからの出力ベクトル $\boldsymbol{y}$ には、入力ベクトル $\boldsymbol{x}$ と使用されたすべての重み情報が含まれることになります。損失関数 $E$ は出力値 $\boldsymbol{y}$ と正解値 $ […]