经验风险最小化

来自testwiki
跳转到导航 跳转到搜索

经验风险最小化 (ERM)是统计学习理论里的一项原则,该原则下有一系列学习算法 ,经验风险最小化用于为这些算法的性能提供理论上的界。核心思想是,人們无法确切知道算法在实际中的运行情况(真正的“风险”),是因为不知道算法将在其上运行的数据的真实分布,但借助经验风险最小化,可以在一组已知的训练数据(“经验”风险)上衡量其性能。

背景

以下情况是许多有监督学习问题的一般设置。存在两个空间,输入空间X和输出空间Y,目标是学习(拟合)一个函数 h:XY (通常称为假设 ),这个函数在给定xX,输出一个对象yY 。为此可以使用一个包含 n个例子的训练集 (x1,y1),,(xn,yn),其中xiX是输入, yiY是希望从 h(xi)中得到的相应输出 。

更正式地说,可假设XY服从联合概率分布 P(x,y) ,并且训练集包括n个实例 (x1,y1),,(xn,yn)IID地从P(x,y) 抽取。请注意,联合概率分布的假设可以对预测中的不确定性进行建模(例如,来自数据中的噪声),因为y不是关于x的确定性函数 ,而是在固定x 时具有条件分布P(y|x)随机变量

还可假定给定非负实值损失函数 L(y^,y)来衡量预测y^与真实结果y的差异。则假设h(x)的风险定义为损失函数的期望值

R(h)=𝐄[L(h(x),y)]=L(h(x),y)dP(x,y).

理论上常用的损失函数是0-1损失函数L(y^,y)={1 If y^y0 If y^=y

学习算法的最终目标是在固定函数类中找到风险R(h)最小的假设h*

h*=argminhR(h).

经验风险最小化

通常,无法计算风险R(h),因为学习算法不知道分布P(x,y)(这种情况称为无知学习)。但是可以通过对训练集上的损失函数取平均值来计算一个近似值,称为经验风险

Remp(h)=1ni=1nL(h(xi),yi).

经验风险最小化原理[1]指出学习算法应选择一个假设h^将经验风险降到最低:

h^=argminhRemp(h).

因此,由ERM原理定义的学习算法在于解决上述优化问题。

性质

计算复杂度

对于具有0-1损失函数的分类问题,即使对于像线性分类器这样的相对简单的函数类,经验风险最小化也被认为是NP难题。 [2]但是,当最小经验风险为零(即数据是线性可分离的)时,可以有效解决。

在实践中,机器学习算法可以通过对0-1损失函数(例如SVM铰链损失)采用凸近似来解决该问题,这种方法更容易优化,或者对分布进行假设P(x,y) (因此不再是上述结果适用的不可知论学习算法)。

參見

参考文献

Template:Reflist

扩展阅读

  1. V. Vapnik (1992). Principles of Risk Minimization for Learning Theory. Template:Wayback
  2. V. Feldman, V. Guruswami, P. Raghavendra and Yi Wu (2009). Agnostic Learning of Monomials by Halfspaces is Hard. (See the paper and references therein)