Rosasco L, De Vito E, Caponnetto A, et al. Are loss functions all the same[J]. Neural Computation, 2004, 16(5): 1063-1076.

@article{rosasco2004are,

title={Are loss functions all the same},

author={Rosasco, Lorenzo and De Vito, Ernesto and Caponnetto, Andrea and Piana, Michele and Verri, Alessandro},

journal={Neural Computation},

volume={16},

number={5},

pages={1063--1076},

year={2004}}

作者给出了不同的损失函数, 在样本数量增多情况下的极限情况. 假设\(p(x,y)\)为\((x,y)\)的密度函数,其中\(x\in \mathbb{R}^d\)为输入样本, \(y\in \mathbb{R}\)为值(回归问题) 或 类别信息(分类问题). 设\(V(w,y),\)为损失函数, 则期望风险为:

\[\tag{1}
I[f]=\int_Z V(f(x),y)p(x,y)\mathrm{d} x \mathrm{d}y,
\]

其中\(f\)为预测函数, 不妨设\(f_0\)最小化期望风险. 在实际中, 我们只有有限的样本\(D=\{(x_1,y_1),\ldots, (x_l,y_l)\}\), 在此情况下, 我们采取近似

\[\tag{2}
I_{emp}[f]=\frac{1}{l}\sum_{i=1}^lV(f(x_i),y_i),
\]

同时

\[\tag{3}
f_D=\arg\min_{f \in \mathcal{H}} I_{emp}[f].
\]

其中\(\mathcal{H}\)为hypothesis space.

\(f_D\)与\(f_0\)之间的差距如何, 是本文的核心.

主要内容

一些假设

首先\(f_D\)的在空间\(\mathcal{H}\)中寻找, Reproducing Kernel Hilbert Space(RKHS)一文中(没看)给出了这种空间的构造方式. 给定对称正定函数\(K(x,s)\)(Mercer核):

\[K: X \times X \rightarrow \mathbb{R},
\]

同时\(K(\cdot, x)\)是连续函数.

函数\(f\)通过下述方式构造:

\[\tag{4}
f(x) = \langle f, K(\cdot, x)\rangle_{\mathcal{H}}.
\]

给定常数\(R>0\), 构造hypothesis space \(\mathcal{H}_{R}\):

\[\mathcal{H}_{R} = \{f \in \mathcal{H}, \|f\|_{\mathcal{H}}\le R\},
\]

则在\(\|\cdot\|_{\infty}\)下, \(\mathcal{H}_R\)是连续函数\(C(X)\)上的一个紧集,其中\(X\subset \mathbb{R}^d\)是紧的(这个证明要用到经典的Arela-Ascoli定理, 只需证明\(\mathcal{H}_R\)中的元素是等度连续即可).

另外:

\[|f(x)|= |\langle f, K(\cdot, x)\rangle_{\mathcal{H}}.| \le \|f\|_{\mathcal{H}} \sqrt{K(x,x)},
\]

\[\|f(x)\|_{\infty} \le RC_K,
\]

其中\(C_K=\sup_{x \in X} \sqrt{K(x,x)}\).

损失函数\(V\)为凸函数且满足:

  1. \(V\)是Lipschitz函数, 即对于任意的\(M>0\), 存在常数\(L_M>0\)使得
\[|V(w_1,y)-V(w_2,y)|\le L_M|w_1-w_2|,
\]

对于任意的\(w_1,w_2\in[-M,M],y\in Y\)成立.

2. 存在常数\(C_0\), \(\forall y\in Y\)

\[V(0, y) \le C_0,
\]

成立.

注: 这里的凸函数, 因为一般的损失函数实际上是以\(w-y\)(回归), \(wy\)(分类)为变元, 所以要求\(V(t)\)关于\(t=w-y\)或者\(t=wy\)为凸函数.

损失函数

回归问题:



分类问题:

这些损失函数都是满足假设的, 所对应的\(L_M, C_0\), 当\(Y=[a, b], \delta=\max \{|a|, |b|\}\)时为

\(I[f_D]-I[f_R]\)

假设\(f_R=\arg\min_{f \in \mathcal{H}_R}I[f]\), 一般的误差

\[I[f_D]-I[f_0]=(I[f_D]-I[f_R])+(I[f_R]-I[f_0]),
\]

第一项是我们所关注的, 称为估计误差, 第二项为逼近误差.

这里引入\(\mathcal{H}_R\)的covering number, \(N(\epsilon)\), 文中所指的应该是wiki中的external covering number.

下面是理论结果, 引理的证明用了Hoeffding不等式, 这个不了解, 感兴趣请回看原文.



这里\(\epsilon(\eta, \ell, R)\)实际上(6)不等式右端第二项, 令其为\(\eta\), 反解\(\epsilon\)的意思.

第一个不等式实际上就是引理的推论, 第二个不等式注意到:

又\(I[f_D]\ge I[f_R]\)(这个说是根据定义, 但我没弄清楚), 故不等式成立.

损失函数的统计性质

收敛速度

考察不同损失的函数的\(\eta\):

回归问题:

\(abs / \epsilon-insensitive\):



\(square\):



注意到, 因为square loss 的covering number 随着\(R, \delta\)的增加会变大, 所以\(\eta\)会变大,所以在收敛速度上, square比不上上面俩个.

分类问题:

hinge:



logistic:



二者的收敛表现是类似的, 而square是类似的(\(\delta=1\)).

分类的界

关注分类问题中的hinge损失, 因为它会逼近概率推断.

在二元分类问题中, 其最佳函数\(f_b\)为:



当\(p(1|x)\not= p(-1|x)\).

有如下事实:



证明蛮有趣的, 这里贴一下



\(p(1|x)<1/2\)的证明是类似的.

另外(证明在别的论文中):

\[\tag{11}I[f_0]=I[f_b].
\]

又(至少有\(1-\eta\)的概率)

\[I[f_D]-I[f_R]\le2\epsilon(\eta, \ell, R),
\]

并注意到(感觉怪怪的):

\[I[sgn(f_D)] \le I[f_D],
\]

故至少有\(1-\eta\)的概率



成立. 也就是说当样本个数\(\ell\)足够大的时候, \(sgn(f_D)\)的效用是等价于统计判别的, 这是hinge loss独有的优势.

Are Loss Functions All the Same?的更多相关文章

  1. 目标检测复习之Loss Functions 总结

    Loss Functions 总结 损失函数分类: 回归损失函数(Regression loss), 分类损失函数(Classification loss) Regression loss funct ...

  2. cs231n spring 2017 lecture3 Loss Functions and Optimization 听课笔记

    1. Loss function是用来量化评估当前预测的好坏,loss function越小表明预测越好. 几种典型的loss function: 1)Multiclass SVM loss:一般的S ...

  3. Basic Classifiers and Loss Functions

    Linear Classifier and Hing Loss (or Multiclass SVM Loss) Linear Mapping (Score function) Linear Clas ...

  4. CS231n笔记 Lecture 3 Loss Functions and Optimization

    这一讲总体上就是引入Loss Function的概念,以及让大家对优化有一个初步的认识,和其他课程里面说的内容大同小异. Loss function Multiclass svm loss multi ...

  5. cs231n spring 2017 lecture3 Loss Functions and Optimization

    1. Loss function是用来量化评估当前预测的好坏,loss function越小表明预测越好. 几种典型的loss function: 1)Multiclass SVM loss:一般的S ...

  6. 惩罚因子(penalty term)与损失函数(loss function)

    penalty term 和 loss function 看起来很相似,但其实二者完全不同. 惩罚因子: penalty term的作用是把受限优化问题转化为非受限优化问题. 比如我们要优化: min ...

  7. 损失函数(loss function) 转

    原文:http://luowei828.blog.163.com/blog/static/310312042013101401524824 通常而言,损失函数由损失项(loss term)和正则项(r ...

  8. [machine learning] Loss Function view

    [machine learning] Loss Function view 有关Loss Function(LF),只想说,终于写了 一.Loss Function 什么是Loss Function? ...

  9. 损失函数(loss function)

    通常而言,损失函数由损失项(loss term)和正则项(regularization term)组成.发现一份不错的介绍资料: http://www.ics.uci.edu/~dramanan/te ...

随机推荐

  1. day12 查找文件

    day12 查找文件 find命令:查找文件 find命令:在linux系统中,按照我们的要求去查询文件. 格式: find [查询的路径] [匹配模式] [匹配规则] 匹配模式: -name : 按 ...

  2. Flink(二)【架构原理,组件,提交流程】

    目录 一.运行架构 1.架构 2.组件 二.核心概念 TaskManager . Slots Parallelism(并行度) Task .Subtask Operator Chains(任务链) E ...

  3. 【leetcode】222. Count Complete Tree Nodes(完全二叉树)

    Given the root of a complete binary tree, return the number of the nodes in the tree. According to W ...

  4. 【STM32】使用SDIO进行SD卡读写,包含文件管理FatFs(终)-配合内存管理来遍历SD卡

    [STM32]使用SDIO进行SD卡读写,包含文件管理FatFs(一)-初步认识SD卡 [STM32]使用SDIO进行SD卡读写,包含文件管理FatFs(二)-了解SD总线,命令的相关介绍 [STM3 ...

  5. android转换透明度

    比方说 70% 白色透明度. 就用255*0.7=185.5  在把185.5转换成16进制就是B2 你只需要写#B2FFFFFF 如果是黑色就换成6个0就可以了.前2位是控制透明度的.

  6. Mave 下载与安装

    一,Maven 介绍 我们在开发中经常需要依赖第三方的包,包与包之间存在依赖关系,版本间还有兼容性问题,有时还需要将旧的包升级或降级,当项目复杂到一定程度时包管理变得非常重要.Maven是当前最受欢迎 ...

  7. 【Linux】【Commands】systemd

    1. 系统启动流程:POST --> Boot Sequeue(BIOS) --> Bootloader(MBR) --> Kernel(ramdisk) --> rootfs ...

  8. JS - 字符串转换成数组,数组转换成字符串

    1.字符串转换成数组: var arr = "1, 2, 3, 4, 5, 6"; arr.split(","); // ["1",&quo ...

  9. 『与善仁』Appium基础 — 20、Appium元素定位

    目录 1.by_id定位 2.by_name定位 3.by_class_name定位 4.by_xpath定位 5.by_accessibility_id定位 6.by_android_uiautom ...

  10. 11、Redis的配置文件

    Redis的配置文件 一.Redis配置文件简介 Redis是通过配置文件启动的 Redis对大小写字母不敏感 Redis基本上环境搭建都在配置文件 关于Redis配置文件位置是安装时放的位置,关于R ...