Course Objectives
1. 予測マシンおよび分類器の学習ならびに誤差逆伝播について説明できる。
2. 入力層・隠れ層・出力層を有するニューラルネットワークを実装し、手書き数字の識別ができる。
Rubric
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 最低限の到達レベルの目安(可) |
動作原理 | 重み更新の行列形式を導出できる。 | 重み更新の行列形式を理解し説明できる。 | 重みを更新する手法の概略的な説明ができる。 |
Pythonでの実装 | 自身の手書き数字の識別ができる。 | MNISTデータセットを用いて手書き数字の識別ができる。 | 簡易なニューラルネットワークが実装できる。 |
Assigned Department Objectives
Teaching Method
Outline:
ディープラーニング(深層学習)の基本となるニューラルネットワークについて、分類器とその学習方法を説明でき、Pythonで実装することができる。
Style:
行列の内積, Pythonの基礎(関数, Numpyを用いた行列演算)については、他の授業および自学自習等により修得していることを前提とする。
【授業時間30時間+自学自習時間60時間】
Notice:
Course Plan
|
|
|
Theme |
Goals |
1st Semester |
1st Quarter |
1st |
単純な予測マシン |
予測マシンの学習の方法を説明できる。
|
2nd |
単純な分類器の学習 |
データを分類するための分類器を使う方法を説明できる。
|
3rd |
ニューロン |
ニューロンの構成とニューロンによるネットワークの説明ができる。
|
4th |
2つ以上のノードからの重みの学習 |
ニューロンの内部パラメータの調整方法を説明できる。
|
5th |
多くのノードからの誤差逆伝播 |
多くのノードがあるニューラルネットワークについて、内部パラメータの調整方法を説明できる。
|
6th |
多くの層への誤差逆伝播 |
出力層から隠れ層へ誤差を伝播させる方法について説明できる。
|
7th |
中間試験 |
|
8th |
重み更新 |
ニューラルネットワーク全体の重みを更新するための方程式を説明できる。
|
2nd Quarter |
9th |
Python入門 |
ニューラルネットワークを実装するため、クラス等を用いたPythonプログラムを作成できる。
|
10th |
ニューラルネットワーククラスの定義1 |
ニューラルネットワーク構造を実装できる。
|
11th |
ニューラルネットワーククラスの定義2 |
誤差逆伝播ができるニューラルネットワークを実装できる。
|
12th |
ネットワークの学習 |
ニューラルネットワークの学習ができ、その過程を可視化できる。
|
13th |
手書き数字のデータセット1 |
手書き数字のMNISTデータセットが何か説明できる。
|
14th |
手書き数字のデータセット2 |
手書き数字の認識を行うニューラルネットワークが実装できる。
|
15th |
|
|
16th |
|
|
Evaluation Method and Weight (%)
| 定期試験 | 小テスト | ポートフォリオ | 発表・取り組み姿勢 | その他 | Total |
Subtotal | 70 | 0 | 30 | 0 | 0 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 |
専門的能力 | 70 | 0 | 30 | 0 | 0 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 |