入门科普:一文看懂机器学习的概念、算法、分类及运用(快收藏)
作者头像
  • 智能快报
  • 2020-02-28 10:03:20 6

机器学习概述

随着大数据的发展,机器学习迎来了黄金时期。通过不断迭代,大数据技术推动了机器学习的实际应用。

接下来,我们将从大数据入手,逐步扩展到机器学习的发展及其在大数据生态系统中的作用。

1.1 认识大数据

数据来源越丰富,就越能接近事实真相,从而挖掘出深层次的知识和洞察力,这是大数据的价值所在。

“大数据(Big Data,BD)”这一概念早已存在。1980年,著名未来学家阿尔文·托夫勒在其著作《第三次浪潮》中,将大数据誉为“第三次浪潮的华彩乐章”。

近年来,“大数据”与“物联网”、“云计算”、“人工智能”等一同成为信息技术领域的热门词汇。理清这些概念之间的关系是理解大数据的基础,但每个人对其的理解不尽相同。

徐宗本院士在其报告《再论大数据——在人工智能的浪潮下对大数据的再认识》中指出,物联网是数据交互的方式,云计算是数据存储的基础,人工智能是应用场景,而大数据则是交互内容。大数据利用物联网的数据交互方式,依托云计算的基础设施,支持人工智能的应用场景,形成完整的价值链。

陈国良院士在《大数据与高性能计算》报告中描绘了物联网(IoT)、大数据(BD)、云计算(CC)的生态链。物联网通过收集和捕捉数据生成大数据;大数据为云计算提供了更多实际应用的机会;云计算则为大数据提供了弹性可扩展的存储和并行处理能力;而大数据为物联网创造了巨大价值。云计算与高性能计算如同孪生兄弟,结合后能够创造更大的价值。

总的来说,大数据的存储和处理需要云计算的支持,云计算需要海量数据的处理能力来证明自身的价值;人工智能的进步离不开云计算能力的增长,云计算让人工智能服务更加普及;大数据的价值发现需要高效的人工智能方法,而人工智能的自我学习需要海量数据的输入。

随着大数据和人工智能的深度融合,高度数据化的AI(人工智能)和高度智能化的DT(大数据技术)将成为新时代的常态。

1.2 机器学习的发展历程

机器学习(Machine Learning,ML)是人工智能的核心领域,涵盖了统计学、系统识别、逼近理论、神经网络、优化理论、计算机科学、脑科学等多个学科。它研究计算机如何模拟或实现人类的学习行为,以获取新知识或技能,重新组织已有的知识结构,从而不断提升自身性能。

传统机器学习主要依赖经验来改进系统性能,而现代机器学习则更侧重于利用数据来改进系统性能。基于数据的机器学习是现代智能技术中的重要手段之一,它从观测数据(样本)中寻找规律,利用这些规律对未来数据或不可观测的数据进行预测。

机器学习的发展大致经历了三个阶段:

  1. 逻辑推理阶段(1956年至1960年),以自动定理证明系统为代表,如西蒙与纽厄尔的Logic Theorist系统,但逻辑推理存在局限性。
  2. 知识阶段(1970年至1980年),以专家系统为代表,如费根·鲍姆等人的DENDRAL系统,但难以将知识传授给系统。
  3. 学习阶段(1990年至今),机器学习作为一种突破知识工程瓶颈的利器出现。20世纪90年代中期以后,人类发现自己淹没在数据的海洋中,机器学习从依靠经验转向依赖数据。这时期,人们对机器学习的需求愈发强烈。

典型的机器学习过程是通过算法和数据,对已知数据进行标注以预测未知数据。首先将数据分为训练集和测试集(训练集的类别标记已知),通过选择合适的机器学习算法,训练模型,再用该模型对新数据进行分类。

应用机器学习解决具体问题需要对具体问题进行详细分析,根据场景设计算法。

1.3 大数据生态系统

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

大数据存储在云计算设备中,就像水储存在江河湖海里。数据采集可以理解为将来自各渠道的数据汇聚到江河湖海中;数据预处理可以理解为水的蒸发、过滤、提取形成云的过程;云通过自我变化和重组,形成可变形态;基于机器学习的模型构建可以理解为不同天气条件下云变成雨水、雪花、冰雹、寒霜、雾气的过程。

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

