|
|
|
|
移动端

2.5.10 分类问题和负对数似然

《深度学习与计算机视觉:算法原理、框架应用与代码实现》本书全面介绍了深度学习及计算机视觉中最基础的知识,并结合最常见的应用场景和大量实例,带领读者进入丰富多彩的计算机视觉领域。作为一本“原理+实践”教程,本书在讲解原理的基础上,通过有趣的实例带领读者一步步亲自动手,不断提高动手能力,而不是枯燥和深奥原理的堆砌。本节为大家介绍分类问题和负对数似然。

作者:叶韵来源:机械工业出版社|2017-10-23 17:08

开发者盛宴来袭!7月28日51CTO首届开发者大赛决赛带来技术创新分享

2.5.10  分类问题和负对数似然

机器学习中除了像上部分中对实数值做回归,还有一种典型问题是分类问题。以最简单的二分类为例,考虑一组数据{(x1,y1),(x2,y2),…,(xn,yn)},其中y∈{0,1},也就是将x分为两类。我们尝试用一个模型f(x)来学习分类的规律,给定x,经过f(x)计算结果也是0或1。很自然地会想到用比较结果是否相等来作为损失函数:

其中I是判断两个量是否相等的函数,如果相等则为0,否则为1:

 

虽然这种损失函数非常直接简单,但是不连续且高维度不可计算。现在换个思路,考虑不让函数直接输出0或者1,而是让一个处处可导容易计算的函数最后的输出是结果为0或者1的概率:P(Y|θ),其中θ是参数。最后只需要找到对应概率最大的分类结果,就是模型预测的结果:

 

在这样的框架下,机器学习要解决的问题就是找到一组参数,使得对给定标注数据(xi,yi),模型在正确标签上预测的概率都达到最大,这正是2.2.4节中讲到过的最大似然估计。所以可以把计算最大似然估计的思路用到这里,采用对数似然函数:

在机器学习中,都习惯用优化算法求最小值,所以通常用的是负对数似然(Negative Log-Likelihood,NLL):

因为概率总是小等于1,所以NLL的值总是大于0,更加直观。这是在分类问题中常用的一种损失函数,并且能轻易拓展到多分类问题。通常这种替代直接比较输出的损失函数又称做代理函数(Surrogate Loss Function)。

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Java编程思想 第4版

本书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、Java I...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