搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
R语言预测实战
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787121298547
  • 作      者:
    游皓麟著
  • 出 版 社 :
    电子工业出版社
  • 出版日期:
    2016
收藏
编辑推荐

本书注重算法理论与实际案例相结合,将枯燥无味的预测算法原理用R语言重现,并通过案例让读者掌握预测模型的应用。


本书源码下载地址:https://github.com/cador/Predictive-Practice-With-R


展开
作者简介

游皓麟,高级数据分析师,目前专注于NLP、知识图谱以及深度学习的研究与实现。曾服务于华为技术软件有限公司等企业,多次出席R语言会议并发表演讲,在小象学院担任过R语言数据挖掘和机器学习讲师。

展开
内容介绍

R语言具有上手快、效率高的特点,它横跨金融、生物、医学、互联网等多个领域,主要用于统计、建模及可视化。预测是数据挖掘的主要作用之一,也是大数据时代的核心价值所在。基于R语言来做预测,兼具效率和价值的双重属性,这是本书的一大亮点。本书共分为三部分。第一部分讲预测基础,主要涵盖预测概念理解、预测方法论、分析方法、特征技术、模型优化及评价,读者通过这部分内容的学习,可以掌握进行预测的基本步骤和方法思路;第二部分讲预测算法,该部分包含了多元回归分析、复杂回归分析、时间序列及进阶算法,内容比较有难度,需要细心体会;第三部分讲预测案例,包括短期日负荷曲线预测和股票价格预测两个实例,读者可以了解到实施预测时需要关注的技术细节。希望读者在看完本书后,能够将本书的精要融会贯通,进一步在工作和学习实践中提炼价值。

展开
精彩书评

本书对基于R语言的预测进行了非常深入和全面的讲解,从理论到算法,从应用到案例。本书从入门级开始逐渐深入,适合不同阶段和层次的读者,深入浅出,通俗易懂,是一本难得的好书。

——李成华,飔拓科技董事长兼CTO,曾任京东DNN实验室首席科学家


R语言是一种功能强大且免费开源的语言,目前市场上以讲解R语言工具、统计、数据挖掘、数据分析的居多,系统地讲解预测专题的很少,本书涵盖方法、理论、实战,非常适合从事预测、机器学习的朋友阅读。

——张旋,乐视体育CTO


一本数据实战工作者真正需要的书,作者直指预测这一*具挑战性的主题,用丰富的经验和优美的语言如抽丝剥茧般说清楚了很多问题,非常不错。

——李舰  中科九峰智慧医疗 CTO 


展开
精彩书摘

预测入门

早在2012年,大数据就被炒得如火如荼。经过几年的发展,很多企业逐步认识到大数据的价值,并着手建立大数据的价值链。2015年4月 14日,贵阳大数据交易所的成立,意味着大数据在中国已经跨出重要一步。同时,作为大数据时代最核心的预测,也在近两年被很多公司尝试落地。大数据预测的 价值正逐步受到重视。

1.1 什么是预测

预测,天然带着一种神秘感,或是要预言某件事情将会发生,或是运用计算机推算出下一次地震发生的准确时间和位置,诸如此类。本节从预测的定义、预测的特点、预测的分类,以及进行预测时需要注意的基本原则出发,逐步揭开预测的神秘面纱。

1.1.1  预测的定义

“预” 就是预先、事先,“测”就是度量、推测。预测通常被理解为对某些事物进行事先推测的过程。由于预测具有提前预知事物发展动向的能力,因此科学的预测是很多 决策、计划的前提和保证。预测涉及很多行业和领域,并衍生出很多预测专题,除了常见的经济预测、股票市场预测、气象预测,还有人口预测、上网流量预测、产 品销量预测、市场需求预测、流行病预测、价格预测等。

预测的定义有很多种,一般认为,预测是从事物发展的历史和现状着手,使用事物的基础信息和统计数据,在严格的理论基础上,对事物历史发展过程进行深刻的定性分析和严密的定量计算,以了解和认识事物的发展变化规律,进一步对事物未来的发展做出科学推测的过程。

一万个读者就有一万个哈姆雷特,同样,对于预测的定义,不同的专家学者也各持己见。概括来讲,主要有六类。

综合上述观点,本书给出预测的定义为:所谓预测,是指基于对事物历史发展规律的了解和当前状态的把握,进一步使用科学的理论、方法和技术,对事物未来发展的走势或状态做出估计、判断的过程。

1.1.2  预测的特点

(1)短期可预测

预测是通过事物的过去及现在推测未来,未来的时间可长可短。如果太长,由于存在很多不确定因素的干扰,预测结果可信度较低,短期预测的结果往往更加可信。

