Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
【深度學習】02 AI 就是問個好問題
Search
[email protected]
March 07, 2022
Technology
0
190
【深度學習】02 AI 就是問個好問題
2022 政大應數「數學軟體應用」深度學習課程 02
[email protected]
March 07, 2022
Tweet
Share
More Decks by
[email protected]
See All by
[email protected]
【深度學習】08 強化學習
yenlung
0
360
Contrastive Self-Supervised Learning
yenlung
0
420
【深度學習】07 生成模式和 GAN
yenlung
0
380
【深度學習】06 RNN 實務與 Transformers
yenlung
0
320
【深度學習】05 有記憶的神經網路 RNN
yenlung
0
140
【深度學習】04 圖形辨識的天王 CNN
yenlung
0
250
【深度學習】03 神經網路是怎麼學的
yenlung
0
190
咖啡沖煮簡介
yenlung
0
1.2k
深度學習入門
yenlung
0
380
Other Decks in Technology
See All in Technology
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
36
14k
ブラックフライデーで購入したPixel9で、Gemini Nanoを動かしてみた
marchin1989
1
540
社外コミュニティで学び社内に活かす共に学ぶプロジェクトの実践/backlogworld2024
nishiuma
0
260
alecthomas/kong はいいぞ / kamakura.go#7
fujiwara3
1
300
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
170
2024年にチャレンジしたことを振り返るぞ
mitchan
0
140
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
120
AWS re:Invent 2024で発表された コードを書く開発者向け機能について
maruto
0
190
PHPからGoへのマイグレーション for DMMアフィリエイト
yabakokobayashi
1
170
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
160
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
350
5分でわかるDuckDB
chanyou0311
10
3.2k
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
6.7k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Reflections from 52 weeks, 52 projects
jeffersonlam
347
20k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Agile that works and the tools we love
rasmusluckow
328
21k
Navigating Team Friction
lara
183
15k
We Have a Design System, Now What?
morganepeng
51
7.3k
A Tale of Four Properties
chriscoyier
157
23k
Statistics for Hackers
jakevdp
796
220k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Designing for humans not robots
tammielis
250
25k
Transcript
政⼤應數。數學軟體應⽤ 蔡炎龍 問個好問題 政治⼤學應⽤數學系 深度學習入⾨ 02.
問問題的各種可能 05.
數學軟體應⽤ 67 01 股票⾃動交易 做個⾃動交易系 統! 我們來預測股票 的收盤價!
數學軟體應⽤ 68 01 股票⾃動交易 f 化成函數的形式, 我們當然可以很天真的這麼做... 輸入 輸出 ⽇期
x 某股票 x 當天的收盤價 不合理的是, 輸入⽇期這個資訊太少, 不太可能這樣就推出收盤價!
數學軟體應⽤ 69 01 股票⾃動交易 f ⽤前 1 週的收盤價預測下⼀次的收盤價就合理得 多。 輸入
輸出 當然還有很多其他可能的⽅式! DNN, CNN, RNN
數學軟體應⽤ 70 01 股票⾃動交易 拜託你, 股票是 無法預測的! 專家可能會說...
數學軟體應⽤ 71 01 股票⾃動交易 不如讓電腦學者做交易! f 輸入 輸出 買 不交易
賣 某股過去 20 天資料
數學軟體應⽤ 72 01 股票⾃動交易 但其實這樣設計, 訓練資料很難準備! Q 輸入 輸出 動作
某股過去 20 天資料 + 換學另⼀個函數! ⼀段時間, 比如 ⼀年的總利潤 S a 狀態 動作
數學軟體應⽤ 73 02 信⽤卡盜刷判斷 我想知道這筆信 ⽤卡交易有沒有 問題。 VISA
數學軟體應⽤ 74 02 信⽤卡盜刷判斷 VISA 某筆交易 正常 異常 輸入 輸出
f
數學軟體應⽤ 75 03 流感病毒篩檢 我想知道病⼈有 沒有感染某種流 感病毒?
數學軟體應⽤ 76 03 流感病毒篩檢 f 輸入 輸出 有 or 沒有
看我有沒 有在裡 ⾯? CNN
數學軟體應⽤ 77 04 全壘打預測 我想知道某位 MLB 選⼿新球季可以打 幾隻全壘打?
數學軟體應⽤ 78 04 全壘打預測 f 輸入 輸出 RNN 某選⼿第 t-1
年資料 第 t 年全壘打數 [Age, G, PA, AB, R, H, 2B, 3B, HR, RBI, SB, BB, SO, OPS+, TB] 每位選⼿都有 15 個 features!
數學軟體應⽤ 79 04 全壘打預測 可惜結果不準! 不要猜精確數⽬, 猜區間即可! 分五段: 0-9, 10-19,
20-29, 30-39, 40+
數學軟體應⽤ 80 05 對話機器⼈ 對話機器⼈ 或是⾃動翻譯
數學軟體應⽤ 81 05 對話機器⼈ f 輸入 輸出 客⼾說的話 客服機器⼈回應 這樣會有問題!
注意函數輸入和輸出需要⼀樣的長度!
數學軟體應⽤ 82 05 對話機器⼈ f 輸入 輸出 ⽬前的字 下⼀個字 令⼈驚呆的是,
最常⾒的居然是化這這樣的函數... RNN
數學軟體應⽤ 83 05 對話機器⼈ 比如說, “今天天氣很好。” 這句話, 輸入我們的函數就應該是... f(“今”) =
“天” f(“天”) = “天” f(“天”) = “氣” f(“氣”) = “很” f(“很”) = “好” 這根本不是函 數啊!
數學軟體應⽤ 84 05 對話機器⼈ 結果⽤有記憶能⼒的 RNN 做, 它可以是函數的原因是不只輸入⼀個 字, 還有之前的綜合資訊!
f 輸入 輸出 ⽬前的字 下⼀個字 RNN 還有前幾次的「記憶」
數學軟體應⽤ 85 05 對話機器⼈ 然後就可以做出對話 (翻譯) 機器⼈! 字1 字2 回1
EOS 回1 回2 回k EOS
數學軟體應⽤ 86 06 情境配樂 放⼀段影片, 我 想依情境配出 ⼀段背景⾳樂!
數學軟體應⽤ 87 06 情境配樂 f 符合情境的⾳樂 ⼀段影片 可是不能每次同 類型的情境, 都配
⼀樣的⾳樂吧...
數學軟體應⽤ 88 06 情境配樂 f ⼀段影片 恐怖的 浪漫的 溫馨的 熱⾎的
可能可以先 學這個函數!
數學軟體應⽤ 89 07 創作機器⼈ 我想讓電腦和我⼀樣 會創作。
數學軟體應⽤ 90 07 創作機器⼈ f 輸入 輸出 ???? ⼀段⾳樂 到底是要輸入什麼呢?
數學軟體應⽤ 91 07 創作機器⼈ 結果是訓練兩個神經網路! G D ⽣成器 鑑別器 ⼀⼩段曲⼦
像 or 不像 ⼀⼩段曲⼦ 靈感 ⼀⼩段曲⼦ 這就是所謂的⽣成對抗網路 (GAN)!
數學軟體應⽤ 92 08 ⾃動駕駛 我想要讓電腦 ⾃動開⾞!
數學軟體應⽤ 93 08 ⾃動駕駛 f 路上情境 ⽅向盤的⾓度 油⾨⼤⼩ 剎⾞⼤⼩ 好像很合理...
數學軟體應⽤ 94 09 「⾃學型」的 AI 我想讓電腦⾃⼰學會 玩遊戲!
數學軟體應⽤ 95 09 「⾃學型」的 AI π 輸入 輸出 最好的動作 這樣做通常不⾏!
どうして?
數學軟體應⽤ 96 09 「⾃學型」的 AI 原因是訓練資料很難準備! 1 變化太多很難各種 情境都有訓練資料! 2
以下圍棋為例, 我那 麼會的話... 我那麼會我就 世界冠軍了啊!
數學軟體應⽤ 97 09 「⾃學型」的 AI 直接學哪個動作最好不容易。於 是我們學習給每個動作「評分」, 通常是計算做了這個動作後「得 分的期望值」。 Q
輸入 輸出 預期的 reward DNN, CNN, RNN + 這就是強化學習 (reinforcement learning)
數學軟體應⽤ 98 ⼩結論 對我們想解決的問題, 可能有許多不同的問法!
數學軟體應⽤ 99 ⼩結論 f 輸入 輸出 x y (再⼀次) 點是⼀次要非常
明確化成函數的形式, 也就 是要知確實說清楚輸入、輸 出是什麼。
數學軟體應⽤ 100 我們常常會碰到這樣的情況... 兔⼦老闆 我想知道怎麼樣紅蘿葡 會長得更快? 你們⽤ AI 做⼤數據分析, 然後交
出來。
數學軟體應⽤ 101 你跟他說不⾏, 他會回應這句話... 光這樣問是不⾏的! 為什麼!? 我有數據! 不⾏的原因是沒有把問題化為函 數的形勢。⼤家做 AI
經驗多了, 遲早會出現這樣對話的場景...
神經網路 06.
數學軟體應⽤ 103 深度學習和神經網路 現在 AI ⼤紅的原因是 深度學習有很多突破性 的發展, ⽽深度學習的 核⼼是神經網路。
數學軟體應⽤ 104 假設我們確定要學哪個函數了 f x1 x2 xn y1 y2 ym
也就是我們輸入和輸出都很 明確, 明確到輸入輸出的⼤⼩ 當然也都確定了!
數學軟體應⽤ 105 接下來就是要打造函數學習機 我們要⽤深度學習 (神 經網路) 的⽅法, 打造 ⼀台函數學習機! വᏐ
ላशػ
數學軟體應⽤ 106 神經網路暗⿊學習法! 這個世界有個近乎全能 的暗⿊函數學習法 神經網路
數學軟體應⽤ 107 神經網路暗⿊學習法! 還有數學定理證明 「⼀個隱藏層」的神 經網路就能學會你要 學的函數! Universal Approximation Theorem
數學軟體應⽤ 108 神經網路暗⿊學習法! ⽽且我們不⽤知道函 數長什麼樣⼦ (線性 啦、多項式樣啦等 等)!
數學軟體應⽤ 109 神經網路暗⿊學習法! Hidden Layer Output Layer Input Layer 暗⿊魔法
如同魔法般的, 你問好問 題 、準備好資料, 神經網 路就告訴你函數應該長 什麼樣⼦!
數學軟體應⽤ 110 神經網路暗⿊學習法! 在 1980-1990 年代可以說紅極⼀時!
數學軟體應⽤ 111 魔法光茫不再!? 有⼀陣⼦如果研究計畫說要 研究「神經網路」, 那計畫還 沒送出就可以確定不會通過! 然後它就死掉了...
數學軟體應⽤ 112 為什麼上個世紀神經網路沒有預期成功? 複雜的軟體 電腦計算能⼒ ⼤ 的數據 三⼤要件當時不具⾜。 Yann LeCun
數學軟體應⽤ 113 到了現在, 情況完全不⼀樣了! 比起上個世紀, 要寫個 強強的深度學習程式, 真的太容易了!
數學軟體應⽤ 114 神經網路新時代! Human-level control through deep reinforcement learning ”
“ DeepMind 2015-2-26 Deep Q- Learning letter 原來電腦可以⾃已學 會做⼀些複雜的任務!
數學軟體應⽤ 115 神經網路新時代! Deep Learning “ LeCun-Bengio-Hinton 2015-5-28 http://bit.ly/ai_history 介紹
Deep Learning「三巨頭」 的故事。 延申閱讀 度過神經網路寒冬的 三巨頭, ⼀起宣告 deep learning 時代 的來臨! ”
數學軟體應⽤ 116 神經網路新時代! Deep Learning 打敗 世界棋王, 讓⼤家⼤ ⼤期待 deep
learning 的能⼒! ” Mastering the game of Go with deep neural networks and tree search” “ DeepMind 2016-2-26
數學軟體應⽤ 117 再⼀次, 就這三⼤天王改變了全世界! DNN CNN RNN 我們會來⼀⼀介紹這 些神經網路架構有什 麼特點。
神經網路標準版 DNN 07.
數學軟體應⽤ 119 全連結神經網路 (DNN) Fully Connected Neural Networks 1980 年代就火紅的
model
數學軟體應⽤ 120 全連結神經網路 (DNN) 只需要決定兩組數字, 神經網路 就決定了! 1. 幾層隱藏層 2.
每層幾個神經元 層層之間的神經元是完全連結 的。
數學軟體應⽤ 121 深度學習就是建⼀層層「隱藏層」 x ̂ y input layer hidden layers
output layer DNN, CNN, RNN 嚴格說是每 ⼀層都可以決定是要⽤三種之 中, 哪⼀種⽅式做隱藏層的設 計。
數學軟體應⽤ 122 深度學習就是建⼀層層「隱藏層」 x 1 x 2 x n h
1 h 2 h k x h ℱ 1 全連結層 (Dense) 卷積層 (Conv) 遞歸層 (LSTM, GRU) 差不多就是決定 幾個神經元就結 束了。 隱藏層基本上就三種選擇: DNN CNN RNN
數學軟體應⽤ 123 神經元怎麼運作 不管哪種神經網路, 神 經元就是基本的運算 單元, ⽽每個神經元的 運算⽅式是⼀樣的!
數學軟體應⽤ 124 神經元怎麼運作 每個神經元就是接受 若⼲個刺激輸入, 然後 送出⼀個刺激輸出。
數學軟體應⽤ 125 神經元怎麼運作 我們先要這個神經元接受到的 總刺激。 3 ∑ i=1 w i
x i
數學軟體應⽤ 126 神經元怎麼運作 接著加上偏值 (bias), 做⼀個基 準的調整。不管是權 、偏值 都是要經過學習得到的! 這裡我
們估且稱調整後的總刺激。 3 ∑ i=1 w i x i 3 ∑ i=1 w i x i + b b
數學軟體應⽤ 127 神經元怎麼運作 ⽬前的計算都是線性的, 即使經所 有神經元算還是線性的, 因此我們 需經⼀個激發函數 (activation function)
轉換再送出。 φ( 3 ∑ i=1 w i x i + b) = h φ( ) = h
數學軟體應⽤ 128 激發函數 以下我們介紹幾個有名的激發函數。 ReLU Sigmoid Gaussian 本世紀新寵! 感覺應該很接近⼈ 類神經元的動作。
舊時代的懷念, 已 很少使⽤。
數學軟體應⽤ 129 把⾃⼰當⼀個神經元! 現在把⾃⼰當成⼀個 神經元, ⽤ ReLU 做 我們的激發函數。
數學軟體應⽤ 130 把⾃⼰當⼀個神經元! 權 和偏值都是學來 的, 但⼀開始我們會隨 機給⼀個值。 1 2
1 假設初始化得到: w 1 = 1 w 2 = 2 b 1 = 1
數學軟體應⽤ 131 把⾃⼰當⼀個神經元! 記得我們神經元的計算⽅式。現 在有任何輸入我們都應該知道該 怎麼輸出了。 1 2 1 1
1 2
數學軟體應⽤ 132 把⾃⼰當⼀個神經元! 比如說我們接到 的輸入, 輸出應該是多少呢? 1 2 1 1
1 2 x = (x 1 , x 2 ) = (1,3) 1 3
數學軟體應⽤ 133 把⾃⼰當⼀個神經元! 計算調整後 的加權和。 1 2 1 1 3
1 1 2 8 1 3 × ×
數學軟體應⽤ 134 把⾃⼰當⼀個神經元! 因為⽤了可愛 的 ReLU, 會得 到輸出正是 8! 1
2 1 1 3 8 φ(8) = 8
數學軟體應⽤ 135 函數學習機建造完成! 我們會把所有要學習的參數, 包括所有的權 、所有的偏 值, 合併起來叫做: θ
數學軟體應⽤ 136 函數學習機建造完成! 當決定了權 、參數, 也就是 ⼀組 的值, 我們輪入任意的 數值,
神經網路就會吐出⼀個 輸出給我們了! θ വᏐ ላशػ 完成!