Type of Credit: Required
Credit(s)
Number of Students
本課程承接上個學期「數學軟體應用」, 我們學習了基本的 Python 語法, 並且瞭解如何作「數據分析」及「機器學習」。這個學期的「計算機程式」, 我們會以「深度學習 (人工智慧)」為主要的課題, 除了介紹人工智慧的基本概念與程式技巧, 並且同學們需要分組發想一個運用 AI 解決的實務問題。
能力項目說明
1. 瞭解人工智慧, 尤其是深度學習的概念。
2. 能夠寫各種深度學習模式的程式。
3. 能夠知道要做一個深度學習專案, 會需要什麼條件, 會碰到什麼困難, 及可能的解決方式。
4. 能運用於自身專業領域,把 AI 作為解決該領域問題的一種工具。
每週課程, 請同學回去務必複習, 有問題儘快找老師或助教討論。每一位同學依之前的經驗, 可能需要花不同的複習和練習時間, 我們預估每位同學在課程之外大約需要再花 4 小時以上的理解、練習、反思時間。
原則上一週是理論說明, 一週是實作介紹。我們的作業也會分成兩種類型:
[理論週]
1. 我們學到的模式或方法, 可以怎麼應用到實務問題?
2. 自選的小程式練習
[程式週]
上課介紹的程式, 再調整、或用不同的數據集來試驗。
【第 1週】 2月19日: 課程說明及深度學習問題介紹
【第 2週】 2月26日: 全連結神經網路及神經網路的學習方式
【第 3週】 3月 4日: 全連結神經網路實作 (DNN)
【第 4週】 3月11日: 圖形辨識天王卷積神經網路
【第 5週】 3月18日: 卷積神經網路實作 (CNN)
【第 6週】 3月25日: 有記憶的遞歸神經網路
【第 7週】 4月 1日: 遞歸神經網路實作 (RNN)
【第 8週】 4月 8日: 小組專案提案 (A)
【第 9週】 4月15日: 小組專案提案 (B)
【第10週】 4月22日: 專題 (一) 讓電腦有創作能力的生成對抗網路 (GAN)
【第11週】 4月29日: 高階神經網路程式技巧 Functional API 寫法
【第12週】 5月 6日: 高階神經網路實作專題: GAN, VAE 等
【第13週】 5月13日: 專題 (二) AlphaGo 與強化學習
【第14週】 5月20日: 校慶運動會
【第15週】 5月27日: 專題 (三) 遷移學習
【第16週】 6月 3日: 高階神經網路實作專題: 遷移學習實作
【第17週】 6月10日: 期末專題報告 (A)
【第18週】 6月17日: 期末專題報告 (B)
[作業] 60% (個人成績)
1. 每次的作業 5 點 (神經網路程式或建模作業)
2. 每次自選小程式作業一個 2 點 (大約兩週開放一次)
[期末專題] 40% (期中提案 10%, 期末報告 30%, 團體成績)
[特别加分/扣分項目]
1. 課程參與 (最高加 6 分)
2. 閃電秀分享 (每次加 3 分)
3. 小組互評 (最多加減 3 分)
* 很認真做作業、專題、分享的同學, 分數可能會破百, 但本課程最高分是給到 99 分, 代表意義是學習非常好, 但任何科目我們都還有可以更進一步學習的地方。
Aurélien Géron, "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems 2nd Edition." (一定要第二版!)
這是主要參考書籍, 雖然沒有一定要購買, 但強烈建議要有。這是目前程式實作最符合本課程的書!
https://moodle.nccu.edu.tw