到達目標
オブジェクト指向プログラミングの概念を理解し,応用したプログラムを作成することが出来る
Javaのプログラムを読み書きすることが出来る
Pythonのプログラムを読み書きすることが出来る
Pythonを利用してディープニューラルネットワークを作成することができる
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
オブジェクト指向プログラミング | オブジェクト指向の概念を理解し,応用したプログラムを効率よく作成することができる | オブジェクト指向の概念を理解し,利用したプログラミングができる | オブジェクト指向を理解しておらず,利用したプログラミングができない |
Java | Javaの基本的事項を説明することができ,応用したプログラムを,実用的なレベルで作成することができる | avaの基本的事項を理解し,プログラミングを行う事ができる | Javaのプログラミングを行う事ができない |
Python(1) | Pythonの基本的事項を説明することができ,応用したプログラムを,実用的なレベルで作成することができる | Pythonの基本的事項を理解し,プログラミングを行う事ができる | Pythonのプログラミングを行う事ができない |
Python(2) | Pythonを利用してディープニューラルネットワークを作成することができる | Pythonを利用してニューラルネットワークのサンプルプログラムを動作させることができる | Pythonを利用してニューラルネットワークのサンプルプログラムを動作させることができない |
学科の到達目標項目との関係
教育方法等
概要:
マルチプラットフォームで動作可能なプログラミング言語(前期:Java,後期:Python)を用いた,オブジェクト指向のプログラミング技術を取得する.目的に応じたプログラミングができるようになる.また,Web等に公開されているDeepLearningのライブラリを利用してディープニューラルネットワークを作成することができるようになる.
授業の進め方・方法:
毎時間小テストを行う.その後基本的な事項を解説した後で,実際にプログラムを作成し技術を習得してもらう.予習(小テストのための勉強)は必須である.反転授業を取り入れて授業を行う.
注意点:
規定授業時数60時間.また,レポート及び課題により30時間程度の自学自習時間を確保する.
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
Javaの変数とデータ型(1) |
Javaの変数とデータ型について理解し説明出来る.また,これを利用した簡単なプログラムを作成出来る.
|
2週 |
Javaの変数とデータ型(2) |
同上
|
3週 |
Javaプログラムの基本構成(1) |
Javaプログラムの基本的な構成について理解し説明出来る
|
4週 |
Javaプログラムの基本構成(2) |
同上
|
5週 |
Javaプログラムの基本構成(3) |
同上
|
6週 |
Javaのオブジェクト指向の仕組み(1) |
オブジェクトの生成とメソッドの呼び出し方法を理解し,クラスを用いた基礎的なプログラミングができる
|
7週 |
Javaのオブジェクト指向の仕組み(2) |
同上
|
8週 |
中間試験 |
|
2ndQ |
9週 |
中間試験までの総まとめ |
これまでの内容を,系統立てて理解しプログラムを作成できる
|
10週 |
Javaのオブジェクト指向の仕組み(3) |
オブジェクトの生成とメソッドの呼び出し方法を理解し,クラスを用いた基礎的なプログラミングができる
|
11週 |
Javaのクラス応用(1) |
継承やインターフェースなどのクラスの拡張を理解し,それらを利用したプログラミングができる
|
12週 |
Javaのクラス応用(2) |
同上
|
13週 |
実践的なJavaプログラム作成方法(1) |
様々なclassを利用し,より実践的なプログラムを作成することが出来る
|
14週 |
実践的なJavaプログラム作成方法(2) |
同上
|
15週 |
定期試験 |
|
16週 |
定期試験答案返却 |
|
後期 |
3rdQ |
1週 |
Pythonの基礎 |
pythonプログラムの実行方法や文法の基礎を理解し説明出来る
|
2週 |
Pythonの変数とデータ型(1) |
基本的な変数に加えて,python特有のデータ型を理解し説明出来る
|
3週 |
Pythonの変数とデータ型(2) |
同上
|
4週 |
Pythonのオブジェクト指向プログラミング(1) |
Pythonでのオブジェクト指向プログラミングの書き方を理解し,実際にプログラムを行うことができる
|
5週 |
Pythonのオブジェクト指向プログラミング(2) |
同上
|
6週 |
Pythonの拡張(1) |
Pythonで利用できる各種組み込みモジュールについての基本事項を理解し,利用することができる
|
7週 |
Pythonの拡張(2) |
同上
|
8週 |
中間試験 |
|
4thQ |
9週 |
中間試験までのまとめ |
Pythonの基本的な事項を系統立てて理解し,プログラムすることができる
|
10週 |
ニューラルネットワークの基礎 |
数値計算モジュールであるnumpyを利用し,ニューラルネットワークの基本構造を利用した,AND,OR,NAND回路を作成できる
|
11週 |
バックプロパゲーション |
基本的な学習則であるBP法を理解している
|
12週 |
多層ニューラルネットワークの作成 |
多層ニューラルネットワークをプログラムすることができる
|
13週 |
ディープニューラルネットワーク |
CNNの構造を理解し,プログラムすることができる
|
14週 |
ディープニューラルネットワーク(2) |
Kerasを利用してディープニューラルネットワークを記述できる
|
15週 |
定期試験 |
|
16週 |
定期試験答案返却 |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 代入や演算子の概念を理解し、式を記述できる。 | 3 | 前6,前7,後2,後3 |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 3 | 前6,前7 |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 3 | 前13,前14,後10,後11,後12 |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | 後13,後14 |
評価割合
| 試験 | 小テスト,課題,レポート | 合計 |
総合評価割合 | 60 | 40 | 100 |
基礎的能力 | 20 | 20 | 40 |
専門的能力 | 40 | 20 | 60 |
分野横断的能力 | 0 | 0 | 0 |