前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >机器学习之最常用的求导公式

机器学习之最常用的求导公式

作者头像
opprash
修改2019-08-29 14:54:42
1.8K0
修改2019-08-29 14:54:42
举报

在机器学习中会经常用到求导数相关的许多求导公式,比如在梯度下降中就经常用到,其中最常用的就是一下几个:

常用的求导公式
常用的求导公式

第一个是对幂函数的求导。

第二个是对指数函数的求导,其中第三个是第二个的特例,当a=e的时候,这个时候lne的值恰好为1。

第四个导数是对数函数的导数。

一、全局误差函数

了解为什么使用“梯度下降法”去求最小值,必须先知道机器学习求得模型的方式。比如现在有一份线性数据的关系,假设他的模型为线性,w为权值(随机),b为偏置,e为假设的“误差”:

假设模拟模型
假设模拟模型

假设拟合模型

我们把这个方程做一下变换,得到关于真实值和模型拟合值的误差

公式转换
公式转换

上面只是关于一个数据的误差,接下来对所有数据的误差进行一次加和,然后再平方。得到一个所有真实值与拟合值误差的平方函数,将其定义为“全局性误差函数”loss

误差函数loss
误差函数loss

机器学习的目的就是拟合出一个可以准确描述这组数据的模型。按照上面的公式来看,如果令“Loss=0”,也就是令所有真实值与拟合值误差的平方为零,就等于说这个模型是可以准确描述真实世界数据的。而让Loss为零时的w与b,就是描述这个模型的参数。

至于为什么要进行平方处理,是应用了最小二乘的思想。我们本来是想找到一个合适的模型,对此构建了一个真实值与拟合值的“平方差模型”,找到了这个平方差模型的解,也就等于是找到了我们需要的“拟合模型”。

本质上,我们是通过上面的方式,把一个求模型的问题,转换成了一个函数求解“最小值”的数学问题。那么问题来了,如何找到这个函数中的最小值,就是“梯度下降”所解决的问题。

梯度下降是机器学习中用来求最小值的算法,它被广泛应用于像逻辑回归、线性回归和神经网络的模型中。

二、梯度下降法

问题变成了求解一个函数模型的最小值问题,要用到高等数学里关于“导数”的一系列概念和知识作为铺垫。想理解何为梯度,梯度是如何一步一步如何求得这个函数的最小值,就必须从他开始

偏导数

偏导数本质上与导数一样,都是当自变量变化的时候,函数值的变化量与自变量变化值的比值(即某个点沿x轴正方向的变化率)。不同在于导数描述的一元函数,而偏导描述的是多元函数

方向导数

方向导数与导数和偏导不同在于,它描述的是一个多元函数,在任意方向上的变化率。方向导数既有数值,也有方向(不再仅仅是正方向一个方向)。

梯度

那么问题来了,你想不想知道在这个点的n多个方向导数中,哪个是下降的方向变化是最大的,哪个是上升的方向变化最大的。这就引出了对“梯度”的定义:

梯度,即函数在某个点的一个向量,它的方向与取得最大方向导数的方向一致,模为该方向导数的最大值。

梯度与方向导数的关系,可以理解为它是方向导数中两个极端的“子集”,因为方向导数可以说有无数个方向,而梯度就是两个上升和下降变化率最大的两个方向

核心思想:

梯度下降的核心思想为:当你在一个模型中随机选取了一个点并求得该点的Loss,此时你的目的是找到让Loss等于或最接近零的点,你为了让loss减小,就要寻找下一个能让这个loss下降最多的点。但如果对所有的方向依次试一遍,那工作量实在是太大了!这时候就可以引入“梯度”来解决这个问题。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、全局误差函数
  • 二、梯度下降法
    • 核心思想:
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档