可以简要概括如下: - 云转化为雨水、雪花、冰雹、寒霜、雾气的过程是分类的过程; - 云按照任何一种变化(如雨水)汇集的过程是聚类的过程; - 根据历史雨水情况预测未来的降雨情况是回归过程; - 在特定气候条件下,雨水和雪花共存产生“雨夹雪”的天气状况是关联过程; - 根据对雨水、雪花、冰雹、寒霜、雾气的兴趣程度选择观察自己感兴趣的现象是协同过滤的过程; - 去除导致天气变化的次要因素,保留主要特征的过程是特征降维的过程。

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

机器学习算法

根据学习方法的不同,机器学习可以分为传统机器学习、深度学习和其他机器学习。参考Kaggle机器学习调查,数据科学中更常见的是传统的经典机器学习算法。逻辑回归是最常用的数据科学方法,而神经网络在国家安全领域更为频繁地使用。总的来说,目前神经网络模型的使用频率高于支持向量机,这可能是因为多层感知机在表现上优于使用核函数的支持向量机。

2.1 传统机器学习

传统机器学习从一些观测样本出发,试图发现不能通过原理分析获得的规律,实现对未来数据行为或趋势的准确预测。

传统机器学习在学习结果的有效性和学习模型的可解释性之间取得了平衡,为处理有限样本的学习问题提供了一种框架,主要用于有限样本条件下的模式分类、回归分析、概率密度估计等任务。

传统机器学习方法的重要理论基础之一是统计学,在自然语言处理、语音识别、图像识别、信息检索和生物信息等领域广泛应用。

相关算法包括逻辑回归、隐马尔可夫模型、支持向量机、K近邻、三层人工神经网络、AdaBoost、贝叶斯方法和决策树等。

2.1.1 分类方法

分类方法是机器学习中应用最广泛的技术之一。分类是根据历史数据形成描述事物特征的类别标识,从而预测未来数据的分类情况。目标是学会一个分类函数或分类模型(也称为分类器),该模型能够将数据集中的事物映射到给定类别中的某一个类。

在分类模型中,我们希望根据一组特征来判断类别,这些特征代表了物体、事件或上下文相关的属性。

2.1.2 聚类方法

聚类是指将物理或抽象的集合分组为由相似对象组成的多个类的过程。聚类生成的簇是一组数据对象的集合,这些对象与同一簇中的对象相似,与其他簇中的对象不同。在许多应用场景中,一个簇中的数据对象可以作为一个整体来处理。

在机器学习中,聚类是一种无监督学习方法,在事先不知道数据分类的情况下,根据数据之间的相似性进行划分,目的是使同一类别的数据对象之间的差异尽可能小,不同类别的数据对象之间的差异尽可能大。

通常使用K-means进行聚类,聚类算法LDA是一个在文本建模中非常著名的模型,类似于SVD、PLSA等模型,可用于浅层语义分析,在文本语义分析中是一个有用的模型。

2.1.3 回归方法

回归是根据已有数值(行为)预测未知数值(行为)的过程,与分类形式分析不同,预测分析更侧重于“量化”。一般认为,使用分类方法预测分类标签(或离散值),使用回归方法预测连续或有序值。例如,预测用户对一部电影的评分是多少,或者预测用户明天使用某个产品(如手机)的概率有多大。

常见的预测模型基于输入的用户信息,通过模型的训练学习,找出数据的规律和趋势,以确定未来目标数据的预测值。

2.1.4 关联规则

关联规则是指发现数据中大量项集之间的有趣关联或相关联系。发掘关联规则的步骤包括: 1. 找出所有频繁项集,这些项集出现的频率至少和预定义的最小支持计数一样; 2. 由频繁项集生成强关联规则,这些规则必须满足最小支持度和最小置信度。

随着大量数据的持续收集和存储,许多行业人士对从数据集中发掘关联规则越来越感兴趣。从大量商务交易记录中发现有趣的关联关系,可以帮助制定许多商业决策。

