【第22期】观点:IT 行业加班,到底有没有价值?

【机器学习】【base】 之 目标函数 损失函数 优化算法

原创 2016年08月30日 21:19:44

目录

机器学习的核心是一个模型,一个损失函数loss fuction(由目标函数得出),加上一个优化算法。一个损失函数可以用不同的优化算法,不同的损失函数也可以用相同的优化算法。

目标函数定义

最大似然(MLE),最大后验(MAP)都是构造目标函数的方法,是参数估计的方法之一。

最大似然方法

最大似然估计,只是一种概率论在统计学的应用,它是参数估计的方法之一。说的是已知某个随机样本满足某种概率分布,但是其中具体的参数不清楚,参数估计就是通过若干次试验,观察其结果,利用结果推出参数的大概值。最大似然估计是建立在这样的思想上:已知某个参数能使这个样本出现的概率最大,我们当然不会再去选择其他小概率的样本,所以干脆就把这个参数作为估计的真实值。
求最大似然函数估计值的一般步骤:
(1) 写出似然函数
(2) 对似然函数取对数,并整理
(3) 求导数
(4) 解似然方程

对于线性回归问题,它的模型是p(y|x)=N(wTx,σ2),我们采用最大似然来构造一个目标函数。
此时线性回归的loss function是”最小二乘公式”。
最后用梯度下降来找到目标函数的最值。当然,对于这个问题,我们也可以不用梯度下降,直接用向量的投影来直接算出最优解的表达式。即“最小二乘法”。
ps:最小二乘法是一种算法,最小二乘公式是一个loss function.

Logistic regression 的模型是p(y|x)=Ber(y|sigm(wTx)),Ber是伯努利分布,sigm是logistic sigmoid函数,我们采用最大似然来构造一个目标函数。
此时Logistic regression的loss function是交叉熵.
与之前的问题不同,这个目标函数比较复杂,是无法像线性回归那样一步直接算出最终的解的,但是,这个目标函数是凸的,所以我们依然能用梯度下降或者牛顿法来来找到它的最优解。

因为各自的响应变量服从不同的概率分布。在Linear Regression中,前提假设y是服从正态分布。而Logistic中的y是服从二项分布的(为什么不服从正态?因为非0即1啊!),因而,在用极大似然估计计算时,所得到的cost function自然是不一样的。

岭回归是给参数 w 加上一个高斯的先验分布,并用最大后验来构造目标函数,那么,这就相当于给目标函数加上一个L2正则项。如果我们给参数 w 加上一个拉普拉斯的先验分布,那么我们可以让 w 变得更加稀疏。我们还可以接着往下走,利用后验分布来进行模型平均(model averaging),得到更加完整的贝叶斯方法,

最优化算法

优化方法中,有一类是使用函数的梯度信息,包括一阶的方法,例如梯度下降、最小二乘法都是通过求导来求损失函数的最小值, 使得估算值与实际值的总平方差尽量更小;以及二阶的方法,例如牛顿法等。当然,还有和梯度无关的方法,例如 fixed point iteration,坐标下降等

最小二乘

最小二乘可以由高斯噪声假设+极大似然估计推导出来
最小二乘法是直接对Δ求导找出全局最小,是非迭代法。

梯度下降

而梯度下降法是一种迭代法,先给定一个β,然后向Δ下降最快的方向调整β,在若干次迭代之后找到局部最小。梯度下降法的缺点是到最小点的时候收敛速度变慢,并且对初始点的选择极为敏感,其改进大多是在这两方面下功夫。

参考文档:

https://www.zhihu.com/question/24900876

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

机器学习中常见的损失函数

机器学习中常见的损失函数   一般来说,我们在进行机器学习任务时,使用的每一个算法都有一个目标函数,算法便是对这个目标函数进行优化,特别是在分类或者回归任务中,便是使用损失函数(Loss Functi...

线性回归的损失函数与逻辑回归的损失函数

一、线性回归损失函数的两种解释线性回归的损失函数是平方损失函数,为什么使用平方的形式,参考:线性回归损失函数为什么要用平方形式,讲得很清楚。 在线性回归中,对于训练数据样本(xi,yi)(x_i,y...

线性回归损失函数为什么要用平方形式

我们在前面的《线性回归》中了解到,对于训练数据样本(xi,yi)({x_i},{y_i}),我们有如下的拟合直线: yˆi=θ0+θ1∙xi{\widehat y_i} = {\theta _0} ...

线性回归与逻辑回归的损失函数选择

线性回归损失函数为什么要用平方形式 : 对于训练数据样本(xi,yi),我们有如下的拟合直线: yˆi=θ0+θ1∙xi 我们构建了一个损失函数: C=∑i=1n(yi−yˆi)2 表示...

系统学习深度学习(八)--损失函数

转自:http://blog.csdn.net/google19890102/article/details/50522945 一、分类算法中的损失函数 在分类算法中,损失函数通常可以表示成损失项和...

Loss Function view---关于损失函数的介绍

一、Loss Function 什么是Loss Function?wiki上有一句解释我觉得很到位,引用一下:The loss function quantifies the amount by...

深度学习笔记(三):激活函数和损失函数

这一部分来探讨下激活函数和损失函数。在之前的logistic和神经网络中,激活函数是sigmoid, 损失函数是平方函数。但是这并不是固定的。事实上,这两部分都有很多其他不错的选项,下面来一一讨论3....

玩转机器学习目标函数

机器学习中的目标函数,哟

机器学习中常见的几种优化方法

机器学习中常见的几种优化方法 声明:本文为转载,原文作者为:Poll的笔记,原文链接为:http://www.cnblogs.com/maybe2030/p/4751804.html#rd,尊重原创...

xgboost原理

文章内容可能会相对比较多,读者可以点击上方目录,直接阅读自己感兴趣的章节。1.序  距离上一次编辑将近10个月,幸得爱可可老师(微博)推荐,访问量陡增。最近毕业论文与xgboost相关,于是重新写一下...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)