小白也能看懂的机器学习

2017年1月18日 248点热度 0人点赞 0条评论

下面2张图中谁是爱因斯坦?


图片

图片



可是,你能教会你的电脑认出爱因斯坦吗?


图片




什么是机器学习?


1959年,Arthur Samuel说…


图片


图片


好吧,这里有一个经典的解释,来自斯坦福大学的印度学生Pararth Shah在Quora的解答。(由伯乐在线 - jiqihuman 翻译自 Pararth Shah)


买点芒果去


可是不知道该怎么选芒果?

图片

假设有一天你准备去买点芒果。有个小贩摆放了一车。你可以一个一个挑,然后小贩根据你挑的芒果的斤两来算钱(在印度的典型情况)。显然,你想挑最甜最熟的芒果对吧(因为小贩是按芒果的重量来算钱,而不是按芒果的品质来算钱的)。


可是你准备怎么挑呢?

你记得奶奶和你说过, 嫩黄的芒果比暗黄的甜。所以你有了一个简单的判断标准:只挑嫩黄的芒果。你检查各个芒果的颜色, 挑了些嫩黄的,买单,走人,爽不?

可没那么简单。

生活是很复杂的

你回到家,开始慢慢品尝你的芒果。你发现有一些芒果没有想的那么甜。你焦虑了。显然,奶奶的智慧不够啊。挑芒果可不是看看颜色那么简答的。

经过深思熟虑(并且尝了各种不同类型的芒果),你发现那些大个儿的,嫩黄的芒果绝对是甜的,而小个儿,嫩黄的芒果,只有一半的时候是甜的(比如你买了100个嫩黄的芒果,50个比较大,50个比较小,那么你会发现50个大个儿的芒果是甜的,而50个小个儿的芒果,平均只有25个是甜的)。

你对自己的发现非常开心,下次去买芒果的时候你就将这些规则牢牢的记在心里。但是下次再来到市集的时候,你发现你最喜欢的那家芒果摊搬出了镇子。于是你决定从其它卖芒果的小贩那里购买芒果,但是这位小贩的芒果和之前那位产地不同。现在,你突然发现你之前学到的挑芒果办法(大个儿的嫩黄的芒果最甜)又行不通了。你得从头再学过。你在那位小贩那里,品尝了各类芒果,你发现在这里,小个儿、暗黄的芒果其实才是最甜的。

没多久,你在其它城市的远房表妹来看你。你准备好好请她吃顿芒果。但是她说芒果甜不甜无所谓,她要的芒果一定要是最多汁的。于是,你又用你的方法品尝了各种芒果,发现比较软的芒果比较多汁。

之后,你搬去了其它国家。在那里,芒果吃起来和你家乡的味道完全不一样。你发现绿芒果其实比黄芒果好吃。

再接着,你娶了一位讨厌芒果的太太。她喜欢吃苹果。你得天天去买苹果。于是,你之前积累的那些挑芒果的经验一下子变的一文不值。你得用同样的方法,去学习苹果的各项物理属性和它的味道间的关系。你确实这样做了,因为你爱她。

 

有请计算机程序出场

现在想象一下,最近你正在写一个计算机程序帮你挑选芒果(或者苹果),它会怎样选?


图片

它可能根据芒果的大小(重量)和颜色来挑选…

图片

你会写下如下的规则:

if(颜色是嫩黄and 尺寸是大的 and 购自最喜欢的小贩): 芒果是甜的

if(软的): 芒果是多汁的

等等等等。

你会用这些规则来挑选芒果。你甚至会让你的小弟去按照这个规则列表去买芒果,而且确定他一定会买到你满意的芒果。

但是一旦在你的芒果实验中有了新的发现,你就不得不手动修改这份规则列表。你得搞清楚影响芒果质量的所有因素的错综复杂的细节。

如果问题越来越复杂, 则你要针对所有的芒果类型,手动地制定挑选规就变得非常困难。你的研究将让你拿到芒果科学的博士学位(如果有这样的学位的话)。

可谁有那么多时间去做这事儿呢。

 

有请机器学习算法

机器学习算法是由普通的算法演化而来。通过自动地从提供的数据中学习,它会让你的程序变得更“聪明”。

你从市场上的芒果里随机的抽取一定的样品(训练数据),制作一张表格, 上面记着每个芒果的物理属性, 比如颜色, 大小,形状, 产地, 卖家, 等等。(这些称之为特征)。


还记录下这个芒果甜不甜, 是否多汁,是否成熟(输出变量)。你将这些数据提供给一个机器学习算法(分类算法/回归算法),然后它就会学习出一个关于芒果的物理属性和它的质量之间关系的模型。

下次你再去市集, 只要测测那些芒果的特性(测试数据),然后将它输入一个机器学习算法。算法将根据之前计算出的模型来预测芒果是甜的,熟的,并且/还是多汁的。

该算法内部使用的规则其实就是类似你之前手写在纸上的那些规则(例如,决策树),或者更多涉及到的东西,但是基本上你就不需要担心这个了。

瞧,你现在可以满怀自信的去买芒果了,根本不用考虑那些挑选芒果的细节。更重要的是,你可以让你的算法随着时间越变越好(增强学习),当它读进更多的训练数据,它就会更加准确,并且在做了错误的预测之后自我修正。但是最棒的地方在于,你可以用同样的算法去训练不同的模型, 比如预测苹果质量的模型, 桔子的,香蕉的,葡萄的,樱桃的,西瓜的,让所有你心爱的人开心:)

这,就是专属于你的机器学习,是不是很酷啊。

机器学习的类型

监督学习(Supervised Learning)

图片



在监督式学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果。训练数据中的每一个输入都有对应的确定的输出,就像给每个问题提供一个标准答案一样,我们告诉计算机每个输入所对应的标准的输出,期望计算机能够学习到输入输出之间的联系,并对新的输入能够给出一个正确的输出。

对于监督学习主要有两类问题:回归(Regression)和分类(Classification)。

图片

回归通常用来预测一个值,如预测房价、未来的天气情况等等,例如一个产品的实际价格为500元,通过回归分析预测值为499元,我们认为这是一个比较好的回归分析。回归是对真实值(Real)的一种逼近预测。

分类用于将事物打上一个标签,通常结果为离散值(Discrete)。例如判断一幅图片上的动物是一只猫还是一只狗。分类并没有逼近的概念,最终正确结果只有一个,错误的就是错误的,不会有相近的概念。

图片

非监督学习(Unsupervised Learning)

图片


在非监督学习中,训练集不含标签,我们使用Clustering算法来寻找数据集包含的特定结构。在这一类学习算法中,我们只给定输入数据,但是没有指定对应的输出,就像对于每个没有标准答案一样,我们没有告诉计算机每个输入对应的输出。这类算法的目标是找到数据中的一些有趣的结构、模式等。


在非监督式学习中,数据并不被特别标识,学习模型是为了推断出数据的一些内在结构。常见的应用场景包括关联规则的学习以及聚类等。

Youtube上的视频推荐,购物网站如何知道你想要买的东西?答案就在非监督学习!

图片

强化学习(Reinforcement Learning)

强化学习有三个重要参数,状态state,动作action,奖励reward。

图片

强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益。其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。

因此,强化学习对于包含长期反馈的问题比短期反馈的表现更好。

图片

它在许多问题上得到应用,包括机器人控制、电信通讯、双陆棋和跳棋等等。

是不是很酷?


网优雇佣军投稿邮箱:[email protected]

长按二维码关注

图片

通信路上,一起走!

41590小白也能看懂的机器学习

这个人很懒,什么都没留下

文章评论