大数据时代里,互联网用户每天都会直接或间接使用到大数据技术的成果,直接面向用户的比如搜索引擎的排序结果,间接影响用户的比如网络游戏的流失用户预测、支付平台的欺诈交易监测等等。达观数据技术团队开发过智能文本内容审核系统、作弊监测系统、用户建模系统等多个基于大数据技术的应用系统。机器学习是大数据挖掘的一大基础,本文以机器学习为切入点,将达观在 大 数据 技术实践时的一些经验与大家分享。
互联网的海量数据不可能靠人工一个个处理,只能依靠计算机批量处理。最初的做法是人为设定好一些规则,由机器来执行。比如明确指定计算机给男性、30岁的用户推送汽车广告。很明显如此粗略的规则不会有好效果,因为对人群的定位不够精确。要提高精度必须增加对用户的特征描述。但特征一多规则就很难制定,即使定下了规则也没法根据实际情况灵活变化。机器学习可以很好的解决以上问题,从一定程度上赋予了计算机以“学习”的能力,使得千人千面成为可能。
图 1 面对大量的特征,人工难以确定使用的规则
机器学习以统计学为理论基础,利用算法让机器具有类似人类一般的自动“学习”能力,即对已知的训练数据做统计分析从而获得规律,再运用规律对未知数据做预测分析。机器学习主要包含四大类别: 有监督学习,无监督学习,半监督学习和增强学习。
有监督学习,顾名思义,是在“人类监督”下学习,要求训练数据既有特征也有目标,目标是人为设定好的。以文本分类为例,一篇文章的字、词、句、段是其特征(文本的内容是什么),文章的类别(时事、科技、娱乐等等)就是目标。训练集文章的类别是人为设定的,相当于明确告诉机器什么样的内容该属于什么类别,机器在此基础上总结规律。无监督学习就是数据只有特征没有目标,最常见的算法是聚类。聚类算法会把相似的样本聚集成一个子集,优点是数据无需人工标注,但缺点也很明显——无法给出子集的实际含义。半监督学习介于有监督学习和无监督学习之间,其训练集数据有一小部分是人工标注过的。增强学习强调基于环境而行动,在探索未知领域和遵从现有只是之间寻求平衡。
有监督学习的研究起步较早,方法比较成熟。在大多数应用场景中,我们希望机器输出的结果具有实际含义,比如文本分类就是让机器告诉我们一篇文章是时事还是科技类文章。这样的场景下有监督学习也更为适用。有监督学习主要包含回归分析和统计分类两大类算法。
回归分析建模的是自变量和因变量之间的相关关系(如图2所示),在机器学习领域,自变量是样本的特征向量,因变量是预测值。回归分析最经典的应用场景是广告点击率(CTR)预估。简单而言,CTR预估是根据用户数据和广告数据,估计用户点击某个广告的可能性大小。我们假设用户数据+广告数据和广告点击率之间的关系符合某个分布,使用回归分析方法在已有点击数据上拟合出该分布。达观科技在线上预测时就把用户数据和广告数据作为输出传给拟合出的分布,得到用户点击该广告的概率值。
图 2 回归分析示意图
统计分类要解决的问题是,如何将一个样本点分到类别集合中的一个或多个类,比如图3所表示的就是将数据分为3个类。
图 3 统计分类示意图
现实场景中我们往往需要把数据分成不同的类别,以方便我们分析和使用,因而统计分类方法具有广阔的应用范围。达观数据团队开发的用户建模、内容审核系统、反作弊系统等都使用到了统计分类模型。比如反作弊系统,目的是区分用户行为是否作弊,抽象出来就是个分类问题:输入是用户的各种行为数据经过处理后得到的特征,输出只有两个类别——“作弊”和“非作弊”。接下来我就简单介绍一下最具代表性的分类算法——支持向量机(Support Vector Machine, SVM),一窥机器学习的工作原理。SVM绝不是入门级的机器学习算法,选择介绍它是因为,机器学习需要解决的数据线性不可分、过拟合等问题,SVM都给出了比较可靠的解决方案,借此我们也可以对机器学习有个大概的认识。
SVM针对分类问题的前提假设直观易懂,由此推演出的模型求解过程也是顺理成章一气呵成。我们通常先从最简单的情况入手,假设数据是线性可分的。SVM认为此时的最优分类面,是使得样本集到分类面的最小几何距离最大化的超平面,这个距离成为“间隔(margin)”。如图4所示,黑色实线就是最优分类面,两边两条虚线之间的几何距离就是此时的最优间隔。数据点离分类面越远,分类的置信度也越高。
图 4 SVM最优分类面示意图
SVM假设线性分类面的函数形式为
(1)鉴于篇幅关系,我们略去推导过程。在最大化间隔的假设下,可以得到SVM的原目标函数为:
(2)其中表示第i个样本的特征向量,是第i个样本的类标签,SVM令。由约束条件可知,样本点必然落在最优间隔的边缘(图4中虚线)上或外面,通过推导分析最终可以知道,只有落在间隔边缘上的少量数据点决定了分类面,这些样本被称为支持向量,而其他的点没有任何作用。这一特性大大节省了求解SVM的计算量。
按照达观数据的经验,真实环境的问题往往是线性不可分的,数据采集的时候也不可避免的会引入噪声。应对这两种情况只需对原始SVM模型做有限的一点改进。针对数据线性不可分的情况,SVM通过引入核函数(Kernel Function)将数据映射到高维空间来解决,图5直观的表示了映射的过程。核函数实际上是两个数据点在高维空间中的内积。它先在原空间进行计算再将结果映射到高维空间,避免了先把数据点映射到高维空间再计算所可能导致的维数灾难问题。核函数可以从容的处理包括无限维在内的任何特征空间映射。
图 5 SVM核函数的作用原理图
过拟合(Overfitting)表现为在训练数据上模型的预测错误很低,在未知数据上预测错误却很高。图6的蓝色曲线代表训练错误,红色曲线代表真实错误,可以看到随着模型复杂度的升高,模型对训练数据的拟合程度越好(训练错误越低),但到了一定程度之后真实错误反而上升,即为过拟合。
图 6 过拟合
过拟合主要源于我们采集的训练样本带有噪声,有部分样本严重偏离其正常位置,统计学上称之为outlier。前面已经提到,决定SVM最优分类面的只是占少数的支持向量,如果碰巧这些支持向量中存在outlier,而我们又要求SVM尽可能完美的去拟合这样的数据,得到的分类面可能就会有问题。如图7所示,黑色加粗虚线代表最优分类面,带黑圈的蓝色数据点代表outlier。可以看到outlier严重偏离了正常蓝色数据点的位置,所在位置又恰巧使其成为了支持向量,导致了最终的分类面(深红色实线)严重偏离最优分类面。
数据分析咨询请扫描二维码
在准备数据分析师面试时,掌握高频考题及其解答是应对面试的关键。为了帮助大家轻松上岸,以下是10个高频考题及其详细解析,外加 ...
2024-12-20互联网数据分析师是一个热门且综合性的职业,他们通过数据挖掘和分析,为企业的业务决策和运营优化提供强有力的支持。尤其在如今 ...
2024-12-20在现代商业环境中,数据分析师是不可或缺的角色。他们的工作不仅仅是对数据进行深入分析,更是协助企业从复杂的数据信息中提炼出 ...
2024-12-20随着大数据时代的到来,数据驱动的决策方式开始受到越来越多企业的青睐。近年来,数据分析在人力资源管理中正在扮演着至关重要的 ...
2024-12-20在数据分析的世界里,表面上的技术操作只是“入门票”,而真正的高手则需要打破一些“看不见的墙”。这些“隐形天花板”限制了数 ...
2024-12-19在数据分析领域,尽管行业前景广阔、岗位需求旺盛,但实际的工作难度却远超很多人的想象。很多新手初入数据分析岗位时,常常被各 ...
2024-12-19入门数据分析,许多人都会感到“难”,但这“难”究竟难在哪儿?对于新手而言,往往不是技术不行,而是思维方式、业务理解和实践 ...
2024-12-19在如今的行业动荡背景下,数据分析师的职业前景虽然面临一些挑战,但也充满了许多新的机会。随着技术的不断发展和多领域需求的提 ...
2024-12-19在信息爆炸的时代,数据分析师如同探险家,在浩瀚的数据海洋中寻觅有价值的宝藏。这不仅需要技术上的过硬实力,还需要一种艺术家 ...
2024-12-19在当今信息化社会,大数据已成为各行各业不可或缺的宝贵资源。大数据专业应运而生,旨在培养具备扎实理论基础和实践能力,能够应 ...
2024-12-19阿里P8、P9失业都找不到工作?是我们孤陋寡闻还是世界真的已经“癫”成这样了? 案例一:本硕都是 985,所学的专业也是当红专业 ...
2024-12-19CDA持证人Louis CDA持证人基本情况 我大学是在一个二线城市的一所普通二本院校读的,专业是旅游管理,非计算机非统计学。毕业之 ...
2024-12-18最近,知乎上有个很火的话题:“一个人为何会陷入社会底层”? 有人说,这个世界上只有一个分水岭,就是“羊水”;还有人说,一 ...
2024-12-18在这个数据驱动的时代,数据分析师的技能需求快速增长。掌握适当的编程语言不仅能增强分析能力,还能帮助分析师从海量数据中提取 ...
2024-12-17在当今信息爆炸的时代,数据分析已经成为许多行业中不可或缺的一部分。想要在这个领域脱颖而出,除了热情和毅力外,你还需要掌握 ...
2024-12-17数据分析,是一项通过科学方法处理数据以获取洞察并支持决策的艺术。无论是在商业环境中提升业绩,还是在科研领域推动创新,数据 ...
2024-12-17在数据分析领域,图表是我们表达数据故事的重要工具。它们不仅让数据变得更加直观,也帮助我们更好地理解数据中的趋势和模式。相 ...
2024-12-16在当今社会,我们身处着一个飞速发展、变化迅猛的时代。不同行业在科技进步、市场需求和政策支持的推动下蓬勃发展,呈现出令人瞩 ...
2024-12-16在现代商业世界中,数据分析师扮演着至关重要的角色。他们通过解析海量数据,为企业战略决策提供有力支持。要有效完成这项任务, ...
2024-12-16在当今数据爆炸的时代,数据分析师是组织中不可或缺的导航者。他们通过从大量数据中提取可操作的洞察力,帮助企业在竞争激烈的市 ...
2024-12-16