通过关联分析发现经常出现的事物、行为、现象,发掘场景(时间、地点、用户性别等)与用户使用业务的关联关系,从而实现因时、因地、因人的个性化推送。

2.1.5 协同过滤

随着互联网上的内容逐渐增多,人们每天接收的信息远远超出人类的信息处理能力,信息过载现象日益严重,因此信息过滤系统应运而生。信息过滤系统基于关键词,过滤掉用户不想看的内容,只给用户展示感兴趣的,大大减少了用户筛选信息的成本。

协同过滤来源于信息过滤,与信息过滤不同,协同过滤分析用户的兴趣并构建用户兴趣模型,在用户群体中找到指定用户的相似兴趣用户,综合这些相似用户对某一信息的评价,系统预测该指定用户对该信息的兴趣程度,再根据用户的兴趣程度给用户展示内容。

2.1.6 特征降维

特征降维自20世纪70年代以来获得了广泛的研究,尤其是在最近几年,随着文本分析、图像检索、客户关系管理等应用中数据实例数量和特征数据的急剧增加,这种数据的海量性使得许多机器学习算法在可测量性和学习性能方面遇到了重大挑战。

例如,具有成百上千特征的高维数据集,会包含大量的相关信息和冗余信息,这些信息可能会显著降低学习算法的性能。因此,在面对高维数据时,特征降维对于机器学习任务显得尤为重要。

特征降维是从初始高维特征集中选出低维特征集合,以便根据一定的评估标准优化、减少特征空间的过程,通常作为机器学习的预处理步骤。大量研究表明,特征降维能有效消除相关和冗余特征,提高挖掘任务的效率,改善预测准确性等学习性能,增强学习结果的可理解性。

深度学习

深度学习又称为深度神经网络(指层数超过3层的神经网络),是建立深层结构模型的学习方法。深度学习作为机器学习研究中的一个新兴领域,由Hinton等人于2006年提出。深度学习源于多层神经网络,其本质是给出了一种将特征表示和学习合二为一的方式。

深度学习的特点是放弃了可解释性,单纯追求学习的有效性。经过多年探索和研究,已经产生了许多深度神经网络的模型,包括深度信念网络、卷积神经网络、受限玻尔兹曼机和循环神经网络等。其中,卷积神经网络和循环神经网络是两种典型的模型。

卷积神经网络常用于空间分布数据;循环神经网络在神经网络中引入了记忆和反馈机制,常用于时间分布数据。

深度学习框架通常包含了主流的神经网络算法模型,提供稳定可靠的深度学习API,支持在服务器和GPU、TPU间进行分布式学习,部分框架还具备在包括移动设备、云平台在内的多种平台上运行的能力,从而为深度学习算法带来了前所未有的运行速度和适用性。

目前主流的开源算法框架有TensorFlow、Caffe/Caffe2、CNTK、MXNet、PaddlePaddle、Torch/PyTorch、Theano等。

深度学习是机器学习研究中的一个重要分支,其动机在于建立、模拟人脑进行分析学习的神经网络,它模拟人脑的机制来解释数据,例如图像、声音和文本。从技术角度来看,深度学习就是“多层”的神经网络,神经网络本质上是多层函数嵌套构成的数据模型。

伴随云计算、大数据时代的到来,计算能力的显著提升,深度学习模型在计算机视觉、自然语言处理、语音识别等众多领域都取得了显著的成功。

其他机器学习

除了传统机器学习和深度学习之外,还有一些其他的机器学习方法,包括迁移学习、自动学习和演化学习等。

3.1 迁移学习

迁移学习是指当在某些领域无法获得足够的数据进行模型训练时,利用另一个领域中的数据所获得的关系进行学习。迁移学习可以将已训练好的模型参数迁移到新模型中,指导新模型的训练,更有效地学习底层规则,减少数据量。

目前,迁移学习技术主要应用于变量有限的小规模应用中,如基于传感器网络的定位、文本分类和图像分类等。未来,迁移学习将在解决更具挑战性的问题中发挥重要作用,如视频分类、社交网络分析、逻辑推理等。

3.2 自动学习

