且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《大数据分析原理与实践》一一导读

更新时间:2022-10-04 16:02:24

前  言

本书的缘起与成书过程
大数据经过分析能够产生高价值,这无疑已在大数据火爆的今天成为共识,从而使得大数据分析在“大数据+”涉及的领域(如工业、医疗、农业、教育等)有了广泛的应用。大数据分析的相关知识不仅是大数据行业的从业人员应该必备的,也是和大数据相关的各行各业的从业者需要了解的。
然而,人们对大数据分析的解读有多个不同方面。从“分析”的角度解读,大数据分析可以看作统计分析的延伸;从 “数据”的角度解读,大数据分析可以看作数据管理与挖掘的扩展;从“大”的角度解读,大数据分析可以看作数据密集高性能计算的具体化。
而大数据分析的有效实施也需要多个方面的知识。从分析的角度来讲,需要统计学、数据分析、机器学习等方面的知识;从数据处理的角度来讲,需要数据库、数据挖掘等方面的知识;从计算平台的角度来讲,需要并行系统和并行计算的知识。
上述多样化造成了目前大数据分析的教材和参考书的多样化:有些书重点介绍统计学或者机器学习知识,突出“分析”;有些书重点介绍实现平台和技术,突出“大”;有些书重点介绍数据挖掘知识及其应用,突出“数据”。笔者认为,这三类知识对大数据分析都是必不可少的,于是试图编写一本教材来融合这三类知识,给读者展示一个相对广阔的大数据分析图景。
也正是因为解读的角度和所需知识的多样化,本书的成书过程也比较曲折。在成书的过程中,笔者对大数据分析的认识也在不断加深,因而在编写过程中几次变换结构和体例。由于笔者主要从事数据相关工作,所以起初以大数据分析算法和相关技术为主,对数据分析模型方面的知识只是一笔带过。在和业内人士的交流中发现,对于很多读者来说,了解分析模型可能更重要,因为很多分析算法和大数据分析所需的技术都有平台实现,分析模型却需要了解业务的人来建立,于是笔者增加了较多数据分析模型方面的内容。而后通过和阿里云的合作,笔者又进一步了解了大数据分析的需求,于是增加了数据预处理等内容,并基于阿里云的技术和平台对书中的一些内容做了实现。这就是本书现在的版本。
本书的内容
本书力求系统地介绍大数据分析过程中的模型、技术、实现平台和应用。考虑到不同部分的侧重不同,故采取了不同的写作方法,尽可能使本书的内容适合更多的读者阅读。
模型部分主要突出了大数据分析模型的描述方法。通过这一部分的学习,读者可以在不考虑实现的情况下,针对应用需求建立大数据分析模型,即使不了解实现平台和具体技术,读者也可以独立学习这部分内容。在实践中,可以将分析模型表达为R语言,甚至像阿里云提供的可视化工具中那样分析流程,即使不掌握算法等方面的技术,同样可以进行大数据分析。
当然,如果对大数据分析相关技术有深入了解,会更加快速有效地进行分析,因而技术部分介绍了大数据分析所涉及的技术,重点在于解决大数据分析的效率和可扩展性问题。
“工欲善其事,必先利其器”,有了好的开发平台,就可以有效地实现相关的技术,因而实现平台部分介绍了多种开发大数据分析系统的实现平台。
最后两章针对“推荐系统”和“社交网络”这两个大数据分析的典型应用涉及的一些模型和技术进行了介绍,也是前面内容在应用中的具体体现。
“大数据”是一个比较宽泛的概念,本书围绕着分析过程进行讲解,突出大数据的特点,与大数据算法、大数据系统、大数据程序的编程实现、机器学习、统计学等书籍具有互补性,读者可以相互参考。
为方便读者的学习,笔者总结了一些大数据分析常用系统和工具的安装与配置方法,读者可登录华章网站(www.hzbook.com)在本书网页中下载文档。
本书没讲什么
由于大数据分析涉及的内容过于宽泛,尽管笔者试图从多个角度介绍大数据分析,但是限于本书的写作周期和篇幅,有一些读者关心的内容并没有包括在本书之中,比如:
数据流分析算法
神经网络/深度学习
大数据可视化
大图分析算法
大数据分析技术在医疗、社会安全、教育、工业等多个领域的应用
一方面,读者可以阅读相关的书籍了解这些领域的内容;另一方面,笔者也正在筹划,期望能够在本书的再版中列入上述内容。
致使用本书的教师
本书涉及多方面内容,对于教学而言,本书适用于多门课程的教学,除了直接用于“大数据分析”或者“数据科学”课程的教学之外,还可以作为“数理统计”“数据挖掘”“机器学习”等课程的补充教材。
针对不同专业的教学,教师可以选择不同的内容。针对计算机科学专业的本科生或者研究生,可以全面讲授本书的内容,但深度和侧重点上可以有所差别。针对培养数据科学家的“数据科学”专业的学生,如果培养方案中没有计算机系统和算法相关的课程,可以重点讲授第1~7章的内容,第8~11章可以着重讲解技术的选用而不是原理,第15~16章着重讲解背景和模型,其中的算法部分可以略去。针对培养工程师的技术类课程或者培训,可以重点讲授第8~14章,第1~7章中对模型的介绍可以略去,仅通过例子讲授模型的形式就可以。
致使用本书的学生
笔者希望为学生提供一个大数据分析的较为全面的图景,这使得本书的不同部分有着不同的讲述方式。请读者注意,碰到并不妨碍内容理解的公式和推导,可以跳过,应着重理解其背后的原理。
由于本书涉及的内容比较多,相关的背景知识也是必不可少的,因此本书的读者应有一些“线性代数”和“概率论”方面的数学知识,因为对一些模型和算法的描述不得不用到矩阵和概率。第6章和第14章用到了一些“图论”方面的基本概念。具备“数据库系统”的相关知识对理解本书的内容会很有帮助。第12~14章涉及一些“计算机系统”和“分布式系统”的基本知识。如果读者有“数理统计”“机器学习”和“数据挖掘”的知识,那么在阅读本书时会轻松得多,但这三类知识并不是阅读本书所必备的。本书包含了部分“数理统计”“机器学习”和“数据挖掘”的知识,主要分布在第2~9章中。
此外,在撰写本书的过程中,笔者注意和已经出版的《大数据算法》一书在内容上做了明确的区分,因而对于《大数据算法》中介绍的内容,本书不再赘述。
致使用本书的专业技术人员
本书可以作为一本大数据分析的参考书,供专业技术人员阅读。各部分针对的人群有所不同,可以单独查阅涉及的主题。
如果读者是一名数据科学家,可以根据业务需求参考第2~7章中的模型,其中大部分模型都可以找到实现的源代码,一些云计算平台(如阿里云)也支持其中大部分模型的实现。在涉及大规模数据的可扩展性时,读者可以参考第8~11章的内容,选择合适的特征、数据缩减方法、数据管理方法和算法。第15~16章中的内容可以作为一些大数据分析的案例,供实际数据分析时参考。
如果读者是一名大数据方面的算法研究或者开发人员,可以参考第2~7章中的数据分析模型方面的知识。第8~10章介绍了为算法进行数据准备和数据管理方面的背景知识,第11章介绍了部分大数据分析算法的知识,但相对简略,读者可以进一步阅读《大数据算法》一书。第12~14章介绍了分析算法实现的平台。
如果读者是一名大数据分析方面的系统工程师,可以参考第2~11章介绍的系统实现原理,第12~14章介绍了系统实现的平台并给出了一些例子,可以和相关的程序设计书籍对照阅读。本书中涉及的平台的安装和配置方法,读者可登录华章网站下载相关文档。
致谢
感谢哈尔滨工业大学的李建中教授、高宏教授以及国际大数据计算研究中心的诸位同事对本书的编写给出的指导和建议,以及在专业上对我的帮助。
在本书的撰写过程中,哈尔滨工业大学的李东升、袁芳怡、孙铭、韩姗珊、张浩然、王雅萱、黎竹平、苏钰、李佳红、马妍娇、孙芳媛等同学在资料翻译、搜集、整理、文本校对、制图等多个方面提供了帮助和支持,孟凡山、石乾坤、王鹤澎、李斯泽、窦隆绪等同学基于阿里云平台对本书中的部分模型和算法进行了实现,在此对他们表示感谢。
非常感谢我的爱人黎玲利副教授,感谢她一如既往地对我工作的支持,不但对书稿提出了许多有益的建议,还在本书的写作期间为我们的家添了可爱的宝宝——壮壮。感谢我的母亲和岳母,她们悉心帮助我们料理家务、照顾壮壮,使得我有时间专注于本书的写作。
本书的编写得到了阿里云公司的大力协助,入选“教育部–阿里云产学合作协同育人云计算大数据系列教材改革项目”(编号2016 01001007)。感谢阿里云的李妹芳女士,她在本书成书的过程中提供了大量有益的建议,同时协助我和阿里云的工程师及时沟通,使得在实现过程中遇到的问题得以快速解决。感谢阿里云公司的张良模、宁尚兵、王勇、石立勇、李博、王晓斐等同仁在本书编写过程中给予的帮助和支持。
在本书的成书过程中,我和机械工业出版社保持着愉快的合作,感谢机械工业出版社朱劼编辑对我的帮助和支持。
还要感谢在哈尔滨工业大学选修“大数据管理与分析”课程的同学,你们所提出的意见和建议对本书的写作大有裨益。
最后,作者关于大数据管理和分析方面的研究以及本书的写作还得到了国家自然科学基金项目(编号:U1509216,61472099)、国家科技支撑计划项目(编号:2015BAH10F01)、哈尔滨工业大学研究生教育教学改革研究项目(编号:JGYJ-201527)、黑龙江省留学回国人员基金(编号:LC2016026)和微软–教育部语言语音重点实验室经费的资助,在此表示感谢。
本书涉及的内容比较多,且跨越了多个快速发展的领域,而有些领域并不是笔者的专长,尽管笔者尽力去学习,但由于水平有限,在内容安排、表述、推导等方面难免会有不当之处,敬请读者在阅读本书的过程中不吝提出宝贵的建议,以期改进本书。
从大数据产生开始,对其基本概念、分析方法、计算平台等方面的争论就一直没有停止过,本书并没有试图回避这些争论,而是在一些地方将争论的不同观点和笔者的观点都列出来,请读者做出自己的判断,也欢迎读者发表自己的观点。读者若有意见和建议,

目录

第1章 绪  论

** 1.1 什么是大数据
1.2 哪里有大数据
1.3 什么是大数据分析
1.4 大数据分析的过程、技术与难点
1.5 全书概览**

第2章 大数据分析模型

**2.1 大数据分析模型建立方法
2.2 基本统计量
2.3 推断统计**

第3章 关联分析模型

**3.1 回归分析
3.2 关联规则分析
3.3相关分析**