电脑如何像人一样思考?人工智能(一)机器学习与神经网络(36)

作者: admin 分类: 科学 发布时间: 2021-08-20 10:36

        首先呢我们要需要大家了解一个概念,叫做梯度下降算法。梯度下降啊,是啊人工智能最核心的一个算法,是吧?这个梯度下降算法呢可以帮助我们去处理分类问题。还有回归问题,我们已回归问题为例吧。比如说我们想让人工智能帮我们干一件事,就是预测房价。哎,咱们说这个预测房价呀,就是你给我一个房子,然后机器判断出来这房子大概值多少钱,是吧?那怎么做呢?你首先得给我一些数据,你告诉我说房价取决于什么呢?我们知道房价取决于它是城市的还是乡村的。

        他面积大小楼层,他的小区环境等等一系列因素,对吧?我们先简化一下,比如说啊这个房价,我们认为他就取决于一个因素,就是面积啊,我们就简单一点面积,我们叫它X。那么纵坐标呢,这个是房屋的价格啊,价格呢叫做one。哎,你给了我一大堆的数据啊,每一个房屋的价格对应着他的这个面积。给了我这么一个数据,比如说有M个数据,我们把这M个数据呢我放在这张图上,那大概是这样。比如说啊这个房子在这儿,这个房子价格是这样,这个房子是这样,这个房子是这样,这个房子是这样。说吧,大概来讲是面积越大的,房子价格越高啊,当然他会有一定的起伏。现在我就问我说你能不能告诉我一个函数,这个价格和面积之间到底是什么关系呢?当然最简单的函数就是直线嘛,所以我们就可以说我们。

        假设这个关系就是外等于WX加B我引入了两个参数,大家看这一个参数呢是W相当于是斜率,还有一个参数呢是B是截距。于是呢我们就用一条直线哎来描述外和X的关系。当然大家会发现呢,这个局限呢不可能会过所有的点,甚至于可能每一个点他都不过。是吧他和实际的情况呢是有差别的。比如说第一个房子吧,它的价格在这儿。但是我预测呢你价格在这儿,你就出现了一个差别,叫dt外衣啊,这就是你预测的误差,对吧?第二个房子呢你也出现了一个误差,但是。

        百2只不过这误差是负的是吧?第三个房子又有一个误差角,灯塔外3。第四个房子又有一个误差,但是Y4第5个房子又有一个误差,但是外5。你可能有很多个房子都出现了误差。此时我要说你这个预测是精准的,什么意思呢?就是要让所有的误差综合来讲是最小的。这个我们管它叫损失函数啊,它的损失函数叫jay,这一等于什么呢?等于2M分之一M就是有多少个数据嘛,2M分之一,然后嘉禾。每一个误差的平方从误差为什么要平方加合呢?因为你如果直接加合的话,政府会抵消啊,我为了不让抵消,我把它给平方加合。我是希望这个损失函数它最小,对不对?我也可以换一个写法,说这个损失函数这一等于什么呢?等于RM分之一再乘以西格玛外爱就是每一个房子的价格再减去。WXI加B它的平方,哎,我引入了参数是DW和B我希望使得这个误差函数最小,误差函数最小,就说明这条直线。

        最符合房价的价格和面积关系,对不对?他不可能完全符合,因为每一个房价他可能也不能满足同一个函数,但它最符合。哎,我就希望能够找到这样的dw会这样的B但问题是你怎么找到这个合适的参数,大家W和。使得损失函数最小的上过大学的同学都知道,这叫做最小二乘法。这个方法其实在高斯和勒让德的时代,人们就已经弄清楚了。只不过呢有两个参数。

        你好算,如果你参数非常多。高斯勒让德的方法就会非常的复杂。于是什么就想我们能不能有一个更好的方法来优化这个参数呢?那么这种方法就称之为梯度下降算法,什么意思啊?我们举个例子,比如我想优化这个参数W啊,我想看看。八不就取什么值能够让这个损失函数最小,我最容易能够预测这个房价是吧?怎么做呢?我们呢首先把这个参数W这个参数W啊这个作为横坐标。然后呢,我们再把这个损失函数,哎,就是你的预测和实际的差别作为纵坐标,你把它画出一个图像了,你会发现这个图像有可能是这个样子的。对吧我们希望找到一个W让这个损失函数最小。

        那是在哪儿?那是不是在这儿啊,我就希望找到这个点,这个就是最好的大W但是你最开始给他一个W的时候啊,你可能给的是这个数。WE所以这个值啊,他并不等于我们最优的参数,于是怎么办?哎,我们就需要用梯度下降算法的这个听前方法的过程是这样的。首先我们求一个函数叫做pj。顶上pw。偏导数啊是大学的一个概念。大概的意思就是说你这个损失函数是如何随着W而变化的。

        他表示的是这个函数的倾斜程度,如果这个点他离最低点越远的话,它的斜率就越大。清晰的阅历。这个数就会越大,对不对?你先把这个数求出来,求完了之后呢,我们说呀你进行迭代怎么迭代呢?就是新的w tw n加一,他等于原来的WN减去一特贝的png。比天大W2如果同学在数学上可能会遇到一点困难,反正大概的意思就是说啊我通过这种方式我可以怎么样?我可以从这个数哎,我找到一个。更好的这个W我作为一W2的对吧?当然完之后可能还是不够,怎么办?我们继续去求在W2这个地方,它的倾斜程度,然后我们再去计算一个新的迭代过程。于是呢我们就又往下跳了一步,就wc哎,你看这大W3就已经非常完美了,对吧?而你有可能我这一步跳过他到右边去了,那么他还会继续跳跳回来。就通过这样的式子反复进行迭代,一步一步就会找到这个罪。

        最低点了。那这个方式我们就称之为梯度下降算法。那么最终的情况是什么样呢?最终啊就是我们通过一次又一次的计算啊,我们是希望找到那个最优化的W。也就是啊直到这个偏G比偏W等于0约等于零啊,不可能严格是等于零的。或者说呢这个WN加一他已经约等于WN了。是吧这个时候我们就不再需要迭代了,我们就找到了这个最优的解。事实上啊我刚才只考虑了这个参数W的参数,还有一个叫B叫拮据,对不对?我们在进行梯度下降算法的时候,实际上是dw流和B。同时进行优化的,我们是在一个三维的空间中寻找一个最低点,是吧?而不是像我这画的这个量在一个平面上寻找最低点。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!