自动学习通过一定的算法查询最有用的未标记样本,并交由专家进行标记,然后用查询到的样本训练分类模型来提高模型的精度。自动学习可以选择性地获取知识,通过较少的训练样本获得高性能的模型,最常用的策略是通过不确定性准则和差异性准则选取有效的样本。

3.3 演化学习

演化学习基于演化算法提供的优化工具设计机器学习算法,针对机器学习任务中存在的大量复杂优化问题,应用于分类、聚类、规则发现、特征选择等机器学习与数据挖掘任务。

演化算法通常维护一个解的集合,并通过启发式算子从现有解生成新解,并通过选择更好的解进入下一次循环,不断提高解的质量。演化算法包括粒子群优化算法、多目标演化算法等。

机器学习分类

机器学习可以根据学习方式分为监督学习、无监督学习、半监督学习、强化学习等。区别在于,监督学习需要提供标注的样本集,无监督学习不需要提供标注的样本集,半监督学习需要提供少量标注的样本,而强化学习需要反馈机制。

4.1 监督学习

监督学习是利用已标记的有限训练数据集,通过某种学习策略或方法建立一个模型,实现对新数据/实例的标记(分类)/映射。监督学习要求训练样本的分类标签已知,分类标签的准确度越高,样本越具有代表性,学习模型的准确度越高。监督学习在自然语言处理、信息检索、文本挖掘、手写体识别、垃圾邮件检测等领域得到了广泛应用。

监督学习的输入是带有标注分类标签的样本集,粗略地说,就是给定了一组标准答案。监督学习从给定分类标签的样本集中学习出一个函数,当新的数据到来时,可以根据这个函数预测新数据的分类标签。监督学习过程如图1-5所示。

在监督学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果,例如在垃圾邮件分类系统中对“垃圾邮件”和“非垃圾邮件”的分类。

在建立预测模型时,监督学习建立一个学习过程,将预测结果与“训练数据”的实际结果进行比较,不断调整预测模型,直到模型的预测结果达到预期的准确率。

最典型的监督学习算法包括回归和分类等。

4.2 无监督学习

无监督学习是利用无标记的有限数据描述隐藏在未标记数据中的结构或规律。无监督学习不需要训练样本和人工标注数据,便于压缩数据存储、减少计算量、提高算法速度,还可以避免由于正负样本偏差引起的分类错误问题,主要应用于经济预测、异常检测、数据挖掘、图像处理、模式识别等领域,例如组织大型计算机集群、社交网络分析、市场细分、地理数据分析等。

无监督学习与监督学习相比,样本集中没有预先标注好的分类标签,即没有预先给定的标准答案。它没有告诉计算机怎么做,而是让计算机自己去学习如何对数据进行分类,然后对那些正确分类的行为采取某种形式的激励。

在无监督学习中,数据并不被特别标识,学习模型是为了推断出数据的一些内在结构。常见的应用场景包括关联规则的学习以及聚类等。常见算法包括Apriori算法、K-means算法、随机森林(Random Forest)、主成分分析(Principal Component Analysis)等。

4.3 半监督学习

半监督学习介于监督学习与无监督学习之间,主要解决的问题是利用少量标注样本和大量未标注样本进行训练和分类,从而达到减少标注成本、提高学习能力的目的。

在此学习方式下,输入数据部分被标识,部分未被标识。这种学习模型可以用于预测,但该模型首先需要学习数据的内在结构以便合理地组织数据进行预测。

应用场景包括分类和回归,算法包括一些对常用监督学习算法的延伸,这些算法首先试图对未标识数据进行建模,在此基础上再对标识的数据进行预测。例如图论推理(Graph Inference)算法或拉普拉斯支持向量机(Laplacian SVM)等。

4.4 强化学习

强化学习是智能系统从环境到行为映射的学习,以使强化信号函数值最大。由于外部环境提供的信息很少,强化学习系统必须依靠自己的经验进行学习。

强化学习的目的是学习从环境状态到行为的映射,使得智能体选择的行为可以获得环境的最大奖励,从而使得外部环境对学习系统的评价达到最优。其在机器人控制、无人驾驶、下棋、工业控制等领域取得了成功应用。

