为什么平方损失函数不适应于分类问题?——从概率论的角度
为什么平方损失函数不适用于分类问题?
邱锡鹏教授《神经网络与深度学习》的课后习题特别经典,并且书中并没有解答,非常值得我们思考,今天的这个问题就是出自此书的第二章的习题,想来和大家分享一下本题的一种思路,是从数据分布的角度叙述,本人知识有限不免有错误,希望大家能给予批评和建议,提出您的看法。
首先给出平方损失函数(Quadratic-Entropy Loss Function)的数学定义:
L(y,f(x;θ))=12(y−f(x;θ))2L(y,f(x; θ)) = \frac{1}{2}(y-f(x;θ))^2L(y,f(x;θ))=21(y−f(x;θ))2
最大似然估计看平方损失函数
简要理解
从概率的角度看问题,线性回归中求解最优参数w中使用最大似然估计和最小二乘法(平方损失) 的解相同(下面的详细解释中会给出),而此处的最大似然估计的是对于高斯分布而言的,既然求解参数效果相同,那么若使用平方损失函数就类似于假设了高斯先验,高斯分布不太适合用在分类问题中(比如二分类问题符合二项分布,二项分布属于离散型随机变量,而正态分布属于连续型随机变量,二项分布逼近正态分布会有误差),那么平方损失函数自然不适用于分类问题。
在实际的分类问题中,在Softmax激活函数的作用下,若使用平方损失函数,离散型分布逼近于正态分布的损失会放大(非线性激活函数作用下,函数会变得复杂,不易于优化),损失越大导数反而越小,学习速率则会很慢。
详细解释:
需要的预备知识:线性回归、最小二乘法、概率论
平方损失函数中使用了最小二乘法,属于机器学习中用线性回归拟合一个函数,用来表示特征向量与标签之间关系的方法,而线性回归还可以从建模条件概率P(y|x)的角度去进行参数估计,建模过程中我们需要加入一个随机噪声ε,即:
y=f(x;w)+ε=wTx+εy = f(x;w) + ε = w^Tx+εy=f(x;w)+ε=wTx+ε
其中,ε服从均值为0、方差为σ2的高斯分布,这样,y就服从均值为WTx、方差为σ2的高斯分布:
p(y∣x;w;σ)=N(y;wT,σ2)=p(y|x;w;σ) = N(y;w^T,σ^2) = p(y∣x;w;σ)=N(y;wT,σ2)=12πσexp(−(y−wTx)22σ2)\frac{1}{\sqrt{2π}σ }exp(-\frac{(y-w^Tx)^2}{2σ^2})2πσ1exp(−2σ2(y−wTx)2)
参数w在训练集D上的似然函数(Likelihood)为:
p(y∣X;w,σ)=∏n=1Np(y(n)∣xn;w,σ)p(y|X;w,σ) = \prod_{n=1}^Np(y^{(n)}|x^{n};w,σ)p(y∣X;w,σ)=n=1∏Np(y(n)∣xn;w,σ)=∏n=1NN(y(n);wTxn;w,σ2)= \prod_{n=1}^NN(y^{(n)};w^Tx^{n};w,σ^2)=n=1∏NN(y(n);wTxn;w,σ2)
其中,y=[y1,...,yN]Ty=[y^{1},...,y^{N}]^Ty=[y1,...,yN]T为所有样本标签组成的向量,X=[x1,...,xN]TX=[x^{1},...,x^{N}]^TX=[x1,...,xN]T为所有样本特征向量组成的矩阵。
取对数似然函数:
logp(y∣X;w,σ)=∑n=1NlogN(y(n);wTxn;w,σ2)logp(y|X;w,σ) = \sum_{n=1}^NlogN(y^{(n)};w^Tx^{n};w,σ^2)logp(y∣X;w,σ)=n=1∑NlogN(y(n);wTxn;w,σ2)
最大似然估计是找到一组参数 www 使得似然函数 p(y∣X;w,σ)p(y|X;w,σ)p(y∣X;w,σ) 最大,采用的方法是求导后求极值,等价于对数似然函数logp(y∣X;w,σ)log p(y|X;w,σ)logp(y∣X;w,σ)最大,令:
∂logp(y∣X;w,σ)∂w=0\frac{∂log p(y|X;w,σ)}{∂w}= 0∂w∂logp(y∣X;w,σ)=0得到:
w=(XXT)−1Xyw = (XX^T)^{-1}Xyw=(XXT)−1Xy
可以看出,最大似然估计的解和最小二乘法的解是相同的。
Reference: 神经网络与深度学习 邱锡鹏
为什么平方损失函数不适应于分类问题?——从概率论的角度相关推荐
- 【深度学习】损失函数系列 (一) 平方损失函数、交叉熵损失函数 (含label_smoothing、ignore_index等内容)
一.平方损失函数(Quadratic Loss / MSELoss): Pytorch实现: from torch.nn import MSELoss loss = nn.MSELoss(reduct ...
- pytorch_lesson10 二分类交叉熵损失函数及调用+多分类交叉熵损失函数及调用
注:仅仅是学习记录笔记,搬运了学习课程的ppt内容,本意不是抄袭!望大家不要误解!纯属学习记录笔记!!!!!! 文章目录 一.机器学习中的优化思想 二.回归:误差平方和SSE 三.二分类交叉熵损失函数 ...
- 交叉熵比平方损失函数的优点
https://blog.csdn.net/u014313009/article/details/51043064
- 人脸识别-Loss-2016:Large Margin Softmax Loss【Margin:角度分类边界之间的空白角度区域】【增大Margin来提高分类精度】【缺陷:无法处理W_i≠W_j的情况】
尽管传统的softmax在卷积网络作为最常用的监督学习组件,但是他不能促进判别性强的特征的学习,在这篇论文里面首先提出一种基于Margin的L-Softmax损失函数,可以明确地促使学习到的特征具有类 ...
- 排序模型训练中过程中的损失函数,盘它!
转载请注明出处:http://blog.csdn.net/gamer_gyt 博主微博:http://weibo.com/234654758 Github:https://github.com/thi ...
- 阅读笔记--神经网络与深度学习(邱锡鹏)
第2章 机器学习概述 2.2 机器学习三要素 模型 学习准则 优化算法 2.2.1 损失函数 0-1损失函数 虽然0-1损失能够客观的评价模型的好坏,但缺点是数学性质不是很好:不连续且导数为0,难以优 ...
- 《神经网络与深度学习》习题解答(至第七章)
部分题目的个人解答,参考了github上的习题解答分享与知乎解答.题目是自己做的,部分解答可能出错,有问题的解题部分欢迎指正.原文挂在自己的自建博客上. 第二章 2-1 直观上,对特定的分类问题,平方 ...
- 机器学习的三个基本因素【模型、学习准则、优化算法】
机器学习的三个基本因素 机器学习是从有限的观测数据中学习 (或"猜测")出具有一般性的规律,并可以将总结出来的规律推广应用到未观测样本上. 机器学习方法可以粗略地分为三个基本要素: ...
- 交叉熵损失函数分类_交叉熵损失函数
我们先从逻辑回归的角度推导一下交叉熵(cross entropy)损失函数. 从逻辑回归到交叉熵损失函数 这部分参考自 cs229-note1 part2. 为了根据给定的 预测 (0或1),令假设函 ...
- python 线性回归与逻辑回归区别(有监督学习【分类、回归】、无监督学习【聚类、强化学习】、损失函数、梯度下降、学习率、过拟合、欠拟合、正则化)
引用文章1 https://blog.csdn.net/viewcode/article/details/8794401 引用文章2:一.线性回归和逻辑回归 一.什么是机器学习 利用大量的数据样本,使 ...
最新文章
- 算法试题 - 找出字符流中第一个不重复的元素
- 【数组】 - 有序数组设计
- The credentials you provided during SQL Server 2008 install are invalid
- python基础数据类型语法
- mfc遍历指定文件夹下的所有文件并排序
- H3CTE讲师分享H3C认证培训实验9 IP基础
- xcap发包工具的简单使用3(报文描述)
- flash builder 4.7 打开闪退解决办法
- 七年级上册计算机工作计划,七年级上册班主任工作计划
- linux系统修复home文件夹,在Linux操作系统上修复损坏的主分区/主目录
- 一年节省费用100万,AI导航误差不到1米,杭州奥体“大小莲花”智慧场馆大揭秘...
- 少儿学python真的有用吗_如何看待海淀妈妈们认为Python是儿童才学的低端编程?...
- Java并发之魂——synchronized深度解析
- (十一)java.io.File学习进阶及separator、pathSeparator分隔符简介
- Pipe Comet
- C语言函数大全--h开头的函数
- 一起读JavaScript红宝书 —— 01JavaScript概述
- 视频画质修复,老旧视频的模糊画质如何修复为4K画质?
- 2018.7.26第二次课及预习
- 工业废水的种类及其处理工艺简析
热门文章
- 微信小程序实现微信企业付款到零钱功能的流程
- Taro小程序分享功能
- Distance from a point to a hyperplane
- C++11 auto类型说明符如for(atuo x : s)
- 枚举类(Enumerated types)介绍
- excel宏教程_Excel做的带动态备忘录的2020年日历,简单到没朋友!
- 固态硬盘量产工具_固态硬盘测速工具CDM更新8.0版,但我们不推荐你使用
- git命令之配置diff3冲突合并方式及KDiff3工具
- 68个经典励志小故事|哲理小故事,让你终身受益(1)
- 实用的Chrome插件推荐