与自由的发展,开源的机器学习和人工智能工具如谷歌TensorFlow和sci-kit学习,以及“ML-as-a-service”产品如谷歌微软Azure云预测API和机器学习的平台,它是各种规模的公司从来没有容易利用的数据。但机器学习是一个如此庞大而复杂的领域。你从哪里开始学习如何在业务中使用它?
在本文中,我们将调查机器学习算法的现状,并解释它们是如何工作的,提供示例应用程序,共享其他公司如何使用它们,并提供关于学习它们的进一步资源。本行政概述将提供学习如何应用机器学习算法的第一步,使您的企业更有效率,更有效,更有利可图。
当你通过下面的例子看,你可能想记下它们分别类似于问题,这些算法可以将业务挑战解决,也许可以预测在煤矿的安全问题发生的算法也可以用于预测哪些你餐厅特许经营是在不遵守卫生法规风险。通过本文的结尾,您可以使用的算法,以进一步研究和他们的潜力扎实抓好对你的底线提供了实实在在的利益的行动计划。
分类
目标:分类算法的目标是地方项目到具体类别和回答的问题,如:这是肿瘤癌变?这是垃圾邮件?请问这种贷款申请人默认?什么类型的文章的这是什么?其中人口这是否在线客户落入?
贝叶斯分类器
贝叶斯分类是一种简单而高效的分类算法。它们是基于贝叶斯定理,它简洁地定义给定的已发生另一个相关的事件的事件的概率。贝叶斯分类通过保持特定概率的轨道数据进行分类特性一个数据集,你认为可能影响其-characteristics分类,陪特定分类。
虽然贝叶斯分类器可以用于任何分类任务,它们与文件的分类,尤其是垃圾邮件过滤器特别有用。例如,计算机科学家和著名的启动投资者保罗·格雷厄姆开发了一个简单的贝叶斯垃圾邮件过滤器这引起了他的垃圾邮件,而没有误报(非垃圾邮件误标记为垃圾邮件)的99.5个百分点。特点格雷厄姆,使用包含在电子邮件的话,电子邮件标题,并嵌入HTML和JavaScript的存在。
格雷厄姆提供的垃圾邮件过滤器的工作原理通过提取15个最有趣的功能,或者说是15个功能或者垃圾邮件的最有力指标(权重接近1.0)一个很好的例子或垃圾邮件中最弱的指标(权重接近0.0)。
下面的图表组织了Graham的垃圾邮件中的一个有趣的特性:
功能 | 价值 | 解释 |
夫人 | 0.99 | 垃圾 |
提升 | 0.99 | 垃圾 |
共和国 | 0.99 | 垃圾 |
最短的 | 0.05 | 不收垃圾资讯 |
强制性 | 0.05 | 不收垃圾资讯 |
标准化 | 0.07 | 不收垃圾资讯 |
抱歉 | 0.08 | 不收垃圾资讯 |
支持 | 0.09 | 不收垃圾资讯 |
人们 | 0.09 | 不收垃圾资讯 |
输入 | 0.91 | 垃圾 |
质量 | 0.89 | 垃圾 |
组织 | 0.12 | 不收垃圾资讯 |
投资 | 0.86 | 垃圾 |
非常 | 0.15 | 不收垃圾资讯 |
有价值 | 0.82 | 垃圾 |
通过贝叶斯规则将这些概率组合在一起,得到的概率是0.90,这意味着电子邮件很可能是垃圾邮件。
贝叶斯分类器即使在处理复杂的文档分类任务时也很有效。斯坦福大学的一项研究表明,朴素贝叶斯分类器(Naive Bayes Classifier,“Naive”来自于假设每个单词的外观独立于其他单词的外观的分类器)是对推文的情绪分析有85%的准确率。在麻省理工学院的另一项研究发现朴素贝叶斯分类器可以准确分类的文章麻省理工学院学生报77%的时间。其他潜在的应用包括作者身份识别甚至预测脑瘤治疗后是否复发或进展。
优点:
- 通常可以执行更复杂的算法,但易于实现。这使得贝叶斯分类器成为一个很好的一线机器学习算法。
- 简单的解释。每个特性都有一个概率,因此您可以看到哪些特性与某些分类关联最紧密。
- 一个在线技术,意味着它支持增量训练。训练贝叶斯分类器后,每个特征都有一个特定的条件概率。要包含一个新的数据样本,只需更新概率—不需要重新遍历原始数据集。
- 非常快。由于贝叶斯分类是简单地组合预先计算出的机率,新的分类可以进行得很快,即使是在大型,复杂的数据集。
缺点:
- 不能处理依赖于特征的组合的结果。的假设是,各彼此独立-有时可以降低精度。例如,词语“在线”和“药学”可能无法正常是垃圾邮件的重要指标在电子邮件中,除非词语一起使用。贝叶斯分类器将无法挑上的这两个功能,相互依存。
决策树分类器
决策树可能是最直观的理解的机器学习算法,因为在本质上它们是软件形式的流程图。决策树分类使用一系列的if-then语句,最终导致分类的项目。
一个简单的例子:你在餐厅遇到的饮料,并想弄清楚它是什么类型的饮料。决策树可基于以下几个问题,结果饮料分类:
是饮料热或冷吗?
它是凉的。
它是含咖啡因的还是不含咖啡因的?
它含有咖啡因。
它是碳酸(“汽水”)?
这不是碳酸。
是用豆子还是树叶做的?
它是用树叶做的。
最后的分类:冰茶
一个有效的决策树的关键是有一个划分数据集报表精心也就是说,更均匀的数据,各部门后,更好的是分工。有多种指标,可用于确定如何分割决策树,两种最常见的熵和基尼杂质。使用所谓的算法大车(分类树和回归树),树的每一层都通过导致所选度量的最大缩减的属性进行分割。这个过程重复进行,直到进一步的分割不再减少这个度量,并且树就完成了!
决策树的一个更实际的应用可能是预测用户注册。假设你订阅服务,和您的系统日志几个特征对你已经注册了免费试用的用户——他们是否已经尝试过你的互动演示,他们是否已经注册了你的邮件列表,他们如何发现你的网站(搜索引擎、社交媒体等),以及他们是否最终签订了服务的付费版本。
决策树不仅可以使用这些数据来预测哪些新的免费试用用户将最终成为付费用户,而且也表明你确切的漏斗导致他们那里。也许这是社会化媒体 - >邮件列表 - >付费订阅,这表示您的演示是伤害你的转化率,而你的社交媒体带来的付费用户。
其他应用实例:BP使用决策树来分离石油和天然气“代替手工设计的规则体系... [决策树]胜过人类专家和保存BP百万。”一个麻省理工学院的研究研究如何使用决策树来预测申请人是否会收到贷款,以及该申请人是否会违约。
优点:
- 非常容易解释和解释。决策树通过“如果-那么”的流程图来反映人类的决策,将数据分解,直到数据被分类。
- 可以图形化显示。从本质上讲,决策树是一个分支流程图(只是一个经过算法优化以实现最优分割的流程图),以图形方式显示的更小的决策树甚至可以被非技术人员轻松地解释。
- 能够同时使用分类数据和数值数据;e。g,这辆车的红色和“这辆车的轮胎直径在6到8英寸之间吗”一样好用吗?在其他分类器中,您必须创建一个“哑”变量来解决这个问题。
- 可处理的变量的相互作用。在这难倒分类贝叶斯上面的“网上药店”的例子,决策树可以通过它是否含有“药”它是否包含世界“在线”拆分数据集,以及分裂的结果,确保“网上药店” =垃圾邮件,而‘在线’与‘药’=非垃圾邮件。
缺点:
- 决策树可能不像其他分类算法那样准确,因为它们有“过度拟合”数据的倾向(这意味着它们在用于训练它们的数据集中做出了出色的预测,但对新数据的预测却很糟糕)。尽管如此,仍然有各种各样的“修剪”树的方法来提高准确性。
- 决策树不是在线技术,这意味着整个树必须从头开始,以纳入新的数据,因为该优化分割数据可能改变的变量重新创建。
- 随着数据集的增大,决策树的节点数量可能会变得非常庞大和复杂,从而导致分类速度变慢。
支持向量机
支持向量机(SVM)是一个复杂的,但强大的分类技术。上的数字数据工作,支持向量机分类通过找到分界线(正式称为最大利润的超平面),该分离数据最干净。这并不总是天生明显,所以有时多项式变换(转换数据到不同的轴,例如,而不是对SAT成绩GPA绘制为如果学生考上某大学预测,你可以变换通过绘制gpa平方与SAT分数平方的数据被用来将数据转换到一个不同的空间,其中的分界线将更加清晰。
分类是基于分界线新数据落在的哪一侧。这可以让即使是技术人员非常复杂,但一旦SVM构造它的使用相当简单。虽然最常用的分类问题,支持向量机一直延伸到回归任务在最近几年。
例如:支持向量机通常与非常复杂的数据中使用的应用,如识别笔迹,面部表情分类,和分类图像。例如,SVM可以识别写在阿拉伯语/波斯语脚本数字用94%的准确度。在这种情况下,有10个等级(0,1,2,3 ... 9),和SVM上的位逐位操作的情况下向每个手写体数字分类到这些类中的一个。在这种情况下,SVM更精确的神经网络。
所述选择的复杂性特征,在这种情况下,用于这涉及白色像素的比例的手写的每个图像中的“特征抽取”的另一算法数位使这类问题更适合于SVM比,也就是说,一个贝叶斯分类器,在功能通常也预先确定。
优点:
- 速度非常快,在新的分类数据。有没有必要去通过训练数据进行新的分类。
- 可连续工作分类和数值数据的混合物
- 支持向量机是“稳健的高维”,这意味着它们可以即使有大量的功能很好地工作。
- 高精确度。
缺点:
- 黑盒技术。与贝叶斯分类器和决策树,支持向量机不提供“引擎盖下”易消化的数据。SVM的可能是一种十分有效的分类,但是您可能无法弄清楚为什么它做了那些分类。
- 通常需要非常大的数据集。其他方法,如决策树,仍然可以给出小数据集有趣的输出;这未必是用SVM的情况。
- 支持向量机不在线。每次合并新的培训数据时,都需要更新这些数据。
神经网络
神经网络由松散的模仿大脑处理信息的方式使这两个数字(见下节)和分类预测。
在人脑中,通过形成与其它神经元的连接,并通过这些神经网络发送的电化学信号的神经元的发送信息。人工神经网络(也更简单地称为神经网络或神经网络)
神经网络有很多种,为了简单起见,我们只看一种多层感知器神经网络(MLP NN)。MLP神经网络包含至少三层(但通常更多)神经元:输入层、一个或多个隐藏层和一个输出层。输入层由用于生成预测的数据组成。隐层之所以命名,是因为它们既不与输入也不与最终输出直接交互,而是对前一层提供给它们的数据进行处理,而输出层则是算法产生的最终预测。
这些层是由突触(在现实生活中的大脑,使电化学信号到神经元之间通过相应的结构命名)。这些突触具有权重,其中,在与所述输入的组合,确定哪些在后续层的神经元被激活,这反过来又影响其在接下来的层的神经元被激活,依此类推。
最后一层神经元将结果反馈给输出,而输出最强的(例如,与输入关联最紧密的分类)就是算法的预测。对于未经训练的人来说,隐藏层的操作可能特别神秘,如下所述,即使是专家也无法对其输出做出有意义的解释。
突触的重量最初可以随机分配,然后通过一种被称为反向传播。所述MLP NN是针对正确的结果是已知的 - 例如馈数据,虎的图像和分类“虎”。如果MLP NN错误分类的图像,这将会导致一个“虎”分类中的突触的权重略有增加,而导致其他分类是突触的权重略有下降。有了足够的训练数据,突触的权重最终收敛于他们的最优值,(最好)的MLP NN现在的高精确度的分类虎图像。
尽管无可争议的最复杂的机器学习算法这里讨论,神经网络也是机器的今天学习研究中最令人兴奋和活跃的领域。随着数据集的大量增加和计算能力的今天现在可用,深度学习,其中设有一个带许多层神经网络,可以应用到许多复杂的数据集像音频和图片。
神经网络的应用并不缺乏,业内一些最大的参与者正将其应用于前沿解决方案:亚马逊使用神经网络生成的产品建议;马萨诸塞州总医院采用深度学习提高病人的诊断和治疗水平;Facebook的使用深度神经网络面部识别;谷歌使用神经网络进行谷歌转换。
优点:
- 高度可扩展的。随着海量数据集,其他的算法能(最终)高原在性能(见这个图片从这个幻灯片由百度的首席科学家Andrew Ng博士介绍),而神经网络的性能不断提高。
- 一个在线方法。神经网络可以用新的数据逐步训练。
- 节省空间。量词像贝叶斯,它们由号码的列表表示(对于贝叶斯分类器,该列表表示特征的概率;对于神经网络,它们代表突触权重)
缺点:
- 黑盒方法。在许多数千个节点的多的突触数量级大的神经网络,这是很难甚至无法了解的算法来确定它的输出。
- 神经网络的复杂性的绝对水平,甚至在他们这个高度简化的解释,即高技能AI研究人员和从业者需要正确地实现他们的手段证明。
Logistic回归
逻辑回归是一种利用属性的分类算法物流功能(有时也称为S形函数),一个“S”形曲线,其特征为函数两端为高原,中间为快速生长。权重分配给特征,然后反馈给逻辑函数,逻辑函数输出0到1之间的数字。决策边界决定分类。例如,如果您使用逻辑回归来预测欺诈的信用卡交易,您可能会确定低于0.5的输出是合法的交易,而高于0.5的输出是欺诈的交易。您的决策边界是0.5。
逻辑回归的关键是训练模型为所有特征分配适当的权重。这首先需要一个成本函数,这是一个简单的函数,它决定了与训练示例相比,每个预测的错误级别。
logistic回归中最常见的成本函数是平方和错误(也称为残差平方和)。然后,使用被称为梯度下降演算技术中,权重被连续地调节,直到所述成本函数被最小化。在这一点上,逻辑回归分类器在训练集预测结果准确优化,这是用它来预测新的数据分类的起点。
逻辑回归可以扩展到两类以上的数据多项Logistic回归),通过使用“一个抗所有”的模式。要分类,说,三种类型的文件,收据,备忘录,客户邮寄多项Logistic回归将运行三次,第一次分类文档作为“收据或不收”,然后在“备忘录或不备忘录”,最后“客户邮件或不客户的邮件”,并结合这些结果做出预测。
像贝叶斯分类器,逻辑回归是一个良好的第一线的机器学习算法,因为它相对简单且易于实现的。一些应用实例包括:金属片的分析,预测在煤矿安全问题和不同的医学应用。
优点:
- 容易理解。Logistic回归输出0和1之间的数字,其可以被松散地(0.312可被解释为的信用卡交易是欺诈性的31.2%的可能性)解释为概率。该功能的权重很容易地指出哪些功能是在确定比其他类别更为重要。
缺点:
- 很容易过度拟合。逻辑回归可能需要一个相当大的训练集才能在训练集之外做出准确的预测。
- 不是一个在线技术。合并新数据需要再次运行梯度下降。
- 在梯度下降中有权衡。梯度下降速度越快,就越有可能错过最优权值。有时很难找出最佳速度和精度之间的权衡,而且反复试验很费时间
- 需要分类数据的虚拟变量。因为逻辑回归仅产生实值输出,分类数据必须通过一个虚拟变量被转换为实际值(例如,转换“红色或不红”到“1或0”,其中红色= 1,不是红色= 0)。
线性回归
线性回归是一个熟悉的算法,试图创造一个最佳拟合线的数据集,并使用该行作出新的预测。这是线性函数(认为Y = mx + b中从高中代数,其中x是特征和m为特征权重),最大限度地减少由成本函数确定误差(通常为平方和误差函数)。简单的线性回归仅使用一个可变的,并且在其范围因此限制,但多变量线性回归能够处理更复杂的问题。像logistic回归,梯度下降通常被用来确定最优特征的权重。
有线性回归许多可能的应用,例如预测房地产价格,估计工资,预测金融投资组合的表现,和预测的流量。在一些情况下,线性回归组合使用与其它更复杂的技术,以产生更精确的结果,通过单独任何单个算法所提供的那些。
优点:
- 易于实现和解释。线性回归在实现难度上与逻辑回归相似,但线性方程比逻辑函数更直观。
缺点:
- 梯度下降法权衡。与逻辑回归一样,梯度下降法也需要在速度和准确性之间进行权衡,而正确的选择可能需要多次反复试验和出错。
- 不是一个在线技术。合并新数据需要再次运行梯度下降。
- 需要分类数据的虚拟变量。因为线性回归仅产生实值输出,分类数据必须通过一个虚拟变量被转换为实际值(例如,转换“红色或不红”到“1或0”,其中红色= 1,不是红色= 0)。
再邻居
假设你有一张非常罕见的棒球卡,想在eBay上出售。你如何确定一个好的销售价格?您可以查看该卡(或类似的卡)最近的售价,并在该范围内对您的卡进行定价。
这是本质如何K最近邻居的作品。它比较“附近的”项目预测新数据的值的新的数据块具有相似值,然后平均数据。数据点之间的“距离”是由指标,如确定欧氏距离或Pearson相关。
的“K”在k-最近邻是最接近的值的数量的占位符值平均,以使该预测。该算法也可以使用加权平均,其中值附近在确定平均的权重。变量可能需要扩大规模,例如,使用卧室和平方英尺的个数,预测房价时,您可以选择使用面积和卧室,再乘以1000的数量,以保持两个变量相同的规模。
K-nearest neighbors可用于预测房价(如上面的简化示例所示)、市场上商品的价格(如上面的棒球卡示例所示)和be用来做产品推荐。
优点:
- 线上技术。就像一个朴素贝叶斯分类器,K近邻支持增量训练
- 能够处理复杂的数值函数,同时又易于解释。你可以清楚地看到哪些邻居被用于最后的预测。
- 有用的,如果数据难以/昂贵的收集。缩放过程可以揭示哪些变量是不重要的进行预测,从而可以抛出。
缺点:
- 需要所有的训练数据来进行预测。这意味着k近邻对于大型数据集可能非常慢,并且可能需要大量空间
- 当有数百万个变量时,找到正确的比例因子是一件很繁琐的事情,而且计算起来也很昂贵。
总结
既然您对常见的机器学习算法及其应用程序已经比较熟悉了,那么接下来如何使用这些知识来帮助您实现业务目标呢?
首先,确定您的业务需求,并将它们映射到相应的机器学习任务。希望得到贵公司的社交媒体帖子是正还是负的实时数据?这是一个分类任务。想预测你的房地产资产会是什么值得明年?这是一个回归的任务。
二,审议上述算法,更深入地研究一些相关的人。尽管专家,如机器学习工程师,数据科学家和人工智能研究者,可能需要优化和完善这些算法为您具体的使用情况下,很多场外的现成的工具和产品可供您上手,如:
- TensorFlow谷歌的开源AI框架
- scikit-learn,一个开源Python的机器学习库
- 谷歌的云API预测,是谷歌云平台的一部分
- Azure机器学习这是微软云服务的一部分
- Cloudera——大数据平台,内置管理和数据功能
需要注意的是,由于空间/范围的限制,有一些机器学习算法和主题我们在这里没有涉及:
- 优化算法,如遗传算法和模拟退火,这有助于找到最优解与约束的问题。示例应用:最大化航空公司收入。
- 聚类算法,如K-均值聚类,其中发现数据的分组。示例应用:确定妇女的集群在一个交友网站,以最大限度地提高比赛。
- 推荐系统,这是算法的大杂烩,包括一些上面提到的应用,使产品的建议或查找用户/是彼此相似的产品。示例应用:在亚马逊网站上向用户推荐产品。
有兴趣了解更多关于如何将机器学习应用到您的业务或行业?以下的Emerj指南和文章是一个很好的开始:
- 人工智能和安全:当前的应用和未来的潜力
- 如何将机器学习应用于商业问题
- 机器学习和金融-现在和未来的应用
- 机器学习医疗保健应用- 2016年及以后
- 机器学习行业预测:专家共识
- 机器人学中的机器学习——5个现代应用
- 预测分析和营销-什么是可能的,它是如何工作的
- 机器学习和预测分析的小企业的国家
图片来源:战略转型学习