到達目標
1. Google Colaboratoryノートブックを用いて、実行可能なプログラムと合わせてレポートを作成することができる
2. 多層CNNを構成するソフトマックス関数、全結合層、畳み込み層、プーリング層、ドロップアウト層について、機能を説明することができる
3. TensorFlow/Kerasを用いて多層CNNによる手書き文字認識アプリケーションを実装することができる
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | Google Colaboratoryノートブックを用いて、実行可能なプログラムとレポートを、自ら学んだ要素を取り入れて、作成することができる。 | Google Colaboratoryノートブックを用いて、実行可能なプログラムと合わせてレポートを作成することができる。 | Google Colaboratoryノートブックを用いて、実行可能なプログラムと合わせてレポートを作成することができない。 |
評価項目2 | 多層CNNを構成するソフトマックス関数、全結合層、畳み込み層、プーリング層、ドロップアウト層について、機能をプログラムと共に説明することができる。 | 多層CNNを構成するソフトマックス関数、全結合層、畳み込み層、プーリング層、ドロップアウト層について、機能を説明することができる。 | 多層CNNを構成するソフトマックス関数、全結合層、畳み込み層、プーリング層、ドロップアウト層について、機能を説明することができない。 |
評価項目3 | TensorFlow/Kerasを用いて多層CNNによる手書き文字認識アプリケーションを実装し、認識率を改善を提案できる。 | TensorFlow/Kerasを用いて多層CNNによる手書き文字認識アプリケーションを実装することができる。 | TensorFlow/Kerasを用いて多層CNNによる手書き文字認識アプリケーションを実装することができない。 |
学科の到達目標項目との関係
学習・教育到達度目標 B① 専門分野における工学の基礎を理解できる。
JABEE SB① 共通基礎知識を用いて、専攻分野における設計・製作・評価・改良など生産に関わる専門工学の基礎を理解できる。
教育方法等
概要:
ディープラーニングの基本的な仕組みを理解するとともに、機械学習のオンラインプラットフォーム上でノートブックを用いて実際に画像分類に関するプログラムを作成する。
授業の進め方・方法:
授業の前半は学習項目を座学で学び、授業の後半でプログラムの動作を確認するなどの演習を行う。
注意点:
プログラミング言語はPythonを用いるが、文法の詳細な解説は行わないので、必要に応じて各自でリファレンスを準備してプログラム作成に取り組むこと。
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
後期 |
3rdQ |
1週 |
ガイダンス、最小二乗法で学ぶ機械学習の基礎 |
・授業の目的と進め方について理解する ・最小二乗法による回帰問題に対して、勾配降下法によるパラメータの最適化を適用する例題を理解する
|
2週 |
TensorFlowとKerasの使い方 |
・1週目の例題をTensorFlow/Kerasを用いて取り組む ・Google Colaboratory環境でプログラムおよびコメントを記述する
|
3週 |
ニューラルネットワークの役割 |
・1層の隠れ層を持つニューラルネットワークの機能を理解できる ・分類問題を例にニューラルネットワークの動作を理解できる
|
4週 |
ロジスティック回帰による二項分類器 |
・ロジスティック回帰を用いた二項分類器の概要を理解できる ・確率モデルの考え方を理解できる
|
5週 |
ソフトマックス関数と多項分類器 |
・過学習を避けるためにトレーニングセット・テストセットに分ける必要があることを理解できる ・ソフトマックス関数と多項分類器の考え方を理解できる
|
6週 |
線形多項分類器による手書き文字の分類 |
・線形多項分類器の考え方を理解できる ・誤差関数を理解し、最尤推定法によるパラメータチューニングを説明することができる
|
7週 |
単層ニューラルネットワークの構造 |
・全結合層と活性化関数について学び、単層ニューラルネットワークの構造について理解できる。
|
8週 |
課題レポート |
これまでに学習した項目に関する課題レポートを作成する。
|
4thQ |
9週 |
単層ニューラルネットワークによる手書き文字の分類 |
・単層ニューラルネットワークを分類問題に適用できる ・手書き文字の分類プログラムを動作させることができる
|
10週 |
多層ニューラルネットワークへの拡張 |
・特徴量の抽出と、特徴量に基づいた分類という、多層ニューラルネットワークの本質について理解することができる
|
11週 |
畳み込みフィルターの機能 |
・畳み込みフィルターとプーリングで画像の特徴を抽出することを理解できる
|
12週 |
畳み込みフィルターを用いた画像の分類 |
・畳み込みフィルターとプーリング層を利用した画像の分類処理をKerasで実装できる ・フィルターそのものを動的に学習するようコードを修正できる
|
13週 |
畳み込みフィルターを用いた手書き文字の分類 |
・畳み込みフィルターを動的に学習し、MNISTの手書き文字データセットを分類できる ・さらなる正解率の向上のために、隠れ層の前段に畳み込みフィルターとプーリング層を追加できる
|
14週 |
畳み込みニューラルネットワークの完成 |
・畳み込みフィルターを多層化できる ・機能を理解した上で、全結合層と出力層の間にドロップアウト層を追加できる ・手書き文字分類アプリを完成させることができる
|
15週 |
学習済みフィルターの解釈 |
学習済みフィルターを解釈するために、以下の2つの方法について説明することができる。 1. フィルターの出力を最大化する入力画像を構成する方法 2. 入力画像のどの部分が予測結果に強い影響を与えているかを可視化する方法
|
16週 |
課題レポート |
これまでに学習した項目に関する課題レポートを作成する。
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
評価割合
| 試験 | 小テスト等 | 演習 | 課題レポート | 発表 | 相互評価 | 合計 |
総合評価割合 | 0 | 0 | 50 | 50 | 0 | 0 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
専門的能力 | 0 | 0 | 50 | 50 | 0 | 0 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |