00:13
接下我们主要讲的呢,是机器学习实践,在讲之前呢,还是要给大家先简单的一介绍这个机器学习的基本的概念,积器学习我们上午讲了一些宏观上的一些认识啊,但是大家并不知道机器学习达到一个数据之后,怎么样去预测,怎么样去这个建模,对吧,这个不了解,那我先简单给大家普及一下这块的一个知识。机器学习呢,主要做的是这样一个事情,通俗的来讲就是首先你在公司内部有一个爬虫组,数据爬下来之后呢,存白口一般存不下,对吧,对吧,纯白口存不下,一般存在什么地方呢?芒果DV啊,芒果D有一定不一定存在下,一般存在哈杜上,大家去取出去的时候呢,可能去写一个哈多的一个脚本,写个Python脚本去哈取数据,也可能去写一个circle,类似于circle的在have上或在SPA上去取数据,明白吧。
01:06
大家可能把数据取下来,取下来之后呢,就进进入到了我们数据分析和机器学习这部分的一个工作,现在我们已经有数据了,但是呢,我们现在除了数据以外什么都没有,这个时候我们首先面临的一个问题就是我们究竟要拿数据干什么,比如打个比方,现在你有了用互联网用户的一个点击的一个行为,对吧,你现在想让你的这个呃收入就是你就假如你是做广告的,你想让你的收入最大化,那么现在的优化目标就是点击率,明白吧,我只要现在我先拿到很多好多数据下来,我现在目标是通过这个数据里边学到怎么样搭配,怎么样组合,才能让它的点击率CTR最大化,只要点击率最大化的话,那么我收入肯定就很高,对吧,可以这么理解啊,当然当然详细的广告里边肯定比这更复杂,因为它竞价排名吧,现在是吧,你每一个人出价不一样,比如有的人点一次是一块钱,有的人点一次是十块钱,那当然肯定不是一样的了,对吧,当然我们先可以看CT。
02:06
这个指标。那么现在我们要求一个CTR,最大化的这样一个指标,在机器学习里边跟别的方向不太一样的地方是,我们现在什么都没有,只有数据。只有数据对吧?所以接下来我们要学很多模型去做预测,大家当去做CCR预测的时候,很可能要选择不同的模型,看看哪个模型效果更好,这就是我上午给大家讲过的,我们现在不知道model是什么,我们假设一个model,假设它有MODEL1,然后得到一个结果,看看它对不对,MODEL1得出的结果不对,那我们就换MODEL2,对吧?当然不存在不对,最多就是准确率谁高谁低的问题,我们就选一个准确率最高的model用上去。机器学习里边的model呢,本身没那么多,大概呢也就是十几个啊,而且是做不同的工作用的,所以呢,机器学习在做的事情呢,就是拿到一个输入,然后呢,扔到这个学习算法,也就是模型里去得到一个输出,对吧?
03:07
就是很简单的一个事情哈。从学习方式上来说呢,现在有这么四种学习,这个大家要了解,监督学习、无监督学习、半监督学习和强化学习。什么是监督学习呢?就是我们很小的时候看那个天上的月亮。每次你看到这样一个月亮,然后呢,爸妈就告诉你,这是一个半月,这不是一个满月。告诉你几次以后呢,你就学会了。这个图像对应的就是半月。另外一个圆的对应的就是满月。你是在监督的情况下学会的?明白吧,这叫监督学习。从信息论的角度上来讲呢,就是你收获到了外界的知识。万一有知识输入,就别人告诉你的这是什么,那是什么,就是知识输入的对吧,就是监督学习,第二个叫无监督学习,什么叫无监督学习呢?打个简单的比方,我们看这个阅兵图。
04:09
我们很自然的发现这是一堆是吧?这是一堆,这是一堆对吧?我们看这个图,我们没有收获到别人给我们的任何信息,这些我们现在就是都其实很贫瘠,我们不知道他是陆军啊,他是什么,海军还是空军,我们不知道,但是呢,我一看我就知道他们是一对,他们是一对,他们是一对,对吧?我能本能的把它分出来,这叫无监督学习,无监督学习里边用的最多的一种学习方式叫什么呢?叫聚类。就叫聚类,所谓物以类聚,人以群分,叫聚类。聚类是干什么用的呢?就是做用户画像,里边用的就很多,比如现在我有12亿用户,对吧?假如我有12亿用户,那我不能对每一个人都做推荐。如果是这样的话,很可能我这个小钱,我像小公司,我刚创业12亿人,我根本做不过来是吧?当然有12亿人也不是小公司了,假设120万啊,有百20万的话,我也做不过来,对吧?怎么办呢?我先把人锯成几堆,有人爱干这个,有人爱干那个,对吧?我先锯成几堆,至于怎么聚,我根本就不知道,我也不管,也没有人告诉我,反正机器自己去聚,聚聚类之后,我把每一个类拿出来对他做特殊的策略,明白吧,这是聚类。
05:26
接下来还有一个半监督学习,半监督学习是什么意思呢?就是。这个说起来呢,就其实跟前面监督学习很像,半径督学的意思就是说啊,给你一一个数据样本,再一个数样本,再给你九个样本,其中一个样本告诉你标签了,剩下九个没告诉你。你要把它放到一块儿一起学。就既有数据,就既有信息输入,但是又不是全部的输入,然后最后一个比较有意思啊,叫强化学习,大家看到人工智能玩什么超级玛丽那些东西全是强化学习搞出来,包括阿尔法O都要强化学习,怎么做的呢?就是让它和环境不断的去对抗,就拿阿尔法O来举例子吧,他只要不断的跟计算机,就两个计算机不断下棋就可以了。
06:11
两个计算机不断的下棋,那么其中肯定有一个会赢,肯定有一个会输,对吧?因为终止条件是很很明确的,那赢的那个就学到了他一种模式,什么时候会赢,在这个棋盘下会赢,这样的话就不需要跟人下了,所以两个计算机自己对着下棋就可以了,而而且计算机下的速度非常快,所以说他很快就把所有的模式都学到了,对吧?这就是强化学习的一个范畴。还有像波士顿动力的那些机器人,包括无人驾驶什么的,都涉及到强化学习的这个应用。比如说我现在给他设置一个仿真环境,让这个汽车在这个仿真环境里开,他每次撞到一个树,他就我们就认为它失败了。然后呢,我就让他重新开始实践,因为假设哈这个飞机飞了一个轨迹,最后撞到树上去了,我认为之前的所有的轨迹都是有问题的。这么说没错吧,对吧,肯定没错,这前前面肯定有问题,别人有人会问我,如果前一半没有问题,后一半有问题的怎么办呢?那可以这么说,前一半在另外一种非法的时候,它是肯定是没问题的。
07:13
明白吧,所以当你进行了无穷次测试的时候呢,就是撞了那会儿之前的几步权重,损失权重会非常大。明白吧,他最开始不会有很多问题。比如我现在从这个楼上放一个纸飞机下去,他可能有100种飞法,最开始那个呢,因为我从这个地方放出去,他肯定最开始的轨迹肯定是从这个窗户出去的,对吧?那他有一次栽了,我们不能认为他最开始从这窗户出去是有错的,对吧,为什么呢?因为他还有99次他没栽,都是从这窗户出去的,所以这99次就导致最开始从那窗户出去的这个损失很小,而栽的那次就迫使栽的那次他的前几步那个损失特别大,所以当他从窗户出去的时候,他不会觉得自己有什么问题,但是当他飞到那种上一次已经栽过跟头很近的地方的时候,他会认识到我现在姿态有问题,我得赶紧调整。
08:07
明白吧,这就强化学习。强化学习呢,说起来也比较简单,但是这个真正做起来呢,还是稍微困难一些啊,现在呢,主流的学习技术就是监督学习,为什么呢?因为人类这个我之前给大家说过,人类有一个知识工程。知识工程,虽然知识工程我们现在做不了那么好,但是呢,这个知识对于我们做很多工作来说也是必不可少的,无监督学习往往导致出来一些很奇怪的结果。打个比方说吧,无分无限督分析,呃,无限督那个学习的话,有人那很好的人会这么分,对吧,分成三类,但是有人呢,就会把这个地和人分成两类,把其D和人分成三类了,对吧?它分没错,它这么分是没错的,对,但是呢,从我们来看,这不是我们想要的,对吧?所以呢,知识工程是很重要的,但是呢,知工程现在做不了那么好,所以说很多时候我们用监督学习,带着标签去学习这个模型,带着标签,这是绿色,这是白色,这是红色,就不要这个白色和这个人可以分到一块儿去,就不要把这个地和人分开了就OK了。
我来说两句