社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

机器学习太难?一文带你掌握机器学习的必备基础知识

CDA数据分析师 • 5 年前 • 380 次点击  

作者: Lizzie Turner

编译: Mika
本文为 CDA 数据分析师原创作品,转载需授权



你是否会使用Siri或Alexa等个人助理系统?你是否用垃圾邮件过滤器来处理垃圾邮件?你是否订阅Netflix,并通过其精确的推荐系统来发现新电影呢?如果你符合以上任何一条,那么恭喜你,你已经很好地用到了机器学习!


虽然机器学习听起来很复杂,但实际上是相当简单的概念。为了更好地理解它,让我们在文本中解读这几个概念:机器学习是什么、发展历程、内部原理和重要性。


01

机器学习是什么


人工智能之父,艾伦·图灵很早就曾预测“有一天,人们会带着电脑在公园散步,并告诉对方,今天早上我的计算机讲了个很有趣的事”。 


机器学习的核心是,“用算法解析数据,从中学习,然后对某些事物做出决定或预测。”这意味着,你无需明确地编程计算机来执行任务,而是教计算机如何开发算法来完成任务。机器学习主要有三种类型,它们各有优缺点,分别是:监督学习,无监督学习和强化学习。


来源: Mactores


监督学习


监督学习涉及到标注数据,计算机可以使用所提供的数据来识别新的样本。


监督学习的两种主要类型是分类和回归。在分类中,训练的机器将把一组数据分成特定的类。比如邮箱的垃圾邮件过滤器,过滤器分析之前标记为垃圾邮件的邮件,并将其与新邮件进行比较。如果达到某个百分比,则这些新邮件会被标记为垃圾邮件,并发送到相应的文件夹;不像垃圾邮件的将被归类为正常并发送到收件箱。


第二种是回归。在回归中,机器使用先前标注的数据来预测未来。比如天气应用。利用天气的相关历史数据(即平均温度,湿度和降水量),手机的天气应用可以查看当前天气,并对一定时间范围内的天气进行预测。


无监督学习


在无监督学习中,数据是未标注的。由于现实中,大多数的数据都是未标注的,因此这些算法特别有用。


无监督学习分为聚类和降维。聚类用于根据属性和行为对象进行分组。这与分类不同,因为这些组不会提供给你。聚类将一个组划分为不同的子组(例如,根据年龄和婚姻状况),然后进行有针对性的营销。另一方面,降维涉及通过查找共性来减少数据集的变量。大多数数据可视化使用降维来识别趋势和规则。


强化学习


强化学习使用机器的历史和经验来做出决策。强化学习的经典应用是游戏。与监督和无监督学习相反,强化学习不注重提供“正确”的答案或输出。相反,它专注于性能,这类似人类根据积极和消极后果进行学习。如果孩子碰到了热炉,他很快就会学会不再重复这个动作。同样在国际象棋中,计算机可以学习不将王移动到对手的棋子可以到达的地方。根据这个原理,在游戏中机器能够最终击败顶级的人类玩家。


来源: Nvidia


你可能会问,我们说的是人工智能吗?有点,毕竟机器学习是人工智能的一个分支。人工智能注重开发能像人类一样完成复杂任务的机器,甚至完成得比人类更好。这些任务通常涉及判断、策略和认知推理,这些技能最初被认为是机器的“禁区”。虽然听起来很简单,但这些技能的范围非常广泛,涉及到语言处理、图像识别和规划等等。机器学习使用特定的算法和编程方法来实现人工智能。如果没有机器学习,之前提到的国际象棋程序将需要数百万行代码,以及对手所有的落子可能性。通过机器学习,则只需要少量代码。


还有深度学习和神经网络,稍后我们将更详细地介绍它们。但是现在请注意,深度学习是机器学习的一个子集,专注于模仿人类大脑的生物学和运行过程。


02

机器学习的发展历程


机器学习的最早由贝叶斯在1783年发表的同名定理中提出。贝叶斯定理根据类似事件的历史数据得出事件的可能性。换句话说,贝叶斯定理是一种从经验中学习的数学方法,这也是机器学习的基本思想。


来源:XKCD


几个世纪后的1950年,计算机科学家艾伦·图灵发明了图灵测试,计算机通过文本对话,从而让人类认为与其交谈的是人而不是计算机。图灵认为,只有当机器通过这项测试才能被认为是“智能的”。


在此之后不久,1952年,亚瑟·塞缪尔开发了第一个真正的机器学习程序,在简单的跳棋游戏中,计算机能够根据之前的游戏学习策略,并提高之后的表现。接下来是1963年,唐纳德·米基开发了基于强化学习的tic-tac-toe项目。


在接下来的几十年中,机器学习按照相同模式发展着,即技术突破带来更新、更复杂的计算机,通常通过与专业人类玩家进行战略游戏来测试。在1997年,IBM的国际象棋电脑Deep Blue在国际象棋比赛中击败世界冠军Garry Kasparov。最近,谷歌开发的AlphaGo专注于被认为是世界上最难的游戏——围棋。尽管围棋被认为过于复杂,难以被计算机攻克,但AlphaGo最终在2016年击败了李世石。


机器学习的最大突破是2006年深度学习的发展。深度学习是机器学习的一个类别,旨在模仿人类大脑的思维过程,通常用于图像和语音识别。


如今我们使用的许多技术都不离开深度学习。你是否曾将照片上传到Facebook帐户,并标记图中的人物?Facebook正在使用神经网络识别照片中的人脸。还有Siri,当你向iPhone询问今天棒球比赛的比分时,你的语音将通过复杂的语音解析算法进行分析。没有深度学习,这一切都将难以实现。


03

机器学习的原理


