シラバス情報

授業コード
37180001
講義名
プログラミング演習 IV (Python) 【セット履修】
開講時期
2024年度2Q(前期)
科目分類
演習
科目分野
プログラミング
教員名
神谷 貴久
実務家教員
実務家教員
履修年次
2〜3
単位数
2単位
曜日時限
土曜3限、土曜4限

授業概要
Pythonを用いて、深層学習の基本的な仕組みをコードにて試す
深層学習の各種技法(CNN/GANなど)を実践する
到達目標
到達目標は、
深層学習を用いて、
 深層学習の仕組みを理解する(CNN)
 統計データ、画像の認識、分類ができる
 画像の自動生成ができる
履修条件
※2019年度以降カリキュラム生のみ受講可
プログラミング演習ⅠおよびⅡ(Python)の単位修得
履修条件緩和
三目並べが作成できる程度のプログラミング能力。
pythonの変数、リスト、IF文、FOR文が使いこなせること。
成績評価方法・基準
◆中間課題(30%)
 レポート
◆最終課題(70%)
 深層学習を使ったプログラミングコード
※出席率70%未満は、基本的に評価対象としない
※公欠は3回までは認める
期末試験の内容
期末試験は実施しない
課題の内容
◆中間課題(30%)
 深層学習についてのレポート
 (2000文字程度)
◆最終課題(70%)
 深層学習を使ったプログラミング(画像認識、画像生成など)

授業内容
第1回
【授業概要説明・パーセプトロン、ニューラルネットワーク】
 パーセプトロンをコードで実装
 ニューラルネットワークをコードで実装
【事前学習】パーセプトロン、ニューラルネットワークについて調べておく
【事後学習】授業中に使ったコードを動かして理解を深める

第2回
【授業概要説明・ニューラルネットワーク、誤差伝搬法】
 ニューラルネットワークによる学習をコードで実装
 誤差伝搬法をコードで実装
【事前学習】誤差伝搬法について調べておく
【事後学習】授業中に使ったコードを動かして理解を深める
第3回
【授業概要説明・CNN】
 CNN(畳み込みニューラルネットワーク)をコードで実装
【事前学習】CNNについて調べておく
【事後学習】授業中に使ったコードを動かして理解を深める
第4回
【授業概要説明・CNN】
 CNN(畳み込みニューラルネットワーク)をコードで実装
【事前学習】CNNについて調べておく
【事後学習】授業中に使ったコードを動かして理解を深める
第5回
【授業概要説明・GAN】
 GAN(敵対的生成ネットワーク)をコードで実装
 GANによる画像の生成
【事前学習】GANについて調べておく
【事後学習】授業中に使ったコードを動かして理解を深める
第6回
【授業概要説明・物体検知】
 物体検知(YOLO)をコードで実装
  ディープラーニングを用いた画像処理を行う(DeepDream、スタイル変換)
【事前学習】物体検知(YOLO)について調べておく
【事後学習】授業中に使ったコードを動かして理解を深める
第7回
【授業概要説明・最終課題制作】
   展示会へ向けた最終課題制作
【事前学習】最終課題について検討しておく
第8回
【授業概要説明・最終課題制作】
   展示会へ向けた最終課題制作
【事前学習】最終課題について検討しておく

購入が必要な教科書
書名
ゼロから作るDeep Learning —Pythonで学ぶディープラーニングの理論と実装
著者
斎藤 康毅 (著)
出版社
オライリージャパン
ISBN
978-4873117584
備考

教科書以外に準備するもの(画材・機材)
自身のPCを用いる場合は、AnacondaをインストールしJupyterを用いてPython3の動作が行えることを確認すること

参考文献
・実践GAN ~敵対的生成ネットワークによる深層学習 Jakub Langr (著)、Vladimir Bok (著) マイナビ出版
※大学での教科書販売はありません。

教員連絡先