Spark机器学习进阶实战
上QQ阅读APP看书,第一时间看更新

1.1 机器学习概述

随着大数据的发展,机器学习进入了最美好的时代,通过“涟漪效应”逐步迭代,大数据推动机器学习真正实现落地。

接下来,我们从大数据讲起,扩展到机器学习的发展和大数据生态。

1.1.1 理解大数据

提起大数据,人们会不由地想起盲人摸象的故事。

从前,有四个盲人很想知道大象是什么样子,可他们看不见,只好用手摸。胖盲人摸到大象的牙齿,认为大象就像一个又大、又粗、又光滑的大萝卜;高个子盲人摸到大象的耳朵,认为大象是一把大蒲扇;矮个子盲人摸到了大象的腿,认为大象只是根大柱子;年老的盲人摸到大象的尾巴,认为大象只是一根草绳。如图1-1所示,四个盲人争吵不休,都说自己摸到的才是大象真正的样子。

图1-1 “盲人摸象”故事

从这个故事可以看出,数据源越多越精确,越能无限逼近事实和真相,越能获得更深邃的智慧和洞察,这就是大数据的价值。

“大数据(Big Data, BD)”的概念早已有之,1980年著名未来学家阿尔文·托夫勒在《第三次浪潮》一书中,将大数据热情地赞颂为“第三次浪潮的华彩乐章”。近几年,“大数据”和“物联网”“云计算”“人工智能”一道成为信息技术行业的流行词汇,理清楚它们的关系是理解大数据的前提,但是和大数据概念一样,每个人都有自己的理解。

徐宗本院士在“再论大数据——在人工智能的浪潮下对大数据的再认识”报告中提出大数据与其他信息技术的关系:物联网是“交互方式”,云计算是“基础设施”,人工智能是“场景应用”,大数据是“交互内容”。大数据使用物联网交互方式、存储在云计算基础设施、支持人工智能场景应用,生成完整的价值链。

陈国良院士在“大数据与高性能计算”报告中提出了物联网(IoT)、大数据(BD)、云计算(CC)生态链,如图1-2所示。① IoT通过采集与捕获产生了BD; ② BD为CC找到了更多的实际应用;③ CC为BD提供了弹性可扩展的存储和并行处理;④ BD为IoT产生了大价值,云计算与高性能计算是一对在出生时被分开的兄弟,两者相结合得到的高性能云计算能产生更大的价值。

图1-2 物联网、云计算、大数据生态链

总之,大数据的存储、处理需要云计算基础设施的支撑,云计算需要海量数据的处理能力证明自身的价值;人工智能技术的进步离不开云计算能力的不断增长,云计算让人工智能服务无处不在、触手可及;大数据的价值发现需要高效的人工智能方法,人工智能的自我学习需要海量数据的输入。随着大数据和人工智能的深度融合,高度数据化的AI(人工智能)和高度智能化的DT(大数据技术)并存将是时代新常态。

1.1.2 机器学习发展过程

机器学习(Machine Learning, ML)是人工智能的核心,涉及统计学、系统辨识、逼近理论、神经网络、优化理论、计算机科学、脑科学等诸多领域,研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构从而不断改善自身的性能。

相对于传统机器学习利用经验改善系统自身的性能,现在的机器学习更多是利用数据改善系统自身的性能。基于数据的机器学习是现代智能技术中的重要方法之一,它从观测数据(样本)出发寻找规律,利用这些规律对未来数据或无法观测的数据进行预测。

机器学习的发展过程分为三个阶段。

第一阶段,逻辑推理期(1956年—1960年),以自动定理证明系统为代表,如西蒙与纽厄尔的Logic Theorist系统,但是逻辑推理存在局限性。

第二阶段,知识期(1970年—1980年),以专家系统为代表,如费根·鲍姆等人的DENDRAL系统,存在要总结出知识、很难“教”给系统的问题。

第三阶段,学习期(1990年至今),机器学习是作为“突破知识工程瓶颈”之利器出现的。在20世纪90年代中后期,人类发现自己淹没在数据的海洋中,机器学习也从利用经验改善性能转变为利用数据改善性能。这阶段,人们对机器学习的需求也日益迫切。

典型的机器学习过程是以算法、数据的形式,利用已知数据标注未知数据的过程。如图1-3所示,首先需要将数据分为训练集和样本集(训练集的类别标记已知),通过选择合适的机器学习算法,将训练数据训练成模型,通过模型对新样本集进行类别标记。

图1-3 典型的机器学习过程

使用机器学习解决实际问题需要具体问题具体分析,根据场景进行算法设计。

1.1.3 大数据生态环境

在大数据生态环境中,包括数据采集、数据存储、数据预处理、特征处理、模型构建、数据可视化等,通过分类、聚类、回归、协同过滤、关联规则等机器学习方法,深入挖掘数据价值,并实现数据生态的良性循环。

如同海量数据存储在云计算设备中,水存储在江河湖海之中;数据采集可以理解为从各种渠道聚集水进入江河湖海;数据预处理可以理解为水之蒸发、过滤、提取形成天上云的过程;云进行特征的自我变化和重组,最终形成可以转变的状态;基于机器学习的模型构建,即可以理解为不同天气状况下的云转变成雨水、雪花、冰雹、寒霜、雾气的变化过程。

水存储在江河湖海中,经过蒸发、过滤、提取形成云,云自我变化、重组,而在不同天气下转变成雨水、雪花、冰雹、寒霜、雾气过程的可视化观察,可以理解为人对自然把握和发现的过程。

数据流转生态如图1-4所示。

图1-4 数据流转生态

可以简单抽象一下,云转换成雨水、雪花、冰雹、寒霜、雾气的过程就是分类的过程,云按照任何一种变化(如雨水)汇集的过程就是聚类的过程。根据历史雨水的情况,预测即将降雨的情况就是回归过程。在某种气候条件下,雨水和雪花会并存,产生“雨夹雪”的天气情况,这就是关联过程。根据对雨水、雪花、冰雹、寒霜、雾气的喜好程度,选择观察自己喜好的天气,就是协同过滤的过程。导致天气变化的因素很多(很多和雾霾有关),处理起来有难度,在不丧失主要特征的情况,去掉部分特征,这个过程就是特征降维的过程。

通过模拟人类大脑的神经连接结构,将各种和雾霾相关的天气特征转换到具有语义特征的新特征空间,自动学习得到层次化的特征表示,从而提高雾霾的预报性能,这就是深度学习过程。