©PaperWeekly 原创 · 作者|苏剑林
单位|追一科技
研究方向|NLP、神经网络
众所周知,在深度学习之前,机器学习是 SVM(Support Vector Machine,支持向量机)的天下,曾经的它可谓红遍机器学习的大江南北,迷倒万千研究人员,直至今日,“手撕 SVM”仍然是大厂流行的面试题之一。然而,时过境迁,当深度学习流行起来之后,第一个革的就是 SVM 的命,现在只有在某些特别追求效率的场景以及大厂的面试题里边,才能看到 SVM 的踪迹了。
峰回路转的是,最近 Arxiv 上的一篇论文 Every Model Learned by Gradient Descent Is Approximately a Kernel Machine 做了一个非常“霸气”的宣言:任何由梯度下降算法学出来的模型,都是可以近似看成是一个 SVM!
论文标题:
Every Model Learned by Gradient Descent Is Approximately a Kernel Machine
论文链接:
https://arxiv.org/abs/2012.00152
这结论真不可谓不“霸气”,因为它已经不只是针对深度学习了,而且只要你用梯度下降优化的,都不过是一个 SVM(的近似)。笔者看了一下原论文的分析,感觉确实挺有意思也挺合理的,有助于加深我们对很多模型的理解,遂跟大家分享一下。
SVM基础
一般的 SVM 可以表示为如下形式:
其中 是训练数据对, 是可学习参数,标准核机器的输出是一个标量,所以这里考虑的 都是标量。 则称为“核函数”,它衡量了输入 x 与训练样本 之间的某种相似度。SVM 是更广义的“核机器(Kernel Machine)”模型的一种(可能是最出名的一种),属于“核方法”范畴。
直观理解,其实 SVM 就是一个检索模型,它检索了输入与所有训练样本的相似度 ,然后加权求和。所以,严格上来说,SVM 的参数量除了各个