Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

初探深度學習技術與應用

2,595 views

Published on

簡報大綱
1. 深度學習在學什麼?
2. 深度學習發展歷程與應用
3. 卷積神經網路
4. 遞歸神經網路
5. 總結與討論

Published in: Data & Analytics
  • Login to see the comments

初探深度學習技術與應用

  1. 1. 初探深度學習技術與應用 主講人:陳志華博士 2017/08/28
  2. 2. 2/31+16 講者簡介  講者:陳志華  學歷:國立交通大學資訊管理與財務金融學系資訊管理博士 國立交通大學網路工程研究所(輔所)  現職:中華電信研究院 / 研究員 國立清華大學工業工程與工程管理學系 / 兼任助理教授  經歷:國立交通大學運輸與物流管理學系 / 兼任助理教授 國立交通大學資訊管理與財務金融學系 / 兼任助理教授 國立交通大學傳播與科技學系 / 兼任助理教授 工業技術研究院服務系統科技中心 / 軟體工程師 聯發科技股份有限公司多媒體技術開發處 / 軟體工程師 IBM China Software Development Lab / Intern  服務:Guest Editor-in-Chief for Symmetry (SCI), IJGI (SCI), IEEE TEE Project Reviewer for Chilean National Commission for Scientific and Technological Research, Chile Project Reviewer for National Research Foundation, Republic of South Africa Program Committee Member for IEEE Globecom, IEEE EDUCON, etc.  研究:國內外發表90篇期刊論文 國內外發表102篇會議論文 國內外發表53件專利 國內外獲獎70件專題競賽、論文競賽
  3. 3. 3/31+16 大綱  深度學習在學什麼?  深度學習發展歷程與應用  卷積神經網路  遞歸神經網路  總結與討論
  4. 4. 4/31+16 深度學習在學什麼?  原始資料  結構化資料  機器學習結果 90 91 92 93 94 95 96 103-2 103-3 103-4 103-5 平均股價 年份-月份 中華電信103年2月-4月平均股價 時間 平均股價 103年2月 90.77 103年3月 92.74 103年4月 93.98 103年5月 ? 輸入值(x) 輸出值(y) 1 90.77 2 92.74 3 93.98   bxwxfy    287.89605.1  xxfy   707.954  fy 中華電信103年5月 平均股價多少? (也就是x=4代入) 95.707 f(x) = f(4) 資料前處理 f(x)為一條趨勢線 深度學習主要就是 在學習「趨勢」 95.707 資料來源:個股月成交資訊,臺灣證券交易所,網址:https://goo.gl/ykB3gA 線性迴歸結果 趨勢線定義: 點到線的距離最小化 機器人圖片來源: Eyebot Chat Room. Url: https://goo.gl/gpMrK9
  5. 5. 5/31+16 101 102 103 104 105 106 107 102-1 102-2 102-3 102-4 平均股價 年份-月份 深度學習在學什麼?  原始資料  結構化資料  機器學習結果 台灣大哥大102年1月-4月平均股價 時間 平均股價 102年1月 105.71 102年2月 104.02 102年3月 102.86 102年4月 102.51 輸入值(x) 輸出值(y) 1 105.71 2 104.02 3 102.86   bxwxfy      05.107425.1  xxfy   35.1014  fy 台灣大哥大102年4 月平均股價多少? (也就是x=4代入) 101.35 f(x) = f(4) 資料前處理 101.35 資料來源:個股月成交資訊,臺灣證券交易所,網址:https://goo.gl/ykB3gA 線性迴歸結果 學習出來的線性趨勢與 真實資料有很大的誤差 真實資料為 「非線性趨勢」 機器人圖片來源: Eyebot Chat Room. Url: https://goo.gl/gpMrK9
  6. 6. 6/31+16 101 102 103 104 105 106 107 102-1 102-2 102-3 102-4 平均股價 年份-月份 深度學習在學什麼?  原始資料  結構化資料  機器學習結果 台灣大哥大102年1月-4月平均股價 時間 平均股價 102年1月 105.71 102年2月 104.02 102年3月 102.86 102年4月 102.51 輸入值(x) 輸出值(y) 1 105.71 2 104.02 3 102.86   ? xfy 台灣大哥大102年4 月平均股價多少? (也就是x=4代入) 期望可以 回答102.51 f(x) = f(4) 資料前處理 資料來源:個股月成交資訊,臺灣證券交易所,網址:https://goo.gl/ykB3gA 期望建立一條 非線性(曲線)趨勢線 真實資料為 「非線性趨勢」 如何讓機器學習得到 非線性(曲線)趨勢線? 機器人圖片來源: Eyebot Chat Room. Url: https://goo.gl/gpMrK9
  7. 7. 7/31+16 0.95 0.96 0.97 0.98 0.99 1 102-1 102-2 102-3 102-4 平均股價 年份-月份 深度學習在學什麼?  原始資料  結構化資料  機器學習結果 台灣大哥大102年1月-4月平均股價 時間 平均股價 102年1月 105.71 102年2月 104.02 102年3月 102.86 102年4月 102.51 輸入值(x) 輸出值(y) 1 1 2 0.984 3 0.973 4 0.970     z e zsxfy bxwz     1 1 台灣大哥大102年4 月平均股價多少? (也就是x=4代入) 預測值0.967 再乘上105.71 回答102.222 f(x) = f(4) 資料前處理 資料來源:個股月成交資訊,臺灣證券交易所,網址:https://goo.gl/ykB3gA 建立一條 非線性(曲線)趨勢線 真實資料為 「非線性趨勢」正規化 同除以 105.71       967.0 1 1 37.34 275.5476.0 37.3      e sfy xz 經由S型函式得到 非線性(曲線)結果 邏輯迴歸結果 機器人圖片來源: Eyebot Chat Room. Url: https://goo.gl/gpMrK9
  8. 8. 8/31+16 深度學習在學什麼?  線性迴歸 vs. 邏輯迴歸  線性迴歸和邏輯迴歸的限制  假設參數之間互相獨立  當參數有交互影響時將會不準  不適合的例子─XOR (互斥或)計算 線性迴歸 邏輯迴歸 輸入值 x X 輸出值 核心函式 線性函式 S型函式   bxwxfy      z e zsxfy bxwz     1 1 w 機器學習無法學會 XOR,所以權重皆接 近為0,全部猜0.5 X1 X2 Y 估計值 0 0 0 0.5 0 1 1 0.5 1 0 1 0.5 1 1 0 0.5 5.0 1 1 0     e 估計值 輸入層 輸出層 輸入層 輸出層
  9. 9. 9/31+16  結構化資料 深度學習在學什麼?  原始資料 月份 遠傳 台灣大 中華電 102年2月 跌 跌 跌 102年3月 跌 跌 跌 102年4月 漲 跌 漲 102年5月 漲 漲 漲 102年6月 漲 跌 跌 102年7月 漲 漲 漲 102年8月 跌 跌 跌 102年9月 跌 跌 漲 102年10月 跌 跌 跌 102年11月 跌 漲 跌 102年12月 跌 跌 漲 103年1月 跌 跌 跌 月份 遠傳 (當月) (X1) 台灣大 ( 當月) (X2) 中華電 (次月) (Y) 102年2月 0 0 0 102年3月 0 0 1 102年4月 1 0 1 102年5月 1 1 0 102年6月 1 0 1 102年7月 1 1 0 102年8月 0 0 1 102年9月 0 0 0 102年10月 0 0 0 102年11月 0 1 1 102年12月 0 0 0 103年1月 0 0 0 電信三雄的股價漲跌狀況 運用「遠傳和台灣大漲跌」預測「中華電漲跌」 12個月份中有10個月份符合 XOR的現象 電信三雄股價是種 XOR現象 用線性迴歸或邏輯迴歸預測會不準 必需要使用「神經網路」 跌為0、漲為1
  10. 10. 10/31+16 深度學習在學什麼?  預測結果 月份 遠傳 (當月) 台灣大 ( 當月) 中華電 (次月) 真實值 中華電 (次月) 估計值 102年2月 0 0 0 0 102年3月 0 0 1 0 102年4月 1 0 1 1 102年5月 1 1 0 0 102年6月 1 0 1 1 102年7月 1 1 0 0 102年8月 0 0 1 0 102年9月 0 0 0 0 102年10月 0 0 0 0 102年11月 0 1 1 1 102年12月 0 0 0 0 103年1月 0 0 0 0 運用「遠傳和台灣大漲跌」預測「中華電漲跌」  當參數有交互影響時,只有一層迴 歸函式(即input直接對到output)將 會不準  可以多加入一層隱藏層,隱藏層中 有2個神經元,透過隱藏層神經元 來分析input參數之間的交互關係  輸入層和隱藏層之間可採用邏輯迴 歸計算,隱藏層和輸出層之間可採 用邏輯迴歸計算 h1 h2 輸入層 隱藏層 輸出層 跌為0、漲為1 預測準確度為 10/12 = 83% 兩筆誤判 其他正確 加入隱藏層 學「深」一點 分析因子相依性 神經網路 多層迴歸
  11. 11. 11/31+16 深度學習在學什麼?  深度學習定義 包含一層隱藏層以上的「神經網路」  深度學習目標 學習資料的「趨勢」  深度學習優勢 經由「隱藏層」分析因子間的相依性  適用情境  運算時間 線性迴歸 < 邏輯迴歸 < 神經網路 適用情境 線性迴歸 邏輯迴歸 神經網路 線性問題 非線性問題 因子間獨立 因子間相依 資 料 來 源 : Yann LeCun, Yoshua Bengio, Geoffrey Hinton, “Deep learning,” Nature, no. 521, pp. 436–444, 2015 加深一層來學習因子相依性
  12. 12. 12/31+16 資料來源: Kasey Panetta, "Gartner’s Top 10 Strategic Technology Trends for 2017," Gartner, 2016. 深度學習發展歷程與應用  Gartner整理之深度學習發展歷程 • 神經網路(Neural Nets, NN) • 遞歸神經網路(Recurrent NN, RNN) • 卷積神經網路(Convolutional NN, CNN) • 自動編碼器(Auto-Encoder, AE) • 受限波茲曼機(Restricted Boltzmann Machine, RBM) • 深度波茲曼機(Deep Boltzmann Machines, DBM)
  13. 13. 13/31+16 深度學習發展歷程與應用  ImageNet帶動影像辨識的成長  ImageNet專案提供1500萬張已標註(labeled)照片, 涵蓋2.2萬種物件  2010年開始每年舉辦ImageNet大規模視覺辨識挑戰賽 (ImageNet Large Scale Visual Recognition Challenge, ILSVRC),吸引Hinton大師、Google、微軟等參賽 每年影像辨識錯誤率 採用深度學習後, 錯誤率降低近10% 方法 年份 錯誤 率 卷積 層數 AlexNet (Hinton) 2012 16% 8 VGG (牛津大學) 2014 7.3% 19 GoogleNet (Google) 2014 6.7% 22 ResNet (微軟) 2015 3.6% 152 重要方法比較 免費開放下載 資料來源:Performance Trends in AI, Otium, 2017. Url: https://goo.gl/W5XhFr 人類辨識錯誤率5.1%,2015年超越人類表現
  14. 14. 14/31+16 深度學習發展歷程與應用  為什麼30年前的卷積神經網路在近幾年才重新崛起?  歸功於硬體運算效率的進步  GPU運算效率大勝CPU,可進行更多的平行運算 資料來源: 1. CPU v/s GPU, E2Matrix.com, 2014. Url: http://www.e2matrix.com/blog/cpu-vs-gpu/ 2. CPU vs GPU performance, Michael Galloy, 2013. Url: http://michaelgalloy.com/2013/06/11/cpu-vs-gpu-performance.html 每秒拾億浮點運算次數 (Giga Floating-Point operations per second, GFLOP/s) CPU vs GPU硬體結構比較 CPU vs GPU硬體結構比較 圖形處理單元(Graphics Processing Unit, GPU)具有多核心的多處理器可 支援平行運算
  15. 15. 15/31+16 深度學習發展歷程與應用  為什麼30年前的卷積神經網路在近幾年才重新崛起?  歸功於硬體運算效率的進步  GPU運算效率大勝CPU,可進行更多的平行運算 資料來源: 1. CPU v/s GPU, E2Matrix.com, 2014. Url: http://www.e2matrix.com/blog/cpu-vs-gpu/ 2. CPU vs GPU performance, Michael Galloy, 2013. Url: http://michaelgalloy.com/2013/06/11/cpu-vs-gpu-performance.html 每秒拾億浮點運算次數 (Giga Floating-Point operations per second, GFLOP/s) CPU vs GPU硬體結構比較 CPU vs GPU硬體結構比較 圖形處理單元(Graphics Processing Unit, GPU)具有多核心的多處理器可 支援平行運算
  16. 16. 16/31+16 深度學習發展歷程與應用 免費開放下載 運用卷積神經 網路分析圖片 特徵 判斷每個區域 內的特徵資訊 判斷區域內的 物件類別 3  如何辨識同一張圖中的多個物件?  柏克萊大學提出區域基礎卷積神經網路(Region-based Convolutional Neural Networks, R-CNN)及其進階版方法, 可以同時辨識出同一張圖的多個物件 2 1 資料來源:Shaoqing Ren, Kaiming He, Ross Girshick,Jian Sun, “Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 39, no. 6, pp. 1137-1149, 2017. 可應用至車流分析
  17. 17. 17/31+16 深度學習發展歷程與應用  Google Cloud Video Intelligence API  上傳影片,自動辨識出影片中所有出現的物件  網址:https://cloud.google.com/video-intelligence/ 可以辨識出影片中 出現的物件 資料來源: Google Cloud Video Intelligence API, Google, 2017. Url: https://cloud.google.com/video-intelligence/
  18. 18. 18/31+16 深度學習發展歷程與應用  Microsoft Azure Computer Vision API  上傳圖片,自動辨識出圖片中出現的物件,並產生圖片說明  網址:https://azure.microsoft.com/en- us/services/cognitive-services/computer-vision/ 可以辨識出影片中 出現的物件 辨識圖片中物件的 關聯,描述主題 資料來源: Microsoft Azure Computer Vision API, Microsoft, 2017. Url: https://azure.microsoft.com/en-us/services/cognitive-services/computer-vision/
  19. 19. 19/31+16 卷積神經網路  卷積神經網路之網路結構 在卷積層經由過濾 器擷取出資料特徵 經由過濾器計算後 的特徵圖 在池層進行資料降 維,節省計算量 經由神經網路對 應目標學習結果
  20. 20. 20/31+16 卷積神經網路  卷積層計算─特徵擷取 假設過濾器為3x3大小 取出原始資料左上角的3x3 區塊與過濾器做矩陣相乘 先往右移動,並進行矩陣相乘 整列完成後,再往下一列移動 移動到最右下角之 3x3區塊計算完成後 即結束卷積層計算 卷積層適用於分析 空間相依
  21. 21. 21/31+16 卷積神經網路  池層計算─資料降維 每2x2大小矩陣取 最大值進行降維
  22. 22. 22/31+16 卷積神經網路  神經網路計算─資料估計(分類) 神經網路 A B 經由神經網路對 應目標學習結果
  23. 23. 23/31+16 卷積神經網路  深度的意涵? 原始資料 卷積層1 過濾器 分析結果 直線 橫線 正斜線 反斜線 弧線 曲線 有/無 直線 有/無 橫線 有/無 正斜線 有/無 反斜線 有/無 弧線 有/無 曲線 卷積層2 過濾器 分析結果 直線 橫線 正斜線 反斜線 弧線 曲線 有/無 正方形 有/無 長方形 有/無 三角形 有/無 菱形 有/無 圓形 有/無 橢圓形 卷積層3 過濾器 分析結果 直線 橫線 正斜線 反斜線 弧線 曲線 有/無 立方體 有/無 長方體 有/無 錐體 有/無 菱面體 有/無 球體 有/無 橢球形 神經網路 是否為 拱橋 是否為 湖泊 是否為 彩虹 是否為 中華電 Logo 第1層可找出 線條特徵 第2層可找出 平面特徵 第3層可找出 立體特徵
  24. 24. 24/31+16 卷積神經網路  為什麼傳統神經網路較難解決空間相依性問題?  直接把像素值攤開,不易取得特徵  直接從像素值對應到分類結果,不易學習  卷積神經網路的優勢  運用過濾器分析空間特徵 如:直線、橫線、斜線、曲線  運用多層卷積層拆解不同維度空間特徵 如:線段、平面、立體、外觀  最後再依拆解出特徵對應到分類結果 神經網路 A B … 輸入層 隱藏層 輸出層 傳統神經網路不易 分析出神經元3和 神經元8是斜線關聯 傳統神經網路把每 個像素值攤開來看, 不易分析特徵 模仿人類辨識物件的方式,先拆解出外觀特徵,再從 外觀特徵來評估目標物件的類別
  25. 25. 25/31+16  原始資料  資料分佈  修整後資料(修整為2筆資料) 遞歸神經網路 Time X Y 1 0.5 0 2 1 0.5 3 0.5 1 4 0 0.5 5 0.5 0 6 1 0.5 7 0.5 1 8 0 0.5 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X Y  隨時間變化,X和Y皆為三角形波形  在此例中,X和Y同時存在正相關和負 相關,故一般神經網路無法學會此現 象,將全部猜0.5  X和Y部分資料(如Time 1 → 2)為 正相關  X和Y部分資料(如Time 2 → 3)為 負相關  資料觀察發現X和Y每4個時間單位為 一個循環,可視為2筆資料進行學習 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 輸入資料 輸出資料 由資料觀察可知每4個 時間單位為一個循環 X為0.5時,Y一半為0,另一半為1 只用「當下」的X值無法估計Y
  26. 26. 26/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態特徵  初始階段設定為0 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態特徵(記憶區)先前狀態特徵(記憶區) 0.5 第1筆t1輸入至遞歸神經網路, 計算神經元1 t1資料 真值:0 估計:0.04 初始階段,無任何記憶 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5  遞歸神經網路的特色在於多了 「記憶」  經由「記憶」紀錄前幾個時間 點的波形特徵(變化趨勢)  可分析時間相依性 0 0 0 0 遞歸神經網路知道是在t1 輸入值(X)為0.5 輸出值(Y)應該是對應到0
  27. 27. 27/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態特徵  紀錄了t1的波形特徵 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態特徵(記憶區)先前狀態特徵(記憶區) 1 第1筆t2輸入至遞歸神經網路, 計算神經元1 t2資料 真值:0.5 估計:0.51 紀錄了t1的波形特徵 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X 0 0.2 0.4 0.6 0.8 1 Value X  遞歸神經網路的特色在於多了 「記憶」  經由「記憶」紀錄前幾個時間 點的波形特徵(變化趨勢)  可分析時間相依性
  28. 28. 28/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態特徵  紀錄了t1~t2的波形特徵 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態特徵(記憶區)先前狀態特徵(記憶區) 0.5 第1筆t3輸入至遞歸神經網路, 計算神經元1 t3資料 真值:1 估計:0.91 紀錄了t1~t2的波形特徵 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X 0 0.2 0.4 0.6 0.8 1 Value X  遞歸神經網路的特色在於多了 「記憶」  經由「記憶」紀錄前幾個時間 點的波形特徵(變化趨勢)  可分析時間相依性 遞歸神經網路知道是在t3 輸入值(X)為0.5 輸出值(Y)應該是對應到1
  29. 29. 29/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態特徵  紀錄了t1~t3的波形特徵 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態特徵(記憶區)先前狀態特徵(記憶區) 0 第1筆t4輸入至遞歸神經網路, 計算神經元1 t4資料 真值:0.5 估計:0.51 紀錄了t1~t3的波形特徵 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X 0 0.2 0.4 0.6 0.8 1 Value X  遞歸神經網路的特色在於多了 「記憶」  經由「記憶」紀錄前幾個時間 點的波形特徵(變化趨勢)  可分析時間相依性
  30. 30. 30/31+16 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X 遞歸神經網路  深度的意涵?  遞歸神經網路適用情境  可解決時間相依性,具時間序列的議題  語音辨識:識別每個聲音波形特徵對應的文字  交通預測:識別每個相鄰路段流量波形特徵對應的未來路況  股市預測:識別每個相關個股股價波形特徵對應的未來股價 Xt1 Yt1 t1資料 神經網路 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X 先前 狀態 Xt2 Yt2 t2資料 神經網路 先前 狀態 Xt3 Yt3 t3資料 神經網路 先前 狀態 Xt4 Yt4 t4資料 神經網路 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X t1特徵 t1~t2特徵 t1~t3特徵 遞歸神經網路適用 於分析時間相依 加深一層,則多記憶 前一狀態資訊
  31. 31. 31/31+16 總結與討論  深度學習目標  學習資料的「趨勢」  深度學習優勢  經由「增加深度(網路層數)」分析因子間的相依性  適用情境 適用情境 線性迴歸 邏輯迴歸 神經網路 卷積 神經網路 遞歸 神經網路 線性問題 非線性問題 因子間獨立 因子間相依 空間相依 時間相依 加深一層來學習因子相依性
  32. 32. 附錄─遞歸神經網路 詳細計算案例
  33. 33. 33/31+16  原始資料  資料分佈  修整後資料(修整為2筆資料) 遞歸神經網路 Time X Y 1 0.5 0 2 1 0.5 3 0.5 1 4 0 0.5 5 0.5 0 6 1 0.5 7 0.5 1 8 0 0.5 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X Y  隨時間變化,X和Y皆為三角形波形  在此例中,X和Y同時存在正相關和負 相關,故一般神經網路無法學會此現 象,將全部猜0.5  X和Y部分資料(如Time 1 → 2)為 正相關  X和Y部分資料(如Time 2 → 3)為 負相關  資料觀察發現X和Y每4個時間單位為 一個循環,可視為2筆資料進行學習 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 輸入資料 輸出資料 由資料觀察可知每4個 時間單位為一個循環 同時存在正相關和負相 關,機器無法學習趨勢
  34. 34. 34/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0 0 0 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 2.782 0.5 0.043 1.543 -2.305 -1.952  先前狀態神經元暫存值(更新後)       801.01 952.10305.20 543.10043.00 782.25.0     zSigmoid z 神經元 神經元1 神經元2 神經元3 神經元4 0.801 0 0 0 第1筆t1輸入至遞歸神經網路, 計算神經元1 乘上權重後, 再代入S型函數 t1資料
  35. 35. 35/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0 0 0 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 0.386 0.5 -3.060 0.323 -0.019 0.220  先前狀態神經元暫存值(更新後)       548.02 220.00019.00 323.00060.30 386.05.0     zSigmoid z 神經元 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0 0 第1筆t1輸入至遞歸神經網路, 計算神經元2 乘上權重後, 再代入S型函數 t1資料
  36. 36. 36/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0 0 0 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 -0.125 0.5 1.297 1.149 1.461 0.400  先前狀態神經元暫存值(更新後)     484.03 400.00461.10 149.10297.10 125.05.0     zSigmoid z 神經元 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0 第1筆t1輸入至遞歸神經網路, 計算神經元3 乘上權重後, 再代入S型函數 t1資料
  37. 37. 37/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0 0 0 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 0.338 0.5 1.886 1.334 -0.529 0.589  先前狀態神經元暫存值(更新後)     542.04 589.00529.00 334.10886.10 338.05.0     zSigmoid z 神經元 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542 第1筆t1輸入至遞歸神經網路, 計算神經元4 乘上權重後, 再代入S型函數 t1資料
  38. 38. 38/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0 0 0 0  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 -2.934  先前狀態神經元暫存值(更新後)       04.0' 819.1542.0543.1.4840 752.4548.0934.2801.0    zSigmoidY z 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542 將隱藏層神經元乘上權重和 代入S型函式計算估計資料Y’ 乘上權重後, 再代入S型函數 -4.752 1.543 1.819 t1資料
  39. 39. 39/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 將隱藏層神經元資料暫存起來 直接複製填入  先前狀態神經元暫存值(更新後) 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542
  40. 40. 40/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 2.782 1 0.043 1.543 -2.305 -1.952  先前狀態神經元暫存值(更新後)       168.01 952.1.5420305.2.4840 543.1.5480043.0.8010 782.21     zSigmoid z 神經元 神經元1 神經元2 神經元3 神經元4 0.816 0.548 0.484 0.542 第1筆t2輸入至遞歸神經網路, 計算神經元1 乘上權重後, 再代入S型函數 t2資料
  41. 41. 41/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 0.386 1 -3.060 0.323 -0.019 0.220  先前狀態神經元暫存值(更新後)       145.02 220.0.5420019.0.4840 323.0.5480060.3.8010 386.01     zSigmoid z 神經元 神經元1 神經元2 神經元3 神經元4 0.816 0.145 0.484 0.542 第1筆t2輸入至遞歸神經網路, 計算神經元2 乘上權重後, 再代入S型函數 t2資料
  42. 42. 42/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.51 1 0.51 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 -0.125 1 1.297 1.149 1.461 0.400  先前狀態神經元暫存值(更新後)     922.03 400.0.5420461.1.4840 149.1.5480297.1.8010 125.01     zSigmoid z 神經元 神經元1 神經元2 神經元3 神經元4 0.816 0.145 0.922 0.542 第1筆t2輸入至遞歸神經網路, 計算神經元3 乘上權重後, 再代入S型函數 t2資料
  43. 43. 43/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 0.338 1 1.886 1.334 -0.529 0.589  先前狀態神經元暫存值(更新後)     934.04 589.0.5420529.0.4840 334.1.5480886.1.8010 338.01     zSigmoid z 神經元 神經元1 神經元2 神經元3 神經元4 0.816 0.145 0.922 0.934 第1筆t2輸入至遞歸神經網路, 計算神經元4 乘上權重後, 再代入S型函數 t2資料
  44. 44. 44/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0.801 0.548 0.484 0.542  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 -2.934  先前狀態神經元暫存值(更新後)       51.0' 819.1934.0543.1.9220 752.4145.0934.2168.0    zSigmoidY z 神經元1 神經元2 神經元3 神經元4 0.816 0.145 0.922 0.934 將隱藏層神經元乘上權重和 代入S型函式計算估計資料Y’ 乘上權重後, 再代入S型函數 -4.752 1.543 1.819 t2資料
  45. 45. 45/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y)  先前狀態神經元暫存值 X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5 神經元1 神經元2 神經元3 神經元4 0.816 0.145 0.922 0.934  建立具有一隱藏層之遞歸神經網路  隱藏層神經元4個 YY XX 先前狀態神經元暫存值先前狀態神經元暫存值 將隱藏層神經元資料暫存起來 直接複製填入  先前狀態神經元暫存值(更新後) 神經元1 神經元2 神經元3 神經元4 0.816 0.145 0.922 0.934
  46. 46. 46/31+16 遞歸神經網路  輸入資料(X)  估計資料(Y’)  輸出資料(Y) X t1 t2 t3 t4 第1筆 0.5 1 0.5 0 第2筆 0.5 1 0.5 0 Y’ t1 t2 t3 t4 第1筆 0.04 0.51 0.91 0.51 第2筆 0.04 0.51 0.91 0.51 Y t1 t2 t3 t4 第1筆 0 0.5 1 0.5 第2筆 0 0.5 1 0.5  依此類推,估計t3和t4資料  計算第2筆時將「先前狀態神經元暫存值」 歸0,並估計t1~t4資料 0 0.2 0.4 0.6 0.8 1 1 2 3 4 5 6 7 8 Value Time X Y' Y 估計結果  將X輸入至遞歸神經網路後,得到估計值Y’  估計值Y’和真值Y的資料趨勢非常近似  遞歸神經網路可學習依時間變化 的趨勢  需先觀察資料變化週期,遞歸神 經網路可學習週期內的資料變化 趨勢
  47. 47. 謝謝大家的聆聽

×