內容提要
R語言具有上手快、效率高的特點,它橫跨金融、生物、醫學、網際網路等多個領域,主要用於統計、建模及可視化。預測是數據挖掘的主要作用之一,也是大數據時代的核心價值所在。基於R語言來做預測,兼具效率和價值的雙重屬性,這是《R語言預測實戰》的一大亮點。
《R語言預測實戰》共分為三部分。第一部分講預測基礎,主要涵蓋預測概念理解、預測方法論、分析方法、特徵技術、模型最佳化及評價,讀者通過這部分內容的學習,可以掌握進行預測的基本步驟和方法思路;第二部分講預測算法,該部分包含了多元回歸分析、複雜回歸分析、時間序列及進階算法,內容比較有難度,需要細心體會;第三部分講預測案例,包括短期日負荷曲線預測和股票價格預測兩個實例,讀者可以了解到實施預測時需要關注的技術細節。
希望讀者在看完《R語言預測實戰》後,能夠將本書的精要融會貫通,進一步在工作和學習實踐中提煉價值。
目錄
第一部分 預測入門篇
第1章 預測入門 2
1.1 什麼是預測 3
1.1.1 預測的定義 3
1.1.2 預測的特點 4
1.1.3 預測的分類 4
1.1.4 預測的基本原則 5
1.2 大數據與預測 7
1.2.1 什麼是大數據 7
1.2.2 大數據預測的優勢 9
1.2.3 大數據預測的特徵 9
1.2.4 大數據預測案例 12
1.3 預測利器之R語言 22
1.3.1 R語言簡介 22
1.3.2 R語言預測初步 33
1.3.3 R語言預測常用包 42
第2章 預測方法論 44
2.1 預測流程 45
2.1.1 確定主題 45
2.1.2 收集數據 47
2.1.3 選擇方法 49
2.1.4 分析規律 53
2.1.5 建立模型 57
2.1.6 評估效果 60
2.1.7 發布模型 60
2.2 指導原則 61
2.2.1 界定問題 61
2.2.2 判斷預測法 63
2.2.3 外推預測法 64
2.2.4 因果預測法 66
2.3 團隊構成 66
2.3.1 成員分類 67
2.3.2 數據氛圍 68
2.3.3 團隊合作 70
第3章 分析方法 72
3.1 相關分析 73
3.1.1 自相關分析 73
3.1.2 偏相關分析 74
3.1.3 簡單相關分析 75
3.1.4 互相關分析 83
3.1.5 典型相關分析 84
3.2 對應分析 88
3.3 頻譜分析 92
3.4 趨勢分析 94
3.5 聚類分析 96
3.5.1 K-Means算法 96
3.5.2 系統聚類算法 99
3.6 關聯分析 105
3.6.1 關聯規則挖掘:Apriori與Eclat算法 105
3.6.2 序列模式挖掘:SPADE算法 119
第4章 特徵構建技術 132
4.1 特徵變換 133
4.1.1 概念分層 134
4.1.2 標準化 136
4.1.3 離散化 139
4.1.4 函式變換 142
4.1.5 深入表達 143
4.2 特徵組合 143
4.2.1 基於特定的領域知識 143
4.2.2 二元組合 144
4.2.3 高階多項式 148
4.3 自動生成:基於遺傳編程的方法 152
4.3.1 基本思路 153
4.3.2 特徵表達式 154
4.3.3 產生初始種群 162
4.3.4 計算適應度 163
4.3.5 選擇、交叉和變異 165
4.3.6 實例分析 171
第5章 特徵選擇方法 176
5.1 直接法 177
5.2 單元法 177
5.2.1 Pearson相關係數 177
5.2.2 距離相關係數 179
5.2.3 單因素方差分析 181
5.2.4 信息增益 184
5.2.5 卡方檢驗 191
5.2.6 Gini係數 194
5.3 多元法 198
5.3.1 逐步回歸 198
5.3.2 隨機森林 203
5.3.3 遺傳算法 210
第6章 模型參數最佳化 213
6.1 交叉驗證 214
6.2 格線搜尋 215
6.3 遺傳算法 217
6.3.1 基本概念 217
6.3.2 遺傳算法算例 218
6.3.3 遺傳算法實現步驟 223
6.3.4 遺傳算法R語言實現 223
6.3.5 R語言mcga和genalg包的套用 228
6.4 粒子群最佳化 233
6.4.1 基本概念及原理 233
6.4.2 粒子群算法R語言實現 235
6.4.3 粒子群算法實現步驟 238
6.4.4 R語言pso包的套用 239
6.5 模擬退火 241
6.5.1 基本概念及原理 241
6.5.2 模擬退火算法R語言實現 242
6.5.3 模擬退火算法實現步驟 244
6.5.4 R語言GenSA和stats包的套用 245
第7章 預測效果評估 250
7.1 機率預測評估方法 251
7.1.1 混淆矩陣 251
7.1.2 ROC曲線 255
7.1.3 KS曲線 261
7.1.4 累計收益圖 263
7.1.5 累計提升圖 264
7.1.6 累計回響圖 266
7.2 數值預測評估方法 267
7.2.1 常見評估指標 267
7.2.2 ASD累計收益圖 270
第二部分 預測算法篇
第8章 線性回歸及其最佳化 274
8.1 多元線性回歸 275
8.1.1 回歸模型和基本假定 275
8.1.2 最小二乘估計 276
8.1.3 回歸方程和回歸係數的顯著性檢驗 276
8.1.4 多重共線性 277
8.2 Ridge回歸 280
8.2.1 基本概念 281
8.2.2 嶺跡曲線 281
8.2.3 基於GCV準則確定嶺參數 283
8.2.4 Ridge回歸的R語言實現 284
8.3 Lasso回歸 285
8.3.1 基本概念 285
8.3.2 使用LAR求解Lasso 286
8.3.3 Lasso算法的R語言實現 288
8.3.4 R語言lars包的套用 290
8.4 分位數回歸 292
8.4.1 基本概念 292
8.4.2 分位數回歸的計算 294
8.4.3 用單純形法求解分位數回歸及R語言實現 296
8.4.4 R語言quantreg包的套用 298
8.5 穩健回歸 300
8.5.1 基本概念 301
8.5.2 M-估計法及其R語言實現 301
8.5.3 套用R語言MASS包實現穩健回歸 304
第9章 複雜回歸分析 307
9.1 梯度提升回歸樹(GBRT) 308
9.1.1 Boosting方法簡介 308
9.1.2 AdaBoost算法 308
9.1.3 提升回歸樹算法 311
9.1.4 梯度提升 312
9.1.5 GBRT的R語言實現 314
9.1.6 R語言gbm包的套用 316
9.2 神經網路 320
9.2.1 基本概念 320
9.2.2 單層感知器學習算法 322
9.2.3 SLP回歸算法的R語言實現 323
9.2.4 BP神經網路學習算法 325
9.2.5 BP回歸算法的R語言實現 327
9.2.6 RBF神經網路學習算法 330
9.2.7 RBF回歸算法的R語言實現 332
9.2.8 Elman神經網路學習算法 334
9.2.9 Elman回歸算法的R語言實現 336
9.2.10 使用R語言包構建神經網路 338
9.3 支持向量機回歸 343
9.3.1 基本問題 344
9.3.2 LS-SVMR算法 347
9.3.3 LS-SVMR算法的R語言實現 348
9.4 高斯過程回歸 349
9.4.1 GPR算法 350
9.4.2 GPR算法的R語言實現 352
9.4.3 R語言kernlab包的套用 355
第10章 時間序列分析 358
10.1 Box-Jenkins方法 359
10.1.1 p階自回歸模型 359
10.1.2 q階移動平均模型 361
10.1.3 自回歸移動平均模型 363
10.1.4 ARIMA模型 365
10.1.5 ARIMA模型的R語言實現 367
10.1.6 R語言forecast包的套用 373
10.2 門限自回歸模型 376
10.2.1 TAR模型的基本原理 376
10.2.2 TAR模型的R語言實現 377
10.2.3 R語言TSA包的套用 380
10.3 GARCH模型族 382
10.3.1 線性ARCH模型 382
10.3.2 GRACH模型 383
10.3.3 EGARCH模型 384
10.3.4 Power ARCH模型 384
10.3.5 PARCH模型的R語言實現 385
10.3.6 R語言fGarch包的套用 395
10.4 向量自回歸模型 398
10.4.1 VAR模型基本原理 398
10.4.2 VAR模型的R語言實現 399
10.4.3 R語言vars包的套用 403
10.5 卡爾曼濾波器算法 405
10.5.1 Kalman濾波算法初步 406
10.5.2 Kalman濾波的R語言實現 407
10.5.3 R語言FKF包的套用 409
第三部分 預測套用篇
第11章 短期日負荷曲線預測 414
11.1 電力行業負荷預測介紹 415
11.2 短期日負荷曲線預測的基本要求 415
11.3 預測建模準備 416
11.3.1 基礎數據採集 416
11.3.2 缺失數據處理及平滑 418
11.3.3 潛在規律分析 421
11.4 基於RBF神經網路的預測 426
11.4.1 RBF網路結構設計 426
11.4.2 確定最優參數 427
11.4.3 建模並實現預測 431
11.4.4 效果評估 433
11.5 基於LS-SVMR算法的預測 435
11.5.1 確定最優參數 436
11.5.2 建模並實現預測 438
11.5.3 效果評估 439
第12章 股票價格預測 442
12.1 股票市場簡介 443
12.1.1 股票的基本概念 443
12.1.2 股票市場常用術語 443
12.1.3 股價波動的影響因素 447
12.2 獲取股票數據 452
12.3 基於VAR算法的預測 455
12.3.1 平穩性檢驗 455
12.3.2 VAR模型定階 456
12.3.3 預測及效果驗證 457
參考文獻 459