在这种学习形式下,输入数据作为对模型的反馈,不像监督模型那样,输入数据仅仅是作为检查模型对错的方式。在强化学习下,输入数据直接反馈到模型,模型必须立即作出调整。常见的应用场景包括动态系统和机器人控制等。

常见算法包括Q-Learning以及时间差分学习(Temporal Difference Learning)。

机器学习综合应用

机器学习已经“无处不在”,广泛应用于人工智能的各个领域,包括数据挖掘、计算机视觉、自然语言处理、语音和手写识别、生物特征识别、搜索引擎、医学诊断、信用卡欺诈检测、证券市场分析、汽车自动驾驶、军事决策等。

下面我们将从异常检测、用户画像、广告点击率预测、企业征信大数据应用、智慧交通大数据应用等方面介绍大数据的综合应用。

5.1 异常检测

异常是指某个数据对象由于测量、收集或自然变异等原因变得不同于正常的数据对象的情景,找出异常的过程称为异常检测。根据异常的特征,可以将异常分为点异常、上下文异常、集合异常。

异常检测的训练样本都是非异常样本,假设这些样本的特性服从高斯分布,在此基础上估计出一个概率模型,用该模型估计待测样本属于非异常样本的可能性。异常检测步骤包括数据准备、数据分组、异常评估、异常输入等步骤。

5.2 用户画像

用户画像的核心工作就是给用户打标签,标签通常是人为规定的高度精炼的特征标识,如年龄、性别、地区、兴趣等。由这些标签集合能抽象出一个用户的信息全貌,每个标签分别描述了该用户的一个维度,各个维度相互联系,共同构成对用户的全面描述。

在产品的运营和优化中,根据用户画像可以深入了解用户需求,从而设计出更符合用户的产品,提升用户体验。

使用某新闻App用户行为数据构建用户画像的流程和一些常用的标签体系详情,参见《终于有人把用户画像的流程、方法讲明白了》。

5.3 广告点击率预测

互联网广告是互联网公司主要的盈利手段,互联网广告交易双方是广告主和媒体。广告主为自己产品投放广告并支付费用;媒体是拥有流量的公司,如各大门户网站、各类论坛,它们提供广告的展示平台,并收取广告费用。

广告点击率(Click Through Rate,CTR)是指广告的点击到达率,即广告的实际点击次数除以广告的展示量。在实际应用中,我们从广告的海量历史展示点击日志中提取训练样本,构建特征并训练CTR模型,评估各种因素对点击率的影响。

当有新的广告位请求到达时,就可以用训练好的模型,根据广告交易平台传递的相关特征预测此次展示中各个广告的点击概率,结合广告出价计算得到的广告点击收益,从而选择收益最高的广告向广告交易平台出价。

5.4 企业征信大数据应用

征信是指为信用活动提供信用信息服务,通过依法采集、整理、保存、加工企业和事业单位等组织的信用信息和个人的信用信息,并提供给信息使用者。征信由征信机构、信息提供方、信息使用者、信息主体四部分组成,综合起来,形成了一个完整的征信行业的产业链。

征信机构向信息提供方采集征信相关数据,信息使用者获得信息主体的授权后,可以向征信机构请求该信息主体的征信数据,从征信机构获得征信产品。对企业而言,是由该企业的各种维度数据构成的征信报告。

5.5 智慧交通大数据应用

智慧交通大数据应用是以物联网、云计算、大数据等新一代信息技术为基础,结合人工智能、机器学习、数据挖掘、交通科学等理论与工具,建立起一套交通运输领域的全面感知、深度融合、主动服务、科学决策的动态实时信息服务体系。

基于人工智能和大数据技术的叠加效应,结合交通行业的专家知识库建立交通数据模型,解决城市交通问题,是交通大数据应用的主要任务。

交通大数据模型主要分为城市人群时空图谱、交通运行状况感知与分析、交通专项数字化运营和监管、交通安全分析与预警等几大类。

本文摘自《Spark机器学习进阶实战》,经出版方授权发布。

推荐语:科大讯飞大数据专家撰写,从基础到应用,全面覆盖。

    本文来源:图灵汇
责任编辑: : 智能快报
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
一文科普算法入门运用机器概念收藏学习分类
    下一篇