到達目標
1. 予測マシンおよび分類器の学習ならびに誤差逆伝播について説明できる。
2. 入力層・隠れ層・出力層を有するニューラルネットワークを実装し、手書き数字の識別ができる。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 最低限の到達レベルの目安(可) |
動作原理 | 重み更新の行列形式を導出できる。 | 重み更新の行列形式を理解し説明できる。 | 重みを更新する手法の概略的な説明ができる。 |
Pythonでの実装 | 自身の手書き数字の識別ができる。 | MNISTデータセットを用いて手書き数字の識別ができる。 | 簡易なニューラルネットワークが実装できる。 |
学科の到達目標項目との関係
教育方法等
概要:
ディープラーニング(深層学習)の基本となるニューラルネットワークについて、分類器とその学習方法を説明でき、Pythonで実装することができる。
授業の進め方・方法:
行列の内積, Pythonの基礎(関数, Numpyを用いた行列演算)については、他の授業および自学自習等により修得していることを前提とする。
【授業時間30時間+自学自習時間60時間】
注意点:
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
単純な予測マシン |
予測マシンの学習の方法を説明できる。
|
2週 |
単純な分類器の学習 |
データを分類するための分類器を使う方法を説明できる。
|
3週 |
ニューロン |
ニューロンの構成とニューロンによるネットワークの説明ができる。
|
4週 |
2つ以上のノードからの重みの学習 |
ニューロンの内部パラメータの調整方法を説明できる。
|
5週 |
多くのノードからの誤差逆伝播 |
多くのノードがあるニューラルネットワークについて、内部パラメータの調整方法を説明できる。
|
6週 |
多くの層への誤差逆伝播 |
出力層から隠れ層へ誤差を伝播させる方法について説明できる。
|
7週 |
中間試験 |
|
8週 |
重み更新 |
ニューラルネットワーク全体の重みを更新するための方程式を説明できる。
|
2ndQ |
9週 |
Python入門 |
ニューラルネットワークを実装するため、クラス等を用いたPythonプログラムを作成できる。
|
10週 |
ニューラルネットワーククラスの定義1 |
ニューラルネットワーク構造を実装できる。
|
11週 |
ニューラルネットワーククラスの定義2 |
誤差逆伝播ができるニューラルネットワークを実装できる。
|
12週 |
ネットワークの学習 |
ニューラルネットワークの学習ができ、その過程を可視化できる。
|
13週 |
手書き数字のデータセット1 |
手書き数字のMNISTデータセットが何か説明できる。
|
14週 |
手書き数字のデータセット2 |
手書き数字の認識を行うニューラルネットワークが実装できる。
|
15週 |
|
|
16週 |
|
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 100 | 0 | 0 | 0 | 0 | 0 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
専門的能力 | 100 | 0 | 0 | 0 | 0 | 0 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |