Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【深度學習】02 AI 就是問個好問題

【深度學習】02 AI 就是問個好問題

2022 政大應數「數學軟體應用」深度學習課程 02

4615930de72ec08f99d3227761ace0d8?s=128

yenlung@mac.com
PRO

March 07, 2022
Tweet

More Decks by yenlung@mac.com

Other Decks in Technology

Transcript

  1. 政⼤應數。數學軟體應⽤ 蔡炎龍 問個好問題 政治⼤學應⽤數學系 深度學習入⾨ 02.

  2. 問問題的各種可能 05.

  3. 數學軟體應⽤ 67 01 股票⾃動交易 做個⾃動交易系 統! 我們來預測股票 的收盤價!

  4. 數學軟體應⽤ 68 01 股票⾃動交易 f 化成函數的形式, 我們當然可以很天真的這麼做... 輸入 輸出 ⽇期

    x 某股票 x 當天的收盤價  不合理的是, 輸入⽇期這個資訊太少, 不太可能這樣就推出收盤價!
  5. 數學軟體應⽤ 69 01 股票⾃動交易 f ⽤前 1 週的收盤價預測下⼀次的收盤價就合理得 多。 輸入

    輸出 當然還有很多其他可能的⽅式! DNN, CNN, RNN
  6. 數學軟體應⽤ 70 01 股票⾃動交易 拜託你, 股票是 無法預測的! 專家可能會說...

  7. 數學軟體應⽤ 71 01 股票⾃動交易 不如讓電腦學者做交易! f 輸入 輸出 買 不交易

    賣 某股過去 20 天資料
  8. 數學軟體應⽤ 72 01 股票⾃動交易 但其實這樣設計, 訓練資料很難準備! Q 輸入 輸出 動作

    某股過去 20 天資料 + 換學另⼀個函數! ⼀段時間, 比如 ⼀年的總利潤 S a 狀態 動作
  9. 數學軟體應⽤ 73 02 信⽤卡盜刷判斷 我想知道這筆信 ⽤卡交易有沒有 問題。 VISA

  10. 數學軟體應⽤ 74 02 信⽤卡盜刷判斷 VISA 某筆交易 正常 異常 輸入 輸出

    f
  11. 數學軟體應⽤ 75 03 流感病毒篩檢 我想知道病⼈有 沒有感染某種流 感病毒?

  12. 數學軟體應⽤ 76 03 流感病毒篩檢 f 輸入 輸出 有 or 沒有

    看我有沒 有在裡 ⾯? CNN
  13. 數學軟體應⽤ 77 04 全壘打預測 我想知道某位 MLB 選⼿新球季可以打 幾隻全壘打?

  14. 數學軟體應⽤ 78 04 全壘打預測 f 輸入 輸出 RNN 某選⼿第 t-1

    年資料 第 t 年全壘打數 [Age, G, PA, AB, R, H, 2B, 3B, HR, RBI, SB, BB, SO, OPS+, TB] 每位選⼿都有 15 個 features!
  15. 數學軟體應⽤ 79 04 全壘打預測 可惜結果不準! 不要猜精確數⽬, 猜區間即可! 分五段: 0-9, 10-19,

    20-29, 30-39, 40+
  16. 數學軟體應⽤ 80 05 對話機器⼈ 對話機器⼈ 或是⾃動翻譯

  17. 數學軟體應⽤ 81 05 對話機器⼈ f 輸入 輸出 客⼾說的話 客服機器⼈回應 這樣會有問題!

    注意函數輸入和輸出需要⼀樣的長度!
  18. 數學軟體應⽤ 82 05 對話機器⼈ f 輸入 輸出 ⽬前的字 下⼀個字 令⼈驚呆的是,

    最常⾒的居然是化這這樣的函數... RNN
  19. 數學軟體應⽤ 83 05 對話機器⼈ 比如說, “今天天氣很好。” 這句話, 輸入我們的函數就應該是... f(“今”) =

    “天” f(“天”) = “天” f(“天”) = “氣” f(“氣”) = “很” f(“很”) = “好” 這根本不是函 數啊!
  20. 數學軟體應⽤ 84 05 對話機器⼈ 結果⽤有記憶能⼒的 RNN 做, 它可以是函數的原因是不只輸入⼀個 字, 還有之前的綜合資訊!

    f 輸入 輸出 ⽬前的字 下⼀個字 RNN 還有前幾次的「記憶」
  21. 數學軟體應⽤ 85 05 對話機器⼈ 然後就可以做出對話 (翻譯) 機器⼈! 字1 字2 回1

    EOS 回1 回2 回k EOS
  22. 數學軟體應⽤ 86 06 情境配樂 放⼀段影片, 我 想依情境配出 ⼀段背景⾳樂!

  23. 數學軟體應⽤ 87 06 情境配樂 f 符合情境的⾳樂 ⼀段影片 可是不能每次同 類型的情境, 都配

    ⼀樣的⾳樂吧...
  24. 數學軟體應⽤ 88 06 情境配樂 f ⼀段影片 恐怖的 浪漫的 溫馨的 熱⾎的

    可能可以先 學這個函數!
  25. 數學軟體應⽤ 89 07 創作機器⼈ 我想讓電腦和我⼀樣 會創作。

  26. 數學軟體應⽤ 90 07 創作機器⼈ f 輸入 輸出 ???? ⼀段⾳樂 到底是要輸入什麼呢?

  27. 數學軟體應⽤ 91 07 創作機器⼈ 結果是訓練兩個神經網路! G D ⽣成器 鑑別器 ⼀⼩段曲⼦

    像 or 不像
 ⼀⼩段曲⼦ 靈感 ⼀⼩段曲⼦ 這就是所謂的⽣成對抗網路 (GAN)!
  28. 數學軟體應⽤ 92 08 ⾃動駕駛 我想要讓電腦 ⾃動開⾞!

  29. 數學軟體應⽤ 93 08 ⾃動駕駛 f 路上情境 ⽅向盤的⾓度 油⾨⼤⼩ 剎⾞⼤⼩ 好像很合理...

  30. 數學軟體應⽤ 94 09 「⾃學型」的 AI 我想讓電腦⾃⼰學會 玩遊戲!

  31. 數學軟體應⽤ 95 09 「⾃學型」的 AI π 輸入 輸出 最好的動作 這樣做通常不⾏!

    どうして?
  32. 數學軟體應⽤ 96 09 「⾃學型」的 AI 原因是訓練資料很難準備! 1 變化太多很難各種 情境都有訓練資料! 2

    以下圍棋為例, 我那 麼會的話... 我那麼會我就 世界冠軍了啊!
  33. 數學軟體應⽤ 97 09 「⾃學型」的 AI 直接學哪個動作最好不容易。於 是我們學習給每個動作「評分」, 通常是計算做了這個動作後「得 分的期望值」。 Q

    輸入 輸出 預期的 reward DNN, CNN, RNN + 這就是強化學習 (reinforcement learning)
  34. 數學軟體應⽤ 98 ⼩結論 對我們想解決的問題, 可能有許多不同的問法!

  35. 數學軟體應⽤ 99 ⼩結論 f 輸入 輸出 x y (再⼀次) 點是⼀次要非常

    明確化成函數的形式, 也就 是要知確實說清楚輸入、輸 出是什麼。
  36. 數學軟體應⽤ 100 我們常常會碰到這樣的情況... 兔⼦老闆 我想知道怎麼樣紅蘿葡 會長得更快? 你們⽤ AI 做⼤數據分析, 然後交

    出來。
  37. 數學軟體應⽤ 101 你跟他說不⾏, 他會回應這句話... 光這樣問是不⾏的! 為什麼!? 我有數據! 不⾏的原因是沒有把問題化為函 數的形勢。⼤家做 AI

    經驗多了, 遲早會出現這樣對話的場景...
  38. 神經網路 06.

  39. 數學軟體應⽤ 103 深度學習和神經網路 現在 AI ⼤紅的原因是 深度學習有很多突破性 的發展, ⽽深度學習的 核⼼是神經網路。

  40. 數學軟體應⽤ 104 假設我們確定要學哪個函數了 f x1 x2 xn y1 y2 ym

    也就是我們輸入和輸出都很 明確, 明確到輸入輸出的⼤⼩ 當然也都確定了!
  41. 數學軟體應⽤ 105 接下來就是要打造函數學習機 我們要⽤深度學習 (神 經網路) 的⽅法, 打造 ⼀台函數學習機! വᏐ

    ላशػ
  42. 數學軟體應⽤ 106 神經網路暗⿊學習法! 這個世界有個近乎全能 的暗⿊函數學習法 神經網路

  43. 數學軟體應⽤ 107 神經網路暗⿊學習法! 還有數學定理證明 「⼀個隱藏層」的神 經網路就能學會你要 學的函數! Universal Approximation Theorem

  44. 數學軟體應⽤ 108 神經網路暗⿊學習法! ⽽且我們不⽤知道函 數長什麼樣⼦ (線性 啦、多項式樣啦等 等)!

  45. 數學軟體應⽤ 109 神經網路暗⿊學習法! Hidden Layer Output Layer Input Layer 暗⿊魔法

    如同魔法般的, 你問好問 題 、準備好資料, 神經網 路就告訴你函數應該長 什麼樣⼦!
  46. 數學軟體應⽤ 110 神經網路暗⿊學習法! 在 1980-1990 年代可以說紅極⼀時!

  47. 數學軟體應⽤ 111 魔法光茫不再!? 有⼀陣⼦如果研究計畫說要 研究「神經網路」, 那計畫還 沒送出就可以確定不會通過! 然後它就死掉了...

  48. 數學軟體應⽤ 112 為什麼上個世紀神經網路沒有預期成功? 複雜的軟體 電腦計算能⼒ ⼤ 的數據 三⼤要件當時不具⾜。 Yann LeCun

  49. 數學軟體應⽤ 113 到了現在, 情況完全不⼀樣了! 比起上個世紀, 要寫個 強強的深度學習程式, 真的太容易了!

  50. 數學軟體應⽤ 114 神經網路新時代! Human-level control through deep reinforcement learning ”

    “ DeepMind 2015-2-26 Deep Q- Learning letter 原來電腦可以⾃已學 會做⼀些複雜的任務!
  51. 數學軟體應⽤ 115 神經網路新時代! Deep Learning “ LeCun-Bengio-Hinton 2015-5-28 http://bit.ly/ai_history 介紹

    Deep Learning「三巨頭」 的故事。 延申閱讀 度過神經網路寒冬的 三巨頭, ⼀起宣告 deep learning 時代 的來臨! ”
  52. 數學軟體應⽤ 116 神經網路新時代! Deep Learning 打敗 世界棋王, 讓⼤家⼤ ⼤期待 deep

    learning 的能⼒! ” Mastering the game of Go with deep neural networks and tree search” “ DeepMind 2016-2-26
  53. 數學軟體應⽤ 117 再⼀次, 就這三⼤天王改變了全世界! DNN CNN RNN 我們會來⼀⼀介紹這 些神經網路架構有什 麼特點。

  54. 神經網路標準版 DNN 07.

  55. 數學軟體應⽤ 119 全連結神經網路 (DNN) Fully Connected Neural Networks 1980 年代就火紅的

    model
  56. 數學軟體應⽤ 120 全連結神經網路 (DNN) 只需要決定兩組數字, 神經網路 就決定了! 1. 幾層隱藏層 2.

    每層幾個神經元 層層之間的神經元是完全連結 的。
  57. 數學軟體應⽤ 121 深度學習就是建⼀層層「隱藏層」 x ̂ y input layer hidden layers

    output layer DNN, CNN, RNN 嚴格說是每 ⼀層都可以決定是要⽤三種之 中, 哪⼀種⽅式做隱藏層的設 計。
  58. 數學軟體應⽤ 122 深度學習就是建⼀層層「隱藏層」 x 1 x 2 x n h

    1 h 2 h k x h ℱ 1 全連結層 (Dense) 卷積層 (Conv) 遞歸層 (LSTM, GRU) 差不多就是決定 幾個神經元就結 束了。 隱藏層基本上就三種選擇: DNN CNN RNN
  59. 數學軟體應⽤ 123 神經元怎麼運作 不管哪種神經網路, 神 經元就是基本的運算 單元, ⽽每個神經元的 運算⽅式是⼀樣的!

  60. 數學軟體應⽤ 124 神經元怎麼運作 每個神經元就是接受 若⼲個刺激輸入, 然後 送出⼀個刺激輸出。

  61. 數學軟體應⽤ 125 神經元怎麼運作 我們先要這個神經元接受到的 總刺激。 3 ∑ i=1 w i

    x i
  62. 數學軟體應⽤ 126 神經元怎麼運作 接著加上偏值 (bias), 做⼀個基 準的調整。不管是權 、偏值 都是要經過學習得到的! 這裡我

    們估且稱調整後的總刺激。 3 ∑ i=1 w i x i 3 ∑ i=1 w i x i + b b
  63. 數學軟體應⽤ 127 神經元怎麼運作 ⽬前的計算都是線性的, 即使經所 有神經元算還是線性的, 因此我們 需經⼀個激發函數 (activation function)

    轉換再送出。 φ( 3 ∑ i=1 w i x i + b) = h φ( ) = h
  64. 數學軟體應⽤ 128 激發函數 以下我們介紹幾個有名的激發函數。 ReLU Sigmoid Gaussian 本世紀新寵! 感覺應該很接近⼈ 類神經元的動作。

    舊時代的懷念, 已 很少使⽤。
  65. 數學軟體應⽤ 129 把⾃⼰當⼀個神經元! 現在把⾃⼰當成⼀個 神經元, ⽤ ReLU 做 我們的激發函數。

  66. 數學軟體應⽤ 130 把⾃⼰當⼀個神經元! 權 和偏值都是學來 的, 但⼀開始我們會隨 機給⼀個值。 1 2

    1 假設初始化得到: w 1 = 1 w 2 = 2 b 1 = 1
  67. 數學軟體應⽤ 131 把⾃⼰當⼀個神經元! 記得我們神經元的計算⽅式。現 在有任何輸入我們都應該知道該 怎麼輸出了。 1 2 1 1

    1 2
  68. 數學軟體應⽤ 132 把⾃⼰當⼀個神經元! 比如說我們接到 的輸入, 輸出應該是多少呢? 1 2 1 1

    1 2 x = (x 1 , x 2 ) = (1,3) 1 3
  69. 數學軟體應⽤ 133 把⾃⼰當⼀個神經元! 計算調整後 的加權和。 1 2 1 1 3

    1 1 2 8 1 3 × ×
  70. 數學軟體應⽤ 134 把⾃⼰當⼀個神經元! 因為⽤了可愛 的 ReLU, 會得 到輸出正是 8! 1

    2 1 1 3 8 φ(8) = 8
  71. 數學軟體應⽤ 135 函數學習機建造完成! 我們會把所有要學習的參數, 包括所有的權 、所有的偏 值, 合併起來叫做: θ

  72. 數學軟體應⽤ 136 函數學習機建造完成! 當決定了權 、參數, 也就是 ⼀組 的值, 我們輪入任意的 數值,

    神經網路就會吐出⼀個 輸出給我們了! θ വᏐ ላशػ 完成!