想了解机器学习?你需要知道的十个基础算法
毫无疑问,作为人工智能的子领域—机器学习在过去的几年中越来越受欢迎。由于大数据是目前科技行业最热门的趋势,基于大量的数据机器学习在提前预测和做出建议方面有巨大的潜力。一些有关机器学习常见的例子有:Netflix基于你以前看过的电影再给你做出影片的推荐,或者亚马逊根据你以前买过的书籍再给你进行图书推荐。
如果想了解更多有关机器学习的知识,要从哪里开始呢?作者第一次入门是在哥本哈根海外交流时选了一门有关人工智能的课程。这门课程的讲师是丹麦科技大学(Technical University of Denmark)的应用数学以及计算机科学全职教授,他的研究领域主要是逻辑学和人工智能方面,主要研究内容是使用逻辑来对计算机类人行为(比如计划、推理以及问题解决等)进行建模。这门课包括理论、核心概念探讨以及亲自动手解决问题。作者所使用的教材是人工智能(AI)领域的经典教材之一:Peter Norvig’s Artificial Intelligence — A Modern Approach(人工智能—现代方法),在其中我们学习的几个主题包括:智能agents、通过搜索解决问题、社会化AI、AI的哲学/社会学/未来。在课程的结尾,作者使用简单的基于搜索的agents来解决虚拟环境中的传输问题。
作者表示通过这门课程学到了相当多的知识,也决定继续学习这个特殊的课题。在接下来的几个星期,作者在旧金山参加了很多关于机器学习、神经网络、数据架构的科技讲座,特别是一个有很多业内知名学者参加的机器学习会议。最重要的是,作者在Udacity中选修了一门“机器学习入门”的在线课程,最近已经完成学习。在本文中,作者将在课程中学习到的机器学习算法分享给大家。
机器学习算法可以分为三个大类:监督学习、无监督学习、强化学习。其中:
监督学习对于有标签的特定数据集(训练集)是非常有效的,但是它需要对于其他的距离进行预测。
无监督学习对于在给定未标记的数据集(目标没有提前指定)上发现潜在关系是非常有用的。
强化学习介于这两者之间—它针对每次预测步骤(或行动)会有某种形式的反馈,但是没有明确的标记或者错误信息。本文主要介绍有关监督学习和无监督学习的10种算法。
1.决策树(Decision Trees):
决策树是一个决策支持工具,它使用树形图或决策模型以及序列可能性。包括各种偶然事件的后果、资源成本、功效。下图展示的是它的大概原理:
从业务决策的角度来看,大部分情况下决策树是评估作出正确的决定的概率最不需要问是/否问题的办法。它能让你以一个结构化的和系统化的方式来处理这个问题,然后得出一个合乎逻辑的结论。
2.朴素贝叶斯分类(Naive Bayesian classification):
朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。
它的现实使用例子有:
将一封电子邮件标记(或者不标记)为垃圾邮件
将一篇新的文章归类到科技、政治或者运动
检查一段文本表达的是积极情绪还是消极情绪
脸部识别软件
3.最小二乘法(Ordinary Least Squares Regression):
如果你懂统计学的话,你可能以前听说过线性回归。最小二乘法是一种计算线性回归的方法。你可以把线性回归当做在一系列的点中画一条合适的直线的任务。有很多种方法可以实现这个,“最小二乘法”是这样做的 —你画一条线,然后为每个数据点测量点与线之间的垂直距离,并将这些全部相加,最终得到的拟合线将在这个相加的总距离上尽可能最小。
4.逻辑回归(Logistic Regression):
逻辑回归是一种强大的统计方法,它能建模出一个二项结果与一个(或多个)解释变量。它通过估算使用逻辑运算的概率,测量分类依赖变量和一个(或多个)独立的变量之间的关系,这是累积的逻辑分布情况。
总的来说,逻辑回归可以用于以下几个真实应用场景:
信用评分
测量营销活动的成功率
预测某一产品的收入
特定某一天是否会发生地震
5.支持向量机(Support Vector Machine):
SVM(Support Vector Machine)是二元分类算法。给定一组2种类型的N维的地方点,SVM(Support Vector Machine)产生一个(N – 1)维超平面到这些点分成2组。假设你有2种类型的点,且它们是线性可分的。 SVM(Support Vector Machine)将找到一条直线将这些点分成2种类型,并且这条直线会尽可能地远离所有的点。
在规模方面,目前最大的使用支持向量机SVM(Support Vector Machine)(在适当修改的情况下)的问题是显示广告,人类剪接位点识别,基于图像的性别检测,大规模的图像分类等。
6.组合方法(Ensemble methods):
组合方法是学习算法,它构建一系列分类,然后通过采取加权投票预测的方式来对新的数据点进行分类。原始的集成方法是贝叶斯平均法,但最近的算法包括对其纠错输出编码、套袋、加速等。
那么组合方法如何运行的呢?为什么说它们比其他的模型要优秀?因为:
它们将偏差平均了:如果你将民主党派的民意调查和共和党的民意调查发在一起平均化,那么你将得到一个均衡的结果,且不偏向任何一方。
它们减少了差异:一堆模型的总结意见没有一个模型的单一意见那么嘈杂。在金融领域,这就是所谓的多元化 — 有许多股票组合比一个单独的股票的不确定性更少,这也为什么你的模型在数据多的情况下会更好的原因。
它们不太可能过度拟合:如果你有没有过度拟合的独立模型,你通过一个简单的方式(平均,加权平均,逻辑回归)对每个独立模型的预测进行结合,这样的话不太可能会出现过度拟合的情况。
7.聚类算法(Clustering Algorithms):
聚类是一种聚集对象的任务,例如:相比其他不同的组在同一组(集群)的对象彼此更为相似。
每个聚类算法都是不同的,比如说有以下几种:
基于质心的算法
基于连接的算法
基于密度的算法
可能性
维度缩减
8.主成分分析(Principal Component Analysis,PCA):
通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。
一些主成分分析PCA程序的应用包括压缩、简化数据、可视化。注意,对于选择是否使用主成分分析领域知识是非常重要的。当数据是嘈杂的时候(所有的组件的主成分分析有相当高的方差),它是不适合的。
9. 奇异值分解(Singular Value Decomposition):
在线性代数中,SVD是一个非常复杂矩阵的因数分解。对于一个给定的m×n矩阵M,存在一个分解,M = UΣV,其中u和v是单一矩阵,Σ是对角矩阵。
主成分分析PCA其是奇异值分解SVD的简单应用。在计算机视觉领域,第一人脸识别算法,运用主成分分析PCA其是奇异值分解SVD来代表面孔作为一个线性组合的“特征脸”,并对其做降维,然后通过简单的方法匹配合适的身份;虽然现代方法更复杂,但是许多人仍然依靠类似的技术。
10.独立成分分析(Independent Component Analysis):
独立成分分析(Independent Component Analysis,ICA)是一种揭示构筑随机变量、技术测量、信号等隐藏因素的统计技术。ICA定义了所观察到的多变量数据生成模型,这通常是给定为一个大型数据库的样本。在该模型中,数据变量被假定为一些未知潜变量的线性混合,同时混合系统也仍然未知。潜变量被假定是非高斯和相互独立的,它们被称为所观察到的数据的独立分量。
ICA与PCA是相关的,但它更强大。在这些经典的方法完全失败的时候,ICA能够找到源头的潜在因素。它的应用包括数字图像、文档数据库、经济指标和心理测试。
通过以上介绍,相信大部分人对于机器学习的算法都有一定的了解。如果对这方面感兴趣的话,可以接着运用你理解的算法去创造机器学习应用,为世界各地的人们创造更好的生活条件。
数据分析咨询请扫描二维码
在准备数据分析师面试时,掌握高频考题及其解答是应对面试的关键。为了帮助大家轻松上岸,以下是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