- Python数据挖掘入门与实践
- Robert Layton
- 2143字
- 2020-08-29 00:58:07
译者序
云计算、大数据、物联网,这几年很火。到现在为止,人们对云计算的激情已经回落到比较理智的水平,各种云基础设施已投入使用,支撑起关系国计民生的信息化应用。物联网还在建设中,家电智能化、个人健康信息数字化、交通智能化等趋势在我们身边悄然推进。开放互联的概念不再囿于传统的互联网思维,我们生活所触及的一切正在被编织到一张包罗万象的大网之中。它将会对社会产生何种影响,我们拭目以待。虽然大数据现在很火,各种大数据研究中心相继建立,但这只是刚刚开始。随着更多的人和设备接入互联网,随着人们对世界认识的加深和新工具的研发,数据规模将加速膨胀,超乎想象。大数据的春天才刚刚到来。数据采集能力上去之后,势必要求数据挖掘能力跟得上。正如作者在第12章中讲到的,大数据带来的一个挑战就是,重要信息可能被垃圾信息湮没。由此我们不难推断出数据挖掘技术在发现、突显和传承人类文明方面将起到不可替代的作用。本书讲解的正是大数据时代的核心技能——数据挖掘技术,可以预见该项技术将发挥出越来越重要的作用。
本书讲解了如何用Python语言进行数据挖掘。Python是一种通用型编程语言,它简单易学,上手快,有着丰富的第三方库,社区氛围友好。从数据采集、分析一直到应用开发层面,Python都有成熟的库。使用Python语言进行开发,无需过多关注语言细节,开发者可以将主要精力放到业务本身。书中使用IPython Notebook作为开发环境,它将代码执行、富文本、公式编辑、绘图、多媒体等功能集合在一起,是科学计算和数据分析的好工具。书中所涉及的数据挖掘对象很丰富,有Iris鸢尾花卉数据集、Ionosphere电离层数据集、NBA比赛结果、MovieLens电影评分数据集、古登堡计划所收集的图书、安然公司邮件数据集、博客语料、CIFAR-10图像数据集等。从这些分属于不同行业的数据集,也能一窥数据挖掘应用之广。此外,作者还介绍了从Twitter、Reddit网站采集数据的方法。在算法方面,除了常见的决策树、朴素贝叶斯、支持向量机等,作者还介绍了最近几年非常热的深度学习。大数据、深度学习对计算能力要求很高,作者介绍了如何在亚马逊云主机上运行MapReduce任务。这本书由浅入深,以真实数据为研究对象,逐渐增大数据集规模,真刀实枪地向读者介绍了Python数据挖掘是怎么回事,并给读者进一步学习指出了多种可能的方向。工程实践之余,作者还不忘介绍数据挖掘常用思路,毫不保留地把自己积攥的宝贵经验传授给读者。这一点我在阅读过程中,深有体会。正如作者自己在前言里所写的,书中不会涉及大量公式推导,所有的算法都是以很直观的形式向读者介绍,所以即使你缺乏一定的数学基础,只要肯用功,也不用担心自己读不懂。
回到七八年前,当我还是一名英语专业学生的时候,我压根不会想到有一天会学编程,会去翻译这样一本书。后来有幸读了计算机辅助翻译这样一个专业,才开始接触到计算机知识,但是当父亲跟我提起数据建模时,我还是一脸茫然。研究生几年,系里为我们这些非计算机背景的学生开设了Python编程课。从那时起我就有事没事学点Python,一开始是照着Natural Language Processing with Python的示例敲,自那时起五年之后我竟想起给NLTK提交几处微小的改动。大约是为了激励我这个后生继续为他们服务,“居心叵测”的Steven Bird竟把我加入到贡献者名单里。去中关村图书大厦的时候,我常常喜欢浏览一下语言与程序设计书架上有没有关于Python的新书,碰到喜欢的就翻翻看,这几年眼看着Python书多了起来,很是欣慰。此外,我去北大、北外旁听过计算语言学、概率统计等课程,去北航旁听过计算机系统基础,看过Udacity的统计学入门和吴恩达老师的机器学习课程视频,兴致来了也曾捧着Rosen的《离散数学及其应用》读上几页。工作中,经常帮同事写个简单的Python程序处理数据,最近还帮他们爬取了一个网站。PyCon北京,我连着去了三四届了,每次都有或多或少的收获,2015年我见过一位大神行云流水般演示用pandas处理数据,很受震撼。以上就是我与Python、数据挖掘的交集。我想说的是,不要再用上学时读的那个专业的思维局限自己的发展,学科的界限在模糊,融合的趋势在增强,数学的重要性在提升。提到数学,今天还看了一个TED演讲视频,说的是借助计算机改变传统数学教育方法。这种理念什么时候能应用到一线教学,非常值得期待。生在这个充满变革的时代,倍感幸运。
以我有限的水平去翻译这样一本书,心里不免焦虑。遇到问题,我四处寻找能人相助。感谢作者Robert Layton,我每次发邮件向他求教或确认问题,他总能很快地回复我,有时第二天回复,还会说抱歉回复晚了。感谢我的同学黄子轩、孙伟、周星,他们在我学习计算机科学的路上给予了很多指导和帮助。翻译本书时,我还向子轩求证作者在第6章给出的示例是否有误。感谢上海大学研究生钱亦欣同学,他帮我审读了第3章,并给出若干很专业的修改意见,上述第6章那处问题,我也曾向他请教过,最终证明是原书弄错了。感谢李少华,他帮我弄明白了Python在Windows系统中的环境变量设置方法。感谢陈健锁,我曾就数据库相关术语向他请教。感谢图灵的朱巍编辑,是她促成了我最终去翻译这样一本趣味盎然的书!感谢图灵公司,我是你们忠实的读者!最后感谢我的妻子,她承担了照顾女儿的重任。女儿的出生,让我惊叹于生命的奇妙!感谢岳父岳母一家人帮忙照看孩子,我才有时间去做翻译。感谢我的父亲、姐姐,他们以我翻译本书为骄傲。
由于本人学识有限,且时间仓促,书中翻译错误、不当和疏漏之处在所难免,望读者批评指正。
杜春晓
2016年1月3日