演習 2-1 (個人): TensorFlow を使って 3 層ニューラルネットワークを作ってみましょう。
ニューラルネットワークの仕様は以下の通りです。
(1) 入力層が N = 3 個、隠れ層が K = 5 個、出力層が M = 2 個のパーセプトロンで出来ている
(2) 入力信号 data (1 x N 行列の定数テンソル)には適当な値をセットする
(3) 隠れ層の重み(N x K 行列の(変数テンソル)とバイアス(1 x K 行列 (変数テンソル)は平均 0、標準偏差 0.1 の正規乱数で初期化する
(4) 出力層の重み(K x M 行列の(変数テンソル)とバイアス(1 x M 行列 (変数テンソル)も平均 0、標準偏差 0.1 の正規乱数で初期化する
Jupyter Notebook で「DL_2_1」というノートブックを作ります
テンプレートスクリプトをノートブックにコピーして下さい。
テキストを参考にしながらスクリプトファイル内の ? の部分を穴埋めして下さい。
実行して下さい。
指定場所に「ソース」と「実行結果」を貼り付けて下さい。
演習 2-2 (個人): 画像の分類問題に対してディープラーニングを実行してみましょう。
ニューラルネットワークとディープラーニングの仕様は以下の通りです。
(1) 入力層が N = 9 個、隠れ層が K = 5 個、出力層が M = 2 個のパーセプトロンで出来ている
(2) 学習率は r = 0.01、エポック数は E = 100、訓練データセットのサイズは L = 4、バッチサイズは B = 2 とする
(3) 学習用入力信号 data_training は以下の 3x3, 1 bit画像データ 4 つから作成する(黒が 0 、白が 1)
画像 0 :
画像 1 :
画像 2 :
画像 3 :
(3) 画像 0 と 1 はクラス 0、画像 2 と 3 はクラス 1 に属する
(4) 重みとバイアスは平均 0、標準偏差 0.1 の正規乱数で初期化する
(5) 検証データセットとテストデータセットは使用しない
(6) 学習後に以下の未知画像を分類する
未知画像:
Jupyter Notebook で「DL_2_2」というノートブックを作ります
テンプレートスクリプトをノートブックにコピーして下さい。
DL_2_1 とテキストを参考にしながらスクリプトファイル内の ? の部分を穴埋めして下さい。
実行して下さい。
指定場所に「ソース」と「未知画像の予測確率」を貼り付け、「未知画像はクラス0と1どちらに属する可能性が高いか」書いて下さい。