当前位置:  开发笔记 > 人工智能 > 正文

SVM和铰链损耗之间的关系是什么?

如何解决《SVM和铰链损耗之间的关系是什么?》经验,为你挑选了1个好方法。

我的同事和我正试图围绕逻辑回归和SVM之间的差异.显然,他们正在优化不同的目标函数.SVM是否就像说它是一个简单优化铰链损失的判别分类器一样简单?还是比这更复杂?支持向量如何发挥作用?松弛变量怎么样?为什么你不能拥有深度SVM的方式你不能拥有一个具有sigmoid激活功能的深层神经网络?



1> lejlot..:

我会及时回答一件事

SVM是否就像说它是一个简单优化铰链损失的判别分类器一样简单?

SVM只是一个线性分类器,通过L2正则化优化铰链损耗.

还是比这更复杂?

不,这只是"只是",但是有不同的方式来看这个模型导致复杂,有趣的结论.特别是,这种特定的损失函数选择导致极其有效的核化,对于对数损失(逻辑回归)和mse(线性回归)都不是这样.此外,您可以显示非常重要的理论属性,例如与Vapnik-Chervonenkis降维相关的那些,从而导致过度拟合的可能性较小.

直观地看待这三种常见的损失:

合页: max(0, 1-py)

日志: y log p

MSE: (p-y)^2

只有第一个具有一旦正确分类的属性 - 它有0罚款.即使它正确地对样本进行分类,所有剩余的仍然会惩罚您的线性模型.为什么?因为它们与回归分类更相关,所以它们需要完美的预测,而不仅仅是正确的.

支持向量如何发挥作用?

支持向量只是放置在决策边界附近的样本(丢失地说).对于线性情况,它没有太大变化,但由于SVM的大部分功能在于其核化 - 因此SV非常重要.一旦引入内核,由于铰链损失,可以有效地获得SVM解,并且支持向量是从训练集中记住的唯一样本,因此与训练数据的子集建立非线性决策边界.

松弛变量怎么样?

这只是铰链损耗的另一个定义,当您想要对解决方案进行内核化并显示凸性时更有用.

为什么你不能拥有深度SVM的方式你不能拥有一个具有sigmoid激活功能的深层神经网络?

但是,由于SVM 不是概率模型,因此其训练可能有点棘手.此外,SVM的整体优势来自效率全局解决方案,一旦您创建了深层网络,两者都将丢失.然而,有这样的模型,特别是SVM(具有平方铰链损耗)现在经常是最深层网络层的选择 - 因此整个优化实际上是深度SVM.在它们之间添加更多层与SVM或其他成本无关 - 它们完全由它们的激活定义,并且您可以例如使用RBF激活函数,只是它已被多次显示它导致弱模型(对于局部特征)被检测到).

总结一下:

有深度SVM,这只是一个典型的深层神经网络,顶部有SVM层.

没有将SVM层"放在中间"的事情,因为训练标准实际上只适用于网络的输出.

使用"典型"SVM内核作为激活函数由于其局部性而在深度网络中不受欢迎(与非常全局的relu或sigmoid相反)

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有