CDA字幕组

2018-11-03   阅读量: 673

机器学习 数据分析

干货 | 机器学习没有你想的那么复杂

扫码加入数据分析学习群

作者 | Anish Phadnis

翻译 | Mika

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

人脑是最神奇的。你知道我更感兴趣的是什么吗?是我们的学习能力。我们如何能够适应并学习全新的技能,然后应用到日常生活之中呢?


我有一个6岁的弟弟,我看着他从懵懵懂懂的小婴儿逐渐长大。他学会了如何爬行、走路、跑;如何学会说话,理解简单的语法和简单的数学。本文中我就要谈谈如何让机器复制这种学习的能力。


假设我想教机器如何区分狗和猫。这很简单,我的弟弟很容易就能做到。但是如何将其编程在机器上呢?我们不能简单的认为,所有的猫都是尖耳朵,或所有的狗都有毛。如果我们试图用代码写下所有猫狗间的差异,从而来解决这个问题,那么这是非常繁琐的,而且成功的可能性很低。



通过机器学习,算法能够理解猫与狗之间的差异,而无需刻意进行编程。它不需要我们去指导应该如何区分猫和狗。算法只需要看许多不同的猫和狗图像,并学习当中的区别。这与我弟弟学会辨别猫狗很类似。不需要告诉他猫狗的差异,只需要告诉他,这张图是狗,这张图是猫。随着时间的推移,小孩子就能慢慢了解猫狗的分别是什么样了。


总而言之,机器学习能够让机器学会如果执行任务,而无需明确地编程。


深度学习


我们知道机器学习是什么,那么深层学习到底是什么呢?


很简单,深度学习只是机器学习中的一个领域。


深度学习只是机器学习的一个子集


深度学习算法被称为神经网络,它以人脑为模型,模仿人类学习的方式。


让我们以区分猫狗的例子来理解神经网络的运行原理。从本质上讲,神经网络接收输入,这里也就是猫狗的图像;然后得出输出,即标签为猫或狗的图像。在输入和输出之间,隐藏层从图像中提取特征。例如,这张图中有长鼻子,锋利的牙齿,尾巴等,然后通过这些信息预测图像为猫还是狗。


有时候这些特征很重要,比如狗的鼻子比猫长;而有时特征并不重要。为了解决这个问题,神经网络给某些特征赋予了比其他特征更多的权重,即如果一张图像中的动物鼻子较长,则更有可能是狗。最终大量的特征汇集在一起,神经网络通过足够的特征判断图像是否是狗,如果是的话则输出这张图是是狗。


但是如果出错了呢?当然,神经网络无法一开始就准确无误。神经网络判断图像为猫,然而实际上是狗,这是学习的地方。


那这时会怎样呢?它进入隐藏层,神经网络决定将相应的权重赋予相应的特征。如果出错,网络必须进行调整,从而得出正确的结果。经过反复的调整,最终神经网络将能够分辨出两者间的差异。我实际上能够构建这样的神经网络,并得出95%的准确率。结果并不完美,但仍然是惊人的。


能解决哪些问题


在机器学习中,有3个不同的分支,它们都分别解决不同类型的问题。


监督学习


到目前为止,我向你解释的就是监督学习,因为它是最容易理解的。给出输入,并得知输出是什么。我们有猫的图像,而且知道它被标记为猫。通过给合适的特征赋予合适的权重,从而得出正确的结果,即图像为猫。


这就类似你在复习细胞生物学测试。你在在测试自己是否掌握了细胞不同部分的功能。你正在学习细胞结构,即输出,并将其与输出——细胞各部分的功能相匹配。这就是你在学习从输入到输出的过程。


无监督学习


无监督学习是一个数据集,但当中没有标签或没有正确的答案。当中只有数据点,无监督学习的目的是找出数据中的模式,并帮助得出结论。


举一个简单的例子。给监督学习算法一个正方形,告诉它是正方形,然后在给出一个三角形,告诉它这是三角形,诸如此类。接着它会理解是正方形是什么样的,三角形又是什么样的。


而在无监督的学习问题中,它只会给出一堆形状,而不会被告知它这些是形状。在这种情况下,无监督学习算法将相似的形状组合在一起,可能是边的数量相同的形状,具有相同区域的形状,具有相似颜色的形状等等。接着它会找到基础模式能够将形状分类。



这就是无监督学习算法如何尝试在数据点中找到模式的例子。算法确定这是数据点之间的最佳分割,因为所有黄点与其他黄点最相似,所有红点与其他红点最相似,并且所有蓝点与其他蓝点相似。


强化学习


这实际上是我在机器学习中最喜欢的主题,也是我在编程方面投入时间最多的部分。最吸引我的就是以下视频中的这种行走机器人。强化学习是理解如何在环境中让奖励最大化奖励的智能体。在以上视频中,当智能体能够行走时就将获得奖励。为了将奖励最大化,它将尽可能长时间地行走。智能体通过测试所有可能的腿部动作来实现行走。智能体会因此获得奖励,因此它会继续行走并重复这一行动。


这很类似我六岁的弟弟学走路,妈妈会在他迈步时会鼓掌和欢呼。当他摔倒时他会停止让他跌倒的行动,并继续采取获得妈妈鼓掌欢呼的步骤。最终,他学会了跑。


强化学习每次都让我惊叹不已。


机器学习的应用


让我们来谈谈机器学习在现实中的应用。


自然语言处理(NLP)


计算机通过0和1中说话,我们用文字说话。我们的谈话方式与计算机的谈话方式之间存在差距,我们必须训练计算机来理解我们的语言。使用NLP,计算机不仅能够转录单词,而且能够从中提取意义,甚至能以某种语调进行对话!有了Siri,Alexa和Cortana等助手,与智能手机交谈最终会像在手机上使用键盘一样普遍。


计算机视觉(CV)


NLP让计算机具有通话能力,CV让计算机能够看到。这被应用在自动驾驶汽车中,用于检测不同的物体,如其他汽车、行人以及道路上的车道。这能够让计算机从摄像机中提取信息。这还可以用于简单的人脸识别和检测算法,正如Facebook上使用的那样。



分析健康数据


想象一下,Mark每天都在他家附近的公园里散步,但突然有一天他摔倒了,心脏病发作了。心脏病像许多其他疾病一样是非常突然的,几乎没有任何预兆。我们身体中的某些模式预示着即将发生的某些健康方面的问题。通过使用Fitbits等设备能够来跟踪我们身体的健康数据,从而能够分析这些数据并提前开始进行预测。通过分析健康数据,在Mark心脏病发作前一周,医生们就能够知道,并及时提供他需要的帮助。


关键要点

  • 机器学习能够机器学习如何执行任务,而且无需明确地编程。
  • 深度学习是机器学习的一个子集,它使用称为神经网络的特定算法,该算法是以人脑为模型的。
  • 监督学习具有输入和输出,其目的是弄清楚如何从输入到输出。无监督学习具有数据点,其目的只是在数据中找到模式。
  • 强化学习是机器人在物理和虚拟世界中学习如何走路、跳跃和执行其他人类行为的方式。
  • 机器学习和深度学习的潜力是无限的,它将以前所未有的方式彻底改变世界。


原文链接:

https://blog.goodaudience.com/machine-learning-teaching-machines-to-learn-61b0f3eaaba8

添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
0.0000 0 1 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子