初学者们要注意了,如果想完全理解大多数机器学习算法,那么必须对一些关键数学概念有基本了解。但不要害怕,这些概念很简单,有些可能你已经掌握了。机器学习涉及到线性代数、微积分、概率和统计。


来源:Towards Data Science


线性代数概念Top 3:

1. 矩阵运算

2. 特征值/特征向量

3. 向量空间和范数


微积分概念Top 3:

1. 偏导数

2. 向量值函数

3. 方向梯度


统计概念Top 3:

1. 贝叶斯定理

2. 组合学

3. 抽样方法


一旦掌握了基本的数学概念,就可以入门机器学习了,有5个主要步骤。


来源: Python Tips


让我们看到一些常见的算法:


回归算法


这可能是最流行的机器学习算法,线性回归算法是基于连续变量预测特定结果的监督学习算法。另一方面,逻辑回归专门用于预测离散值。这些算法都以其速度而闻名,它们被认为是最快的机器学习算法之一。


来源:Towards Data Science


基于实例的算法


基于实例的分析根据提供数据的特定实例来预测结果。最著名的基于实例算法是k-Nearest Neighbor,也称为kNN。用于分类中,kNN比较数据点的距离并将每个点分配给它最接近的组。


来源:KDnuggets


决策树算法


决策树算法聚集“弱”学习元素,让它们一起形成强大的算法,这些元素以树状结构组成。其中比较流行的决策树算法是随机森林算法。在该算法中,弱学习元素是随机选择的。在下面的例子中,我们可以发现许多共同的特征(比如眼睛为蓝色或非蓝色),这都无法对动物种类进行辨别。然而,当我们将所有这些观察结果结合在一起时,我们能够形成更完整的理解并进行更准确的预测。


来源:PyBloggers


贝叶斯算法


这些算法基于贝叶斯定理的,最受欢迎的是朴素贝叶斯算法,它经常用于文本分析。例如,大多数垃圾邮件过滤器都使用贝叶斯算法。它们使用按类别标记的用户输入数据来比较新数据,并对其进行适当分类。


来源:Simafore


聚类算法


聚类算法专注找到元素间的共性,并相应地对它们进行分组。常见的聚类算法是K-Means聚类。根据K-Means,分析人员选择聚类的数量(由变量K表示),算法将元素按物理距离分组到适当的聚类中。


来源:Brilliant


深度学习和神经网络算法


人工神经网络算法基于生物神经网络的结构。深度学习采用神经网络模型并对其进行更新。它们是大型且极其复杂的神经网络,使用少量标注数据和大量未标注数据。神经网络和深度学习具有许多输入,这些输入在产生一个或多个输出之前要通过若干隐藏层。这些连接形成一个特定的循环,模仿人脑处理信息和建立逻辑联系的方式。此外,随着算法的运行,隐藏层通常会变得更小、更细微。


来源:Synopsys


其他算法


下面的图表注明了主要的机器学习算法,它们的类别以及之间的关系。


来源: scikit


一旦选择并运行算法,你还需要一个非常重要的步骤对结果进行可视化。虽然与算法编程相比,这看似很简单而没有技术含量。但出色的可视化能力对于数据科学家来说是至关重要的。即使你得出的分析见解再好,一旦没有人能理解也是毫无价值的。


04

机器学习的重要性


我们需要明确的是,机器学习有潜力能够改变世界。通过Google Brain和斯坦福机器等研究团队的努力,我们正朝着真正的人工智能迈进。但是,机器学习即将影响的领域有哪些呢?


物联网


物联网或IOT,指家庭和办公室中与网络连接的物理设备。其中一个流行的物联网设备是智能灯泡,其销售额在过去几年中飙升。随着机器学习的进步,物联网设备比以往更智能,更复杂。


物联网相关的机器学习应用主要有两方面,提高设备性能和收集数据。


提高设备性能非常简单,我们可以使用机器学习来定制环境,比如用面部识别软件识别谁是房间里,并相应地调整温度和空调。


收集数据更加简单,通过连接网络的设备(如Amazon echo),亚马逊等公司将收集的用户数据提供给广告商,这些数据包括你会看哪些节目,起床和睡觉的时间,你家里有几口人等等。


来源: i-Scoop


聊天机器人


在过去几年,聊天机器人的数量激增,复杂的语言处理算法在不断改进。公司在自己的移动应用和第三方应用上使用聊天机器人,从而提供比更快、更高效的客户服务。例如,如果要从H&M订购衬衫,你可以告诉他们的聊天机器人你想要的款式和尺寸,轻松订购产品。


来源:zipfworks


自动驾驶汽车


如今,雪佛兰、优步和特斯拉等几家大公司正在开发自动驾驶汽车。这些汽车使用通过机器学习进行导航、维护和安全程序。比如交通标志传感器,它使用监督学习算法来识别交通标志,并与标注数据集进行比较。因此,汽车看到停车标志时,系统将进行确认并停车。


来源:Business Insider


以上就是机器学习相关的一些基础概念,希望能够对你的机器学习之旅有所帮助。


原文链接:

https://medium.com/@iamlizzieturner/lets-talk-about-machine-learning-ddca914e9dd1





CDA 课程咨询丨赵老师

联系电话:13381275813
扫描二维码


更多精彩文章

细数数据科学团队中的十大关键角色

做数据分析,Python和R究竟哪个更强?

数据科学家:那些年,我都学过哪些编程语言

除了敲代码,程序员的一天日常是怎样的

9 大实际用例,让你重新认识区块链

求职丨我是如何成为了谷歌的软件工程师

Python能用来做什么?以下是Python的三大主要用途




今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/Ql9tH7vSPE
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/23891
 
380 次点击