前言
自2001年以来,数据科学被公认为一门科学。其根源在于技术的进步产生了几乎不可思议的海量数据。我们已经意识到,新数据的产生速度在一段时间内不太可能放缓,我们需要研究产生这些数据的系统和过程。原始数据的价值较小;矛盾的是,此类数据越多,价值越低。必须对其进行约简,以便从中提取真正有用的价值。从数据中提取信息是数据科学的主题。
成为一名成功的数据科学实践者是一项真正的挑战。所学的知识包含统计学、计算机科学乃至数学等多领域的主题。此外,特定领域的知识也非常有用,即使这些知识未必是关键知识。为这些领域培养学生是非常有必要的。但某些时候,这些学科领域需要作为连贯的一揽子方案汇集在一起,成为一门课程——数据科学(data science)。一个未学习数据科学课程的学生就没有为实践数据科学做好充分准备。《数据科学实用算法》作为一门课程的主干,介绍了主要的学科领域。
我们已注意到雇主对初级数据科学家的需求,以及这些新数据科学家所缺乏的技能。其中最缺乏的是编程能力。从教育者的角度看,我们要讲授原则和理论,让学生自行学习所需的具体知识。我们不可能教给他们职业生涯中所需的一切知识,即使是短期内的也不可能。但教学原则和基础是为独立学习做好充分准备。
《数据科学实用算法》要研究数据约简原理,分析数据科学中的核心算法。了解基本原理对于适应现有算法和创建新算法至关重要。《数据科学实用算法》为读者提供了许多提高编程技能的机会。每个详细讨论的算法都有一个指南,引导读者通过Python或R实现算法,然后将算法应用于真实的数据集。为便于描述,我们自编的编码命令清除了一些重要的预测分析算法。
《数据科学实用算法》主要针对两类读者。第一类读者是数据科学、统计学、数学和计算机科学相关领域的实践者。如果这些读者有兴趣提高分析能力(也许他们的目标是成为一名数据科学家),那么他们就会阅读《数据科学实用算法》。第二类读者是数据科学、商业分析、数学、统计和计算机科学的高年级本科生和研究生,这些读者将参加数据分析课程或自学课程的学习。
根据读者水平的不同,《数据科学实用算法》可用于一到两个学期的数据分析课程。如果用于一学期的课程,那么教师可采用多种方式选择课程内容。所有方式都要选择第1章和第2章,以便牢固树立数据约简和数据字典的概念。
(1) 如果教学重点是计算,那么务必学习第3章、第4章和第12章。第3章和第4章讨论用于大规模数据和分布式计算的方法。第12章是关于流数据的,所以这一章是结束课程的好选择。第7章介绍“医疗分析”,这一章是可选的,可在时间允许的情况下讲授;该章涉及较多具有挑战性的数据集,这些数据集为学生和教师提供了许多接触有趣项目的机会。
(2) 面向一般分析方法的课程可跳过第3章和第4章,而选择讲授第5章 (数据可视化)和第6章 (线性回归方法)。最后选择第9章(k近邻预测函数)以及第11章(预报)。
(3) 面向预测分析的课程将侧重于第9章和第10章(多项式朴素贝叶斯预测函数)。最后选择第11章(预报)和第12章(实时分析)。