(2)预测随机事物

随机事物具有不确定性,这才决定了预测的价值。实现预测,要从随机的变化规律中,找出相对固定的模式,或局部,或整体。

(3)预测需要数据

实现预测,要通过各种方法采取与预测对象相关的数据,包括历史的、当前的及未来的信息(比如日期、季节、天气预报、业务数据等)。将这些信息进行融合、清洗和加工。

(4)结果仅供参考

由于预测的是随机事物,其发展包含很多不确定性,因此预测结果本来就是不确定的,预测值与真实结果多少会存在误差。

1.1.3  预测的分类

预测可以按不同的维度进行分类,下面阐述常见的预测分类方法。

按范围分类

分为宏观预测和微观预测两类。宏观预测是指为整体的未来发展进行的各种预测。主要考虑预测对象相关指标之间的关系及变化规律。如国民经济预测、教育发展预 测、生态破坏预测等。微观预测是指对具体单位或业务的发展前景进行的各种预测。也是研究预测对象相关指标之间的关系及变化规律,如对某产品的产量、销量、 利润、费用、价格等的预测。

按时间长短分类

预测按时间长短不同,可分为短期预测、中期预测和长期预测。

因预测对象性质的不同,对 短期、中期、长期的划分也不同。对于国民经济预测、技术预测,5年以下为短期预测,5~15年为中期预测,15年以上为长期预测。对于工业经营预测,3年 以下为短期预测,3~8年为中期预测,8年以上为长期预测。对于市场预测,半年以下为短期预测,0.5~1年为中期预测,1年以上为长期预测。总体来讲, 对短期预测结果的精度要求比较高,而对长期预测结果的精度要求比较低。

按有无假设条件分类

按预测对象有无假设条件,预测可分为条件预测和无条件预测。条件预测一般以一定的决策方案或其他假设条件为前提。无条件预测则不附带任何条件。

按预测结果的要求分类

预测按照其对结果的要求不同,可分为定性预测、定量预测和定时预测。

定性预测是指预测者根据一定的理论方法和经验,在调查研究的基础上,进一步对其发展趋势做出判断,用于预测事物的发展趋势或可能性,如通过研究最新政策和分 析某基金的历史资料,判断该基金未来半年将呈增长趋势发展,即属于定性预测的范围。通常可使用的数据很少使用定性预测,一般应用于新产品、新科技的预测, 它涉及直觉和经验层面。定量预测是指在收集了预测对象的基础资料和统计数据的基础上,通过运用统计学方法或建立数学模型来求出预测值的过程,如根据某款游 戏两年的统计数据,建立时间序列模型,对未来三个月的收入进行预测,即属于定量预测的范围。定时预测是预测对象未来到达的时间,比如预测地震的发生等。
按趋势是否确定分类

如果事物的发展趋势是确定的,那么预测就是确定性预测,一般为短期预测;如果事物的发展趋势是不确定的,那么预测就是随机性预测,一般为长期预测。
按预测依据分类

如果使用事物前后时期的资料进行预测,那么这种预测叫作动态预测;如果使用相关关系进行间接预测,那么这种预测叫作静态预测。

1.1.4  预测的基本原则

科学的预测是在一定原则的指导下,按一定步骤有组织地进行的。预测一般应遵循以下原则。

(1)目的性原则

目 的性原则就是在进行预测时,要关注预测功能的受用者及其对预测结果的要求,只有在充分了解受用者的需求及要求的情况下,正确地开展预测,才能避免产生盲目 性。比如开展短期负荷预测,就要提前与用户进行沟通,了解当前现状及其要达到的目标(如每天上午8点钟之前发布预测结果,要求精度不低于90%),保证预 测工作有明确的目的性。

(2)连贯性原则

连贯性表示连续的情况或状态,连贯性原则主要包括两点:一是指时间上的连贯性,也就是说预测对象 较长一段时间内所表现出来的规律特征相对稳定;二是指结构上的连贯性,即预测系统的结构在较长一段时间内相对稳定,预测模型涉及的对象及相互关系相对稳 定,模型中各变量的相互关系在历史资料中表现得相对稳定。连贯性原则在进行预测时非常重要,它保证了预测对象规律在预测时间内仍然适用,这很关键。如果在 样本期内,预测对象的变化规律发生巨大变化,那么必然会破坏这种连贯性,对有效预测造成困难。

(3)关联性原则

关联性原则强调在预测的时 候从相关事物出发去分析影响因素,主要包括中心化关联和类比性关联。以预测对象为中心,去寻找与预测对象相互影响的事物,可能涉及政治、社会、技术、经济 等多个方面,这就是中心化关联。比如对旅游景点的人流量进行预测,以景点的人流量为中心,从此出发,可以找到很多影响景点人流量的事物,比如天气情况、节 假日情况、交通情况等,基于此考虑,可从诸多的影响因素中找出合适的因素用于预测建模。如果考虑与预测对象相似的事物,从其发展规律中找出有助于预测对象 进行预测的因素或信息,这就是类比性关联。比如对某产品用户流失情况进行预测,从用户生命周期分析中可知,凡是使用该产品的用户大致都经过导入期、成长 期、成熟期、衰退期。这一过程对所有用户而言都是相似的。分析以前成熟期的用户流失的因素,有助于预测未来用户流失情况。不管是中心化关联还是类比性关 联,都需要预测人员具有丰富的知识和经验,进行多向性思考和分析。

(4)近大远小原则

近大远小指的是离预测时间越近信息就越重要,离预测 时间越远信息就越不重要。这也很好理解,我们知道预测对象的规律越接近预测时间,可信度越高,以前的旧规律不见得合适拿过来用于预测。所以在进行预测时, 不能太关注于模型的拟合程度,模型的拟合度越高,越不一定适合用于做预测;反之,我们更应该关注,模型是否在近期的历史数据上表现良好,这种方法可以用来 选择合适的预测模型。同样,在我们建模求解参数时,也应该加大近期样本的权重,对离预测时间较远的样本,可以适当减少建模的权重,这样得到的模型,更能体 现预测模型在近期数据变化规律上表现的优势。模型的评价亦是如此,预测模型在接近预测日的样本表现得好,预测模型才算有效,如果有预测模型在历史数据上表 现良好,在近期的样本上表现不好,这样的模型只能说在历史数据中拟合得很好,不能说是用于预测的较好模型。总之,近大远小的原则,有助于我们在预测时选择 样本、选取模型、求解参数和评价预测效果。

(5)概率性原则

概率是对随机事件发生的可能性的度量。由于绝大多数预测是针对随机事物,所以 预测得准与不准,也会以概率的形式体现出来。需要注意的是,概率只是一种可能性,一般用0~1之间的实数表示。概率为0为不可能发生的事情,概率为1为确 定性事件,一定会发生。概率为0~1的,值越大可能性越大,值越小可能性越小。即便是概率为0.9,事件也可能不发生,因为只是概率,不是确定性事件,所 以是正常的;但如果持续100次有50次都没有发生,那就是概率计算有问题。如果概率为0.001的事件发生了,也叫作小概率事件,是很难遇见的,应该特 别引起重视。所以,认清预测的结果带有概率性是很关键的。若预测结果是类别(结果只有几个选项,如是与否、命中与不命中等),那概率表示预测到正确选项的 可能性程度;若预测结果是连续的实值,那概率可以表示预测到实值所在区间的可能性程度。

(6)反馈性原则

反馈指返回到起始位置并产生影 响。反馈的作用在于发现问题,对问题进行修正,对系统进行优化等。在预测的过程中,如果预测偏差很大,超出了之前设定的范围,那么需要反馈回来做一些调 整,简单一点就是调整一些参数,复杂一点可能要更新整个模型。预测反馈的最大作用在于它实现了整个预测过程的不断优化与动态化,保证了预测工作的可持续进 行。

(7)及时性原则

预测是与时间紧密关联的一项工作。预测的结果应该快速地被用于决策,不然,时机一过,就失去了预测的价值。这点在地震预测中就能明显地看出来。所以能够迅速、及时地提供预测结果是预测工作的基本要求。

(8)经济性原则

开展预测工作,需要一定的硬件、人力、时间、财力等资源,所以预测本来是讲求投资回报率的。经济性原则就是要在保证预测结果精度的前提下,合理地安排、布 置,选择合适的建模方法和工具,以最低的费用和最短的时间,获得预期的预测结果。一定不要过度追求精确性而无故地耗费成本。

以上八条基本原则,刻 画了预测工作的全过程。首先要明确预测的目的,接着采用关联性原则来建立好的分析方法和预测思路,在保持一定连贯性的前提下应用远大近小的原则,建立起预 测模型。然后,对预测的结果做出概率性预测,对预测偏差较大地,动态地反馈回来,并结合模型的实际情况做出调整和修正,使模型更优。当然,提供预测结果必 须是及时的,预测工作的开展也必须控制在一定的成本之内。这样,整个预测便建立在坚实的理论基础之上了。

展开
目录

第一部分  预测入门篇
第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

展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证