2020机器学习深度学习课程-李宏毅

  • 名称:2020机器学习深度学习课
  • 分类:人工智能  
  • 观看人数:加载中
  • 时间:2020/8/15 15:21:18

    李宏毅(李弘毅)分别于2010年和2012年获得国立台湾大学硕士和博士学位。2012年9月至2013年8月,Academia Sinica信息技术创新研究中心博士后。2013年9月至2014年7月,麻省理工学院计算机科学和人工智能实验室( CSAIL )语言系统组的访问科学家。现为国立台湾大学电气工程系助理教授,并获大学计算机科学与信息工程系联合委任。他的研究侧重于机器学习(尤其是深度学习)、语言理解和语音识别。

Machine Learning 

2020

李宏毅

Hung-yi Lee

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

本學期總共有十五個作業 (每項作業滿分皆為10 分,

學期成績以分數最高的前十個作業計算)

f ( ) = f ( ) = f ( ) = f ( ) =

機器學習就是自動找函式

• Speech Recognition

• Image Recognition

• Playing Go

• Dialogue System

“Cat”

“How are you”

“5-5”

“How are you?” “I am fine.”

(what the user said) (system response)

(next move)

你想找什麼樣的函式?

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

f

PM2.5 today

PM2.5 yesterday

…….

PM2.5 tomorrow

(scalar)

The output of the 

function is a scalar.

Regression

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Input f Yes or No

(sentence) (pos or neg)

Binary 

Classification 

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

f

Input Class 1, Class 2, … Class N

Multi-class 

Classification 

麵包 蛋 湯

Generation (生成)

產生有結構的複雜東西

(例如:文句、圖片)

擬人化的講法—創造

Regression, 

Classification

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Generation

翻譯:產生文句

產生二次元

人物

怎麼告訴機器

你想找什麼樣的函式?

Supervised Learning

𝒇 “Cat”

𝑥 𝑦 𝑦1:“Cat” 𝑦2:“Cat”

𝑦3:“Dog” 𝑦4:“Dog”

𝑥1: 𝑥2: 𝑥3: 𝑥4:

Labelled Data

函式的 Loss

𝒇𝟏

“Dog”/“Dog”/

“Dog”/“Dog”

𝑥1 / 𝑥2 / 𝑥3 / 𝑥4

Loss = 50% 

𝑦1:“Cat” 𝑦2:“Cat”

𝑦3:“Dog” 𝑦4:“Dog”

𝑥1: 𝑥2: 𝑥3: 𝑥4:

Labelled Data

函式的 Loss

𝒇𝟐

“Cat”/“Cat”/

“Dog”/“Dog”

𝑥1 / 𝑥2 / 𝑥3 / 𝑥4

Loss = 0% 

接下來機器會自動找出

Loss 最低的函式

𝑦1:“Cat” 𝑦2:“Cat”

𝑦3:“Dog” 𝑦4:“Dog”

𝑥1: 𝑥2: 𝑥3: 𝑥4:

Labeled Data

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Supervised Learning

Reinforcement Learning 

Supervised v.s. Reinforcement

• Supervised:

• Reinforcement Learning

Next move:

“5-5”

Next move:

“3-3”

First move …… many moves …… Win!

Alpha Go is supervised learning + reinforcement learning.

(Reward)

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Reinforcement Learning

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Unsupervised 

Learning

What can machine learn 

from unlabeled images? 

機器怎麼

找出你想要的函式?

Use RNN

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

限制函式尋找範圍

Linear

Network Architecture

Use CNN

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

函式尋找方法 – Gradient Descent

Implement the 

algorithm by yourself

Deep Learning Framework 

(3/26 PyTorch 教學、會錄影)

前沿研究

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

This is a “cat”

Because …

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Add

noise

This is a “cat”

Star Fish …

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

This is a “cat”

CNN required

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

This is a “cat”

我不知道

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

99.5% 57.5%

Training 

Data

Testing 

Data

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Meta Learning = Learn to learn

• Now we design the learning algorithm

• Can machine learn the learning algorithm? 

program 

for learning

I can learn!

program designing 

program 

for learning 

program 

for learning

I can learn!

能不能讓機器聰明一點?

天資不佳卻勤奮不懈?

http://web.stanford.edu/class/psych209/Readings/LakeEtAlBBS.pdf

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

終身學習 (Life-long Learning) 

Learning 

Task 1

Learning 

Task 2

Learning 

Task 3

I can solve 

task 1.

I can solve 

tasks 1&2.

I can solve 

tasks 1&2&3.

Life-Long Learning (終身學習), Continuous Learning, 

Never Ending Learning, Incremental Learning

CNN required

Regression 

Classification

RNN Seq2seq

Meta Learning

Unsupervised 

Learning

(Auto-encoder)

Life-long 

Learning

Reinforcement 

Learning

CNN

Explainable AI

Adversarial 

Attack 

Network 

Compression 

Anomaly 

Detection

GAN

Transfer Learning

(Domain Adversarial 

Learning)

Easy Normal Challenging 

(數分鐘完成) (數小時完成) (數日完成)

Kaggle

(僅供參考)

Learning order

課程網頁

• http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML20.html

完全可以在家自學!

課程網頁

在寫作業前先線上學習

課程網頁 所有作業都有 Colab 範例,

照著做就完成一半!

課程網頁 作業的要求都在這裡

(錄影預計 3/12 全數完成)

所有作業皆已經公告,現在就可以開始做了

課程網頁 上課補充的是相關主題最新的知識,

和作業沒有直接關連 (會錄影)

10:20 開始 ,3/26 後每星期都有 (國定假日除外)

課程網頁

每一個作業都有死線

以後每週四上午 9:10 – 10:00 就是助教時間

FB 社團

• 社團: “Machine Learning (2020,Spring)”

• https://www.facebook.com/groups/1099602297060276/

歡迎同學們提問 ☺

感謝助教群! ! !

助教信箱:

ntu-ml-2020spring-ta@googlegroups.com