人工智慧07_迴歸方法(智慧交通)

Description
1. 人工智慧 教師:陳志華博士 2. 報告大綱-迴歸方法(智慧交通) 智慧交通應用 人工智慧方法 ◦ 線性迴歸(最小平方法) ◦…

Please download to get full document.

View again

of 60
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Information
Category:

Engineering

Publish on:

Views: 6 | Pages: 60

Extension: PDF | Download: 0

Share
Transcript
  • 1. 人工智慧 教師:陳志華博士
  • 2. 報告大綱-迴歸方法(智慧交通) 智慧交通應用 人工智慧方法 ◦ 線性迴歸(最小平方法) ◦ 線性迴歸(梯度下降法) 智慧交通應用方法 迴歸方法實作 迴歸方法應用案例 2
  • 3. 智慧交通應用 常見的交通資訊收集方法 ◦ 車輛偵測器(Vehicle Detector, VD) ◦ 電子標籤偵測器(eTag Detector, ETD) ◦ 探偵車(Probe Car, PC) ◦ 蜂巢流動車輛資料(Cellular Floating Vehicle Data, CFVD) 交通資訊三元素 ◦ 車速(Vehicle Speed) ◦ 流量(Flow) ◦ 密度(Density) 探偵車限制 ◦ 探偵車可回報車速 ◦ 無法取得流量和密度資訊 ◦ 本研究目的為運用車速估計密度和流量 3
  • 4. 智慧交通應用-車載資通訊 交通資訊收集方法 ◦ 車輛偵測器(Vehicle Detector, VD) ◦ 電子標籤偵測器(eTag Detector, ETD) ◦ 探偵車(Probe Car, PC) ◦ 蜂巢流動車輛資料(Cellular Floating Vehicle Data, CFVD) 4 台9新店 台9坪林 台9頭城 台2頭城 台2大里 台2丙平溪 台2丙暖暖 台2瑞濱 台2福隆 探偵車與車載隨意網路(Vehicular Ad Hoc Network, VANET) 圖片來源:http://iwin.sjtu.edu.cn/sub/iov/ 國道3號替代道路 車輛偵測器和電子 標籤偵測器
  • 5. 智慧交通應用-交通三元素 流量(Flow): ◦ 在時間單位內通過的車輛數 ◦ Q (車輛數/小時) 時間平均車速(Time Mean Speed, TMS): ◦ 一個空間點一段時間內的平均車速 ◦ Ut (公里/小時) 空間平均車速(Space Mean Speed, SMS): ◦ 一段空間距離內的平均車速 ◦ Us (公里/小時) 密度(Density): ◦ 在空間單位內的車輛數 ◦ K (車輛數/公里) = Q / Ut 旅行時間(Travel Time): ◦ 經過一段空間距離花費的時間差 ◦ T (小時) = 距離 / Us 5 道路 Us VD1 偵測得到Q和Ut VD2 可用eTag偵測器得到 可用車輛偵測器(Vehicle Detector, VD)得到 空間平均車速(SMS)可直接與距離進行計算取得 「旅行時間」,旅行時間資訊對政府和用路人較重要
  • 6. 智慧交通應用-交通三元素 流量與車速關係 ◦ 橫向U型 密度與車速關係 ◦ 呈反比 密度與流量關係 ◦ 倒立U型 6 流量與車速關係 密度與流量關係密度與車速關係 流量2028輛/小時, 時速12公里/小時 前面路段塞車,故車流 進不來,車速也不快 1 2 3 32 1 道路順暢,正常車速 有點塞車, 流量增加,車速減慢 道路順暢,正常車速 道路上的車輛很多, 塞車狀態,車速下降 密度42輛/公里/車道, 流量2028輛/小時, 時速12公里/小時 此例為4個車道
  • 7. 智慧交通應用-交通三元素 Green shield’s model (1935)(線性模型) Pipes’ generalized model (冪次模型) 7 模型公式參考來源: 1. T.V. Mathew, “Chapter 3 Traffic Stream Models,” Transportation Systems Engineering, 2014. 2. M. Jabeena, “Comparative Study Of Traffic Flow Models And Data Retrieval Methods From Video Graphs,” Journal of Engineering Research and Applications, vol. 3, no. 6, pp. 1087-1093, 2013.          j f k k uu 1                  n j f k k uu 1 Greenberg’s logarithmic model (1959)(對數模型) Underwood exponential model (1961)(指數模型)        k k uu j 1ln0 0k k f euu    uf: free flow speed  kj: jam density  u0: optimum speed  k0: optimum density
  • 8. 智慧交通應用-交通三元素 Green shield’s model (1935)(線性模型) Pipes’ generalized model (冪次模型) 8 Greenberg’s logarithmic model (1959)(對數模型) Underwood exponential model (1961)(指數模型) 0 50 100 150 200 250 300 350 400 450 0 10 20 30 40 50 60 70 80 Speed(km/hr) Density (car/km/lane) Speed Estimation          j f k k uu 1                  n j f k k uu 1        k k uu j 1ln0 0k k f euu   uf kj  uf: free flow speed  kj: jam density  u0: optimum speed  k0: optimum density
  • 9. 0 20000 40000 60000 80000 100000 120000 140000 160000 0 20 40 60 80 100 120 Flow(car/hr) Speed (km/hr) Flow (per hr) Estimation 智慧交通應用-交通三元素 Green shield’s model (1935)(線性模型) Pipes’ generalized model (冪次模型) 9 Greenberg’s logarithmic model (1959)(對數模型) Underwood exponential model (1961)(指數模型)  uf: free flow speed  kj: jam density  u0: optimum speed  k0: optimum density          j f k k uu 1                  n j f k k uu 1        k k uu j 1ln0 0k k f euu   u0, k0
  • 10. 人工智慧方法 線性迴歸(最小平方法) 線性迴歸(梯度下降法) 10
  • 11. 線性迴歸(最小平方法) 資料分佈呈現線性分佈 ◦ 共有5筆資料 ◦ 資料分佈如右圖的藍點 11 X Y 0.1 0.3 0.2 0.4 0.3 0.5 0.4 0.6 0.5 0.7 0 0.2 0.4 0.6 0.8 1 0 0.1 0.2 0.3 0.4 0.5 0.6 y x 想像有一條迴歸線(以紅色表示)的存在, 可以讓每個點(以藍色表示)到迴歸線之間的 距離最小
  • 12. 線性迴歸(最小平方法) 資料分佈呈現線性分佈 線性迴歸 ◦ 線性函式 ◦ 機器學習後結果 12 X Y 0.1 0.3 0.2 0.4 0.3 0.5 0.4 0.6 0.5 0.7 0 0.2 0.4 0.6 0.8 1 0 0.1 0.2 0.3 0.4 0.5 0.6 y x 想像有一條迴歸線(以紅色表示)的存在, 可以讓每個點(以藍色表示)到迴歸線之間的 距離最小 bxwy ˆ 2.01ˆ  xy 迴歸線(以紅色表示)為 2.01  xy
  • 13. 線性迴歸(最小平方法) 資料分佈呈現線性分佈 線性迴歸 ◦ 線性函式 ◦ 機器學習後結果 13 X Y X-X平均 Y-Y平均 0.1 0.3 -0.2 -0.2 0.2 0.4 -0.1 -0.1 0.3 0.5 0 0 0.4 0.6 0.1 0.1 0.5 0.7 0.2 0.2 bxwy ˆ 2.01ˆ  xy            n i i n i ii xx yyxx w 1 2 1 線性迴歸公式 xwyb                                1 2.02.01.01.0001.01.02.02.0 2.02.01.01.0001.01.02.02.0    w 2.03.015.0 b 運用最小平方法可以證明 此案例計算結果  X平均為0.3  Y平均為0.5
  • 14. 線性迴歸(最小平方法) 線性迴歸公式證明 14                            n i ii n i ii n i ii n i ii n i yyxxw xwyxwy xwyb ybxwe 1 2 1 2 1 2 1 2 1 2 運用最小平方法可以證明             n i i n i iin i ii zzzf 1 2 1 1 2 min    定理                      n i i n i iii n i ii xx yyxx w yyxxwwf 1 2 1 1 2 min 相關係數 (Correlation Coefficient)
  • 15. 線性迴歸(最小平方法) 線性迴歸公式證明 定理證明 15                                      n i i n i iin i ii n i i n i ii n i i n i iii n i iii n i ii zz zz z z f zzf 1 2 1 11 2 11 2 1 2 1 1 2 00 02 min               2 2 2 2 0 0 02 min i ii iii iii iii iii ii z z z z z z g zzg                  對z偏微分,令一階導 函數為0,即為最小值
  • 16. 線性迴歸(最小平方法) 統計學中的R2意涵 ◦ 執行迴歸分析研究之後,使用的模式與這些量測數據有多大的符合性? ◦ 常用判別標準為R2決定係數(Coefficient of Determination),反應自變數和應變數間的關聯性 16           n i n i yy yy R 1 2 1 2 2 ˆ 當自變數和應變數高度相關時,R2為1 當自變數和應變數互相獨立時,R2為0 x y 0.1 0.3 0.3 -0.2 -0.2 0.2 0.4 0.4 -0.1 -0.1 0.3 0.5 0.5 0 0 0.4 0.6 0.6 0.1 0.1 0.5 0.7 0.7 0.2 0.2 2.01ˆ  xy yˆ yy ˆ yy          1 2.01.001.02.0 2.01.001.02.0 22222 22222 2    R
  • 17. 17 0 0.05 0.1 0.15 0.2 0.25 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 F w 線性迴歸(梯度下降法) 如何找曲線的相對低點? 如何讓w值向相對低點邁進?     25.0 5.0 2 2   ww wwF 12    w w F 目標函式 函式切線斜率 w=0.5時, F函式相對低點 對w微分 F函式之一階導函數 Iteration w F 1 0.000 0.250 -0.100 2 0.100 0.160 -0.080 3 0.180 0.102 -0.064 4 0.244 0.066 -0.051 5 0.295 0.042 -0.041 6 0.336 0.027 -0.033 7 0.369 0.017 -0.026 8 0.395 0.011 -0.021 9 0.416 0.007 -0.017 10 0.433 0.005 -0.013  12 w 0 0.05 0.1 0.15 0.2 0.25 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 F w 當w=0時,斜率為-1 當w=1時,斜率為1 斜率絕對值越大,則 所需修正幅度越大 當w=0.25時,斜率為-0.5 所需修正幅度較小  12     ww w F ww   為學習率 避免一次跳太遠    1.0 1021.00  w   18.0 11.021.01.0  w Iteration 2的w值 Iteration 3的w值 1.0 當經過63個Interation 後,w值將修正為0.5, 並且不需再修正(收斂) 用前一個Iteration 的w值減去斜率為 新的w值 當w=0.5時,斜率為0 斜率為0時,代表為相 對低點,不需修正
  • 18. 線性迴歸(梯度下降法) 學習率的作用? 18 Iteration w F 1 0.000 0.250 -1.000 2 1.000 0.250 1.000 3 0.000 0.250 -1.000 4 1.000 0.250 1.000 5 0.000 0.250 -1.000 6 1.000 0.250 1.000 7 0.000 0.250 -1.000 8 1.000 0.250 1.000 9 0.000 0.250 -1.000 10 1.000 0.250 1.000 Iteration w F 1 0.000 0.250 -0.900 2 0.900 0.160 0.720 3 0.180 0.102 -0.576 4 0.756 0.066 0.461 5 0.295 0.042 -0.369 6 0.664 0.027 0.295 7 0.369 0.017 -0.236 8 0.605 0.011 0.189 9 0.416 0.007 -0.151 10 0.567 0.005 0.121 學習率 為0.9  12 w  12 w  學習率 為1 0 0.05 0.1 0.15 0.2 0.25 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 F w  12  www 學習率過大, w在0和1兩個值之 間擺盪,無法收斂 0 0.05 0.1 0.15 0.2 0.25 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 F w  129.0  www 學習率大時,擺盪 幅度較大 在複雜的情境中可 能錯過全域最佳解 經過63個Interation 後收斂
  • 19. 線性迴歸(梯度下降法) 多個參數之目標函式 19     22 2 2 , bwbw bwbwF   目標函式 bw w F 22    函式切線斜率(對w偏微分) bw b F 22    函式切線斜率(對b偏微分) w修正方式 b修正方式  bww w F ww 22       bwb b F bb 22      w+b=0時, F函式相對低點 0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1F w    bwbb bwww 221.0 221.0   經過17個Interation 後收斂 w=0且b=0 Iteration w b F 1 1.000 1.000 4.000 0.400 2 0.600 0.600 1.440 0.240 3 0.360 0.360 0.518 0.144 4 0.216 0.216 0.187 0.086 5 0.130 0.130 0.067 0.052 6 0.078 0.078 0.024 0.031 7 0.047 0.047 0.009 0.019 8 0.028 0.028 0.003 0.011 9 0.017 0.017 0.001 0.007 10 0.010 0.010 0.000 0.004  bw 22  學習率 為0.1
  • 20. 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.9 0.91 0.92 0.93 0.94 0.95 0.96 0.97 0.98 0.99 1F w    bwbb bwww 221.0 221.0   經過13個Interation 後收斂 w=0.9且b=-0.9 線性迴歸(梯度下降法) 多個參數之目標函式 20     22 2 2 , bwbw bwbwF   目標函式 bw w F 22    函式切線斜率(對w偏微分) bw b F 22    函式切線斜率(對b偏微分) w修正方式 b修正方式  bww w F ww 22       bwb b F bb 22      Iteration w b F 1 1.000 -0.800 0.040 0.040 2 0.960 -0.840 0.014 0.024 3 0.936 -0.864 0.005 0.014 4 0.922 -0.878 0.002 0.009 5 0.913 -0.887 0.001 0.005 6 0.908 -0.892 0.000 0.003 7 0.905 -0.895 0.000 0.002 8 0.903 -0.897 0.000 0.001 9 0.902 -0.898 0.000 0.001 10 0.901 -0.899 0.000 0.000  bw 22   w+b=0有無限多組解: • w = 0, b = 0 • w = 0.9, b = -0.9 • w = 1, b = -1 學習率 為0.1
  • 21. 線性迴歸(梯度下降法) 梯度下降法應用於線性迴歸之權重和誤差項 21 bxwy  線性迴歸函式 (真值) bxwy ˆˆˆ     2 ˆˆ,ˆ yybwF                 12 ˆ ˆˆ ˆ2 ˆ ˆ ˆ2 ˆ ˆ ˆ 2              b bxwbxw yy b yy yy b yy b F 函式切線斜率(對 偏微分) 函式切線斜率(對 偏微分) 線性迴歸函式 (估計值) 目標函式 wˆ bˆ 修正方式 修正方式wˆ bˆ   xw w F ww      2ˆ ˆ ˆˆ   12ˆ ˆ ˆˆ      b b F bb 令    yy ˆ 令    yy ˆ                x w bxwbxw yy w yy yy w yy w F             2 ˆ ˆˆ ˆ2 ˆ ˆ ˆ2 ˆ ˆ ˆ 2
  • 22. 線性迴歸(梯度下降法) 梯度下降法應用於線性迴歸之權重和誤差項 22 Iteration x w b y F 1 0.10 1.00 0.00 0.10 0.50 0.50 0.55 0.20 0.06 0.63 2 0.20 1.00 0.00 0.20 0.44 -0.13 -0.04 0.06 -0.07 -0.34 3 0.30 1.00 0.00 0.30 0.50 0.21 0.36 0.00 0.03 0.09 4 0.40 1.00 0.00 0.40 0.48 0.12 0.32 0.01 -0.05 -0.12 5 0.50 1.00 0.00 0.50 0.53 0.24 0.51 0.00 0.00 0.01 6 0.10 1.00 0.00 0.10 0.52 0.23 0.29 0.03 0.03 0.26 7 0.20 1.00 0.00 0.20 0.50 -0.03 0.07 0.02 -0.04 -0.18 8 0.30 1.00 0.00 0.30 0.53 0.15 0.31 0.00 0.00 0.02 9 0.40 1.00 0.00 0.40 0.53 0.14 0.35 0.00 -0.03 -0.07 10 0.50 1.00 0.00 0.50 0.56 0.21 0.49 0.00 -0.01 -0.02 yˆwˆ bˆ 0 0.05 0.1 0.15 0.2 0.25 0.4 0.5 0.6 0.7 0.8 0.9 1 F wwˆ 學習率 為0.7 經過770個Interation 後收斂   x 2   12  經過770個Interation後, 為1, 為0wˆ bˆ 以 為例01  xy
  • 23. 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0 0.1 0.2 0.3 0.4 0.5 F w 線性迴歸(梯度下降法) 梯度下降法應用於線性迴歸之權重和誤差項,採用mini-batch計算方式 23 Iteration x w b y 1 0.10 1.00 0.00 0.10 0.50 0.50 0.55 -0.45 0.20 1.00 0.00 0.20 0.50 0.50 0.60 -0.40 0.30 1.00 0.00 0.30 0.50 0.50 0.65 -0.35 0.40 1.00 0.00 0.40 0.50 0.50 0.70 -0.30 0.50 1.00 0.00 0.50 0.50 0.50 0.75 -0.25 -0.35 0.25 0.49 2 0.10 1.00 0.00 0.10 0.26 0.01 0.04 0.06 0.20 1.00 0.00 0.20 0.26 0.01 0.06 0.14 0.30 1.00 0.00 0.30 0.26 0.01 0.09 0.21 0.40 1.00 0.00 0.40 0.26 0.01 0.11 0.29 0.50 1.00 0.00 0.50 0.26 0.01 0.14 0.36 0.21 -0.15 -0.30 yˆwˆ bˆ 以 為例01  xy wˆ 學習率 為0.7 經過11個Interation後 收斂   x 2   12  經過11個Interation後, 為0.35, 為0.2wˆ bˆ   假設mini-batch為5 在此案例中,mini-batch可以加速 收斂,但卻陷入區域最佳解 未採用mini-batch為計算完每一筆都要修正權重組合 採用mini-batch,則計算完每個batch後,再修正權重組合
  • 24. 智慧交通應用方法 訓練階段 ◦ 收集車輛偵測器車速、流量、密度資訊 ◦ 訓練車速與密度線性迴歸模型 ◦ 訓練當下車速與未來車速線性迴歸模型 作為預測未來車速使用 執行階段 ◦ 收集探偵車回報之車速資訊 ◦ 將當下車速代入「車速與密度線性迴歸 模型」取得密度估計值 ◦ 運用當下車速和密度估計值推估流量 ◦ 將當下車速代入「當下車速與未來車速 線性迴歸模型」預測未來車速 24
  • 25. 智慧交通應用方法 交通部高速公路局提供國道交通資訊之 即時資料和歷史資料 即時資料庫連結 ◦ http://tisvcloud.freeway.gov.tw/ 歷史資料庫連結 ◦ http://tisvcloud.freeway.gov.tw/history/ 可取得車輛偵測器(VD)資料進行分析 ◦ 車輛偵測器預設只有流量和車速 ◦ 密度可運用公式取得 ◦ 密度 = 流量 / 車速 25
  • 26. 智慧交通應用方法 建立「車速與密度線性迴歸模型」 ◦ X為「車速」 ◦ Y為「密度」 以右表之前3筆資料為例 26 作為「X」 作為「Y」 X Y X-X平均 Y-Y平均 88.2227 8.3992 0.229633 1.124833 89.0733 6.4329 1.080233 -0.84147 86.6832 6.991 -1.30987 -0.28337                   0952.0 30987.130987.1080233.1080233.1229633.0229633.0 2837.030987.184147.0080233.1124833.1229633.0    w   6531.1599307.8709522.0274367.7 b   6531.150952.0  xy  X平均為87.99307  Y平均為7.274367
  • 27. 智慧交通應用方法 建立「車速與密度線性迴歸模型」 ◦ X為「車速」 ◦ Y為「密度」 以右表之前3筆資料為例 27 作為「X」 作為「Y」 車速(X) 密度(Y) 密度估計值 88.2227 8.3992 7.2525 89.0733 6.4329 7.1715 86.6832 6.991 7.3991   6531.150952.0  xbxwy   2525.76531.152227.880952.01 y   1715.76531.150733.890952.02 y   3991.76531.156832.860952.03 y  w為-0.0952  b為15.6531
  • 28. 智慧交通應用方法 建立「車速與密度線性迴歸模型」 ◦ X為「車速」 ◦ Y為「密度」 以右表之前3筆資料為例 28 作為「X」 作為「Y」 車速 密度估計值 流量 流量估計值 88.2227 7.2525 2964 2559.3408 89.0733 7.1715 2292 2555.1590 86.6832 7.3991 2424 2565.5081 車道數 KUQ 3408.255942525.72227.881 Q 1590.255541715.70733.892 Q 5081.256543991.76832.863 Q  車道數為4
  • 29. 迴歸方法實作 用Microsoft Excel開啟「車速與密度線 性迴歸模型資料.csv」 運用MIN()函式,計算車速最小值、密 度最小值 運用MAX()函式,計算車速最大值、密 度最大值 29
  • 30. 迴歸方法實作 新增「Speed」欄位 運用正規化公式,計算車速每一筆資料 ◦ 正規化公式: ◦ (原資料 – 最小值) / (最大值 – 最小值) 30
  • 31. 迴歸方法實作 新增「Density」欄位 運用正規化公式,計算密度每一筆資料 ◦ 正規化公式: ◦ (原資料 – 最小值) / (最大值 – 最小值) 31
  • 32. 迴歸方法實作 另存新檔為「車速與密度線性迴歸模型 資料(正規化後).csv」 32
  • 33. 迴歸方法實作 #安裝neuralnet函式庫 install.packages('neuralnet') #引用neuralnet函式庫 library(neuralnet) 33 使用神經網路套件 「neuralnet」, 運用梯度下降計算 線性迴歸參數值
  • 34. 迴歸方法實作 #讀取訓練資料 training_data <- read.csv(file.choose(), header = TRUE) 34
  • 35. 迴歸方法實作 #設定亂數種子 set.seed(1) #訓練線性迴歸 model <- neuralnet(Density ~ Speed, training_data, hidden=c(0), linear.output = TRUE) #繪製線性迴歸 plot(model) 35 設定固定的亂數種子, 讓權重初始值可以一致 設定輸出參數為Density 設定輸入參數為Speed 設定隱藏層為0個神經元 採用線性函式
  • 36. 迴歸方法實作 #讀取測試資料 testing_data <- read.csv(file.choose(), header = TRUE) testing_data_input <- subset(testing_data, select = -Density) 36 估計使用之測試資料,僅 保留輸入參數之資料屬性
  • 37. 迴歸方法實作 #將測試資料代入模型進行預測,並取得 預測結果 pred <- compute(model, testing_data_input) #運用呈現估計結果 print(pred$net.result) 37 運 用 compute 函式估計資料
  • 38. 迴歸方法實作 執行程式,並取得估計結果 38 估計結果 線性迴歸模型
  • 39. 迴歸方法實作 用Microsoft Excel開啟「當下車速與未 來車速線性迴歸模型資料.csv」 運用MIN()函式,計算當下車速最小值、 未來車速最小值 運用MAX()函式,計算當下車速最大值、 未來車速最大值 39
  • 40. 迴歸方法實作 新增「Current」欄位,計算當下車速 運用正規化公式,計算當下車速每一筆 資料 ◦ 正規化公式: ◦ (原資料 – 最小值) / (最大值 – 最小值) 40
  • 41. 迴歸方法實作 新增「Future」欄位,計算未來車速 運用正規化公式,計算未來車速每一筆 資料 ◦ 正規化公式: ◦ (原資料 – 最小值) / (最大值 – 最小值) 41
  • 42. 迴歸方法實作 另存新檔為「當下車速與未來車速線性 迴歸模型資料(正規化後).csv」 42
  • 43. 迴歸方法實作 #安裝neuralnet函式庫 install.packages('neuralnet') #引用neuralnet函式庫 library(neuralnet) 43 使用神經網路套件 「neuralnet」, 運用梯度下降計算 線性迴歸參數值
  • 44. 迴歸方法實作 #讀取訓練資料 training_data <- read.csv(file.choose(), header = TRUE) 44
  • 45. 迴歸方法實作 #設定亂數種子 set.seed(1) #訓練線性迴歸 model <- neuralnet(Future ~ Current, training_data, hidden=c(0), linear.output = TRUE) #繪製線性迴歸 plot(model) 45 設定固定的亂數種子, 讓權重初始值可以一致 設定輸出參數為Future 設定輸入參數為Current 設定隱藏層為0個神經元 採用線性函式
  • 46. 迴歸方法實作 #讀取測試資料 testing_data <- read.csv(file.choose(), header = TRUE) testing_data_input <- subset(testing_data, select = -Future) 46 估計使用之測試資料,僅 保留輸入參數之資料屬性
  • 47. 迴歸方法實作 #將測試資料代入模型進行預測,並取得 預測結果 pred <- compute(model, testing_data_input) #運用呈現估計結果 print(pred$net.result) 47 運 用 compute 函式估計資料
  • 48. 迴歸方法實作 執行程式,並取得估計結果 48 估計結果 線性迴歸模型
  • 49. 迴歸方法應用案例 開放資料-臺灣證券交易所 ◦ 網址: http://www.twse.com.tw/zh/page/trading/ex change/FMTQIK.html 資料集服務分類 ◦ 盤後資訊 ◦ 臺灣跨市場指數 ◦ TWSE自行編製指數 ◦ 與FTSE合作編製指數 ◦ 與銳聯合作編製指數 ◦ 與S&PDJI合作編製指數 ◦ 升降幅度/首五日無漲跌幅 ◦ 當日沖銷交易標的及統計 ◦ 融資融券與可借券賣出額度 49
  • 50. 迴歸方法應用案例 選擇資料日期和股票代碼 本例資料日期以2017年為例 挑選電信業者股票代碼 ◦ 2412中華電 ◦ 3045台灣大 ◦ 3682亞太電 ◦ 4904遠傳 50
  • 51. 迴歸方法應用案例 將目標個股每個月的加權平均價存到Excel 依漲跌情況,漲以1表示,跌以0表示,編碼為0、1二元表, 51 個股每個月加權平均價 個股漲跌二元表 漲以1表示,跌以0表示
  • 52. 迴歸方法應用案例 將個股漲跌二元表存成CSV檔 作為關聯規則學習的訓練資料 52 中華電欄位更名為Class
  • 53. 迴歸方法應用案例 #安裝neuralnet函式庫 install.packages('neuralnet') #引用neuralnet函式庫 library(neuralnet) 53 使用神經網路套件 「neuralnet」, 運用梯度下降計算 線性迴歸參數值
  • 54. 迴歸方法應用案例 #讀取訓練資料 training_data <- read.csv(file.choose(), header = TRUE) 54
  • 55. 迴歸方法應用案例 name <- names(training_data) formula <- as.formula(paste("Class ~", paste(name[!name %in% "Class"], collapse = " + "))) 55 取得輸出入參數組合為「Class ~ 台灣大 _漲 + 亞太電_漲 + 遠傳_漲」 並將輸出入參數組合儲存至formula
  • 56. 迴歸方法應用案例 #設定亂數種子 set.seed(1) #訓練線性迴歸 model <- neuralnet(formula, training_data, hidden=c(0), linear.output = TRUE) #繪製線性迴歸 plot(model) 56 設定固定的亂數種子, 讓權重初始值可以一致 設定輸出入參數組合為 formula 設定隱藏層為0個神經元 採用線性函式
  • 57. 迴歸方法應用案例 #讀取測試資料 testing_data <- read.csv(file.choose(), header = TRUE) testing_data_input <- subset(testing_data, select = -Class) 57 估計使用之測試資料,僅 保留輸入參數之資料屬性
  • 58. 迴歸方法應用案例 #將測試資料代入模型進行預測,並取得 預測結果 pred <- compute(model, testing_data_input) #運用呈現估計結果 table(round(pred$net.result), testing_data$Class) 58 運 用 compute 函式估計資料 運用round函式 取得分類結果
  • 59. 迴歸方法應用案例 執行程式,並取得估計結果 59 線性迴歸模型
  • 60. 迴歸方法應用案例 線性迴歸實驗結果 60 正確答案為 「目標類別」 正確答案為 「非目標類別」 機器答案為 「目標類別」 True Positive (TP) False Positive (FP) (型一(Type I)誤差) 機器答案為 「非目標類別」 False Negative (FN) (型二(Type II)誤差) True Negative (TN) 中華電_跌 中華電_漲 中華電_跌 5 1 中華電_漲 1 4 %83 6 5 Precision    FPTP TP %83 6 5 Recall    FNTP TP
  • We Need Your Support
    Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

    Thanks to everyone for your continued support.

    No, Thanks