Python 是一种面向对象的脚本语言,其代码简洁优美,类库丰富,开发效率也很高,得到越来越多开发者的喜爱,广泛应用于Web 开发、网络编程、爬虫开发、自动化运维、云计算、人工智能、科学计算等领域。预测技术在当今智能分析及其应用领域中发挥着重要作用,也是大数据时代的核心价值所在。随着AI 技术的进一步深化,预测技术将更好地支撑复杂场景下的预测需求,其商业价值不言而喻。基于Python 来做预测,不仅能够在业务上快速落地,还让代码维护更加方便。对预测原理的深度剖析和算法的细致解读,是本书的一大亮点。
本书共分为3 篇。第1 篇介绍预测基础,主要包括预测概念理解、预测方法论、分析方法、特征技术、模型优化及评价,读者通过这部分内容的学习,可以掌握预测的基本步骤和方法思路。第2 篇介绍预测算法,该部分包含多元回归分析、复杂回归分析、时间序列及进阶算法,内容比较有难度,需要细心品味。
第3 篇介绍预测案例,包括短期日负荷曲线预测和股票价格预测两个实例,读者可以了解到实施预测时需要关注的技术细节。
希望读者在看完本书后,能够将本书的精要融会贯通,进一步在工作和学习实践中提炼价值。
以Python语言为基础,配合原理、方法 、案例进行讲解
专注预测专题,体系化介绍预测技术工程实施的必备技能
前 言
为什么要写这本书?
2016 年10 月笔者出版了《R 语言预测实战》,书中总结了笔者在预测领域的一些思考和经验,并通过书籍的媒介作用,和广大读者进行了一次深度的对话交流,书中基于R 语言对常用的数据分析、预测类算法进行了实现,并结合案例讲解了预测模型的实现过程。该书自出版以来,不断收到读者的好评,笔者也时常收到读者发来的邮件,或是对书籍内容感兴趣,希望可以长期交流,或者提出书籍中的一些瑕疵,希望在下个版本进行改善,或是咨询一些实际业务问题,如此等等。总地来看,《R 语言预测实战》这本书还是很受读者喜爱的。由于人工智能在近些年的发展,Python 语言越来越流行,更多的朋友想从Python 入手学习。为了能将《R 语言预测实战》的精华介绍给更多的读者,同时可以有机会修改R 这本书中存在的一些问题,尤其是代码中的瑕疵,笔者开始考虑将其改写为Python 版本。与《R 语言预测实战》相比,本书介绍的算法和案例加入了使用深度学习算法来做预测的内容,同时剪掉了一些不必要的段落,代码方面也做了很多优化,相信能够给读者带来
更好的阅读学习体验。
阅读对象
? 对数据挖掘、机器学习、预测算法及商业预测应用感兴趣的大专院校师生;
? 从事数据挖掘工作,有一定经验的专业人士;
? 各行各业的数据分析师、数据挖掘工程师;
? 对数据挖掘、预测专题感兴趣的读者。
勘误和支持
由于笔者的水平有限,编写的时间也很仓促,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。读者可以把意见或建议直接发至笔者的邮箱cador.ai@aliyun.com。书籍中的数据和代码,可通过访问cador.cn 来获取。笔者会定期发布勘误表,并统一回复。同时,如果你有什么问题,也可以发邮箱来提问,笔者将尽量为读者提供最满意的解答,期待你们的反馈。
如何阅读这本书
本书包括3 篇,共有10 章。
第1 章介绍预测的基本概念,以及大数据时代预测的特点,并结合案例进行讲解,最后基于Python讲解一个预测案例。本章适合初学者入门。
第2 章介绍预测的方法论,其中预测流程是基础,它说明了从预测实施的各个阶段。然后介绍了预测的指导原则,它是预测工作者必知必会的。另外,还介绍了预测工作的团队要求。本章内容适合常期品味,活学活用。
第3 章介绍分析方法,本章内容是数据分析、数据挖掘常见的分析方法,出现在这里,主要是为预测技术的数据处理做铺垫。如果预测工作者没有掌握有效的分析思路和方法,去提炼有用的指标和特征,那么预测工作是很难进行下去的。本章提供了规律发现的常用方法和技巧。
第4 章介绍特征工程,不仅介绍了常见的特征变换方法,还介绍了特征组合的方法,特别值得一提的是,本章包含了特征学习的方法,它是基于遗传编程实现的。从事数据挖掘的朋友都很清楚,好的特征在建模时是非常重要的,然而,有时我们拿到的基础数据直接拿去建模效果不见得好,如果进行规律挖掘,也比较费时费力,比较好的做法就是特征自动生成。感兴趣的朋友,可以细致品味这个章节。
从第1 章到第4 章为本书的第1 篇,主要介绍预测的入门知识,如果读者对预测有一定的功底,可以跳过本部分,直接进入第2 篇,了解预测算法的基本原理和实现。
第5 章介绍模型参数的优化。我们在建立数据挖掘和预测模型时,参数的确定通常不是一步到位的,我们往往需要做一些优化或改进,以提升最终的效果。本章介绍的遗传算法、粒子群优化、模拟退火等问题求解算法,有助于找到模型的最优或接近最优的参数。
第6 章介绍线性回归技术,主要包括多元线性回归、Ridge 回归、Lasso 回归、分位数回归、稳健回归的内容。在实际工作或实践中,读者应该有选择地使用对应的回归方法,以确保应对回归问题的有效性。
第7 章介绍复杂回归技术,主要包括梯度提升回归树(GBRT)、神经网络、支持向量机、高斯过程回归的内容。这是回归技术的进阶部分,涉及到统计学习以及机器学习的内容,想挑战难度的朋友,一定要好好读一读这部分。
第8 章介绍时间序列分析技术,主要包括Box-Jenkins 方法、门限自回归模型、GARCH 模型族、向量自回归模型、卡尔曼滤波、循环神经网络、长短时记忆网络等内容。本章不仅介绍了常见的Box-Jenkins 方法,还介绍了门限自回归等高阶时序分析技术。
从第5 章到第8 章为本书的第2 篇,主要介绍预测算法,本部分的算法选择有一定的难度,基本包含了常见的以及部分高阶的预测回归算法,读者可细致品味。
第9 章介绍短期日负荷曲线预测技术,首先介绍电力行业负荷预测的行业知识,接着从预测的基本要求出发,经过预测的建模准备,进入预测建模的环节。本章使用了DNN 和LSTM 两种算法来建立预测模型,并对预测效果进行了评估。
第10 章介绍股票价格预测技术,首先从股票市场的简介开始,接着介绍股票数据的获取,然后基于VAR 和LSTM 两种算法对预测模型进行了实现,最后检验了预测的准确性。
最后两章为本书的第3 篇,主要介绍预测案例,由于写书太过仓促,案例部分略显单薄。另外,由于商业关系,有些案例分析的细节内容不便在书中全面展开介绍,有兴趣的读者,可以邮件联系。
致谢
感谢电子工业出版社的编辑石倩,没有你的敦促,我可能不会这么快地写完这本书,同时也感谢电子工业出版社!
感谢造物主给我一颗孜孜不倦的心,让我在学习的道路上不至于因工作忙碌而有所懈怠,也不至于因有所成就而不知进取。
青山不改,绿水长流。谨以此书,献给我最亲爱的家人和朋友,以及热爱Python 和从事数据相关领域的朋友们。
游皓麟
中国 成都