支持向量机的人工neural network的优点是什么?

ANN(人工neural network)和SVM(支持向量机)是监督机器学习和分类的两种常用策略。 对于一个特定的项目来说,哪种方法更好是不常见的,我确定答案总是“取决于”。 通常,使用两者的组合以及贝叶斯分类。

这些关于Stackoverflow的问题已经被问及关于ANN和SVM:

ANN和SVM分类

ANN,SVM和KNN在我的分类问题上有什么区别

支持向量机还是人工neural network进行文本处理?

在这个问题中,我想具体了解一个ANN(特别是一个多层感知器)的哪些方面可能使它适用于SVM? 我问的原因是因为很容易回答相反的问题:支持向量机通常比ANN更好,因为它避免了ANN的两个主要弱点:

(1)人工neural network常常是局部最小值而不是全球最小值,这意味着它们有时会“缺失大局”(或者错过了森林)

(2)如果训练时间过长,人工neural network往往会过度适应 ,这意味着对于任何给定的模式,人工neural network可能会开始将噪声视为模式的一部分。

SVM不受这两个问题的影响。 然而,支持向量机(SVMs)是人工neural network的完全替代品并不是显而易见的。 那么,人工neural network对SVM有什么特别的优势可以使它适用于某些情况呢? 我已经列举了一个支持向量机的特定优点,现在我想看看人工neural network优点列表(如果有的话)。

从你提供的例子来看,我假设人工neural network意味着多层前馈networking(简称FFnetworking),比如多层感知器,因为它们与SVMs直接竞争。

这些模型对SVM的一个具体好处是它们的大小是固定的:它们是参数模型,而SVM是非参数的。 也就是说,在人工neural network中,根据特征的数量,加上偏置参数以及构成模型的一些隐藏层,大小为h 1h n 。 相比之下,SVM(至less一个核心化的)由一组支持向量组成,每个支持向量从训练集中select,每个支持向量有一个权重。 在最坏的情况下,支持向量的数量恰好是训练样本的数量(尽pipe这主要发生在小的训练集或退化的情况下),并且一般而言,其模型的大小是线性的。 在自然语言处理中,具有成千上万个特征的成千上万个支持向量的SVM分类器并不是前所未闻的。

另外,与在线SVM拟合相比,FFnetworking的在线培训非常简单,并且预测可以快得多。

编辑 :以上所有都属于核化SVM的一般情况。 线性支持向量机是一种特殊情况,因为它们参数化的,可以通过简单algorithm(如随机梯度下降)进行在线学习。

人工neural network在支持向量机上的一个显着优点是人工neural network可以有任意数量的输出,而支持向量机只有一个。 用支持向量机创buildn元分类器的最直接的方法是创buildn个支持向量机并逐一训练它们。 另一方面,具有neural network的n元分类器可以一次性训练。 此外,neural network将是更有意义的,因为它是一个整体,而支持向量机是孤立的系统。 如果产出是相互关联的话,这是特别有用的。

例如,如果目标是对手写数字进行分类,那么十个支持向量机就可以完成。 每个支持向量机只能识别一个数字,而不能识别所有其他数字。 由于每个手写数字都不能容纳比其类别更多的信息,因此尝试用人工neural network解决这个问题是没有意义的。

然而,假设目标是模拟一个人的激素平衡(对于几种激素)作为容易测量的生理因素(例如自上次进餐以来的时间,心率等)的函数。由于这些因素都是相互关联的,所以人造neural network回归比支持向量机回归更有意义。

有一点要注意的是,这两者其实是非常相关的。 线性支持向量机等价于单层neural network(即感知器),多层neural network可以用支持向量机表示。 看到这里的一些细节。

如果你想使用内核SVM,你必须猜测内核。 然而,人工neural network是通用逼近器,只需要猜测是宽度(近似精度)和高度(近似效率)。如果正确devise优化问题,则不要过度拟合(请参阅参考书目中的过度拟合)。取决于训练的例子,如果他们正确和一致的search空间扫描宽度和深度发现是整数规划的主题。

假设在I = [0,1]上有有界函数f(。)和有界通用逼近器,范围又是I = [0,1],例如通过紧支撑U(。,a)的实际序列参数化存在一系列序列的属性

lim sup { |f(x) - U(x,a(k) ) | : x } =0 

你用IxI上的分布D画出例子和testing(x,y)

对于规定的支持,你所做的是find最好的一个

 sum { ( y(l) - U(x(l),a) )^{2} | : 1<=l<=N } is minimal 

让这个a=aa这是一个随机variables,那么过度拟合就是

D and D^{N} of ( y - U(x,aa) )^{2}

让我解释一下为什么,如果你select一个使得误差最小化的方法,那么对于一组罕见的值,你就完全适合了。 但是,由于它们很less,所以平均值不会是0。尽pipe对D有一个离散的近似值,但是要尽量减less第二点。请记住,支持长度是自由的。

我们还应该考虑SVM系统可以直接应用于非度量空间,例如标记graphics或string的集合。 实际上,只要内核的正定性要求得到满足,内部核函数就可以适用于任何types的input。 另一方面,为了能够在一组标记图上使用ANN,必须考虑显式embedded过程。

我错过了一个答案:多层感知器能够find特征之间的关系。 例如,在将原始图像提供给学习algorithm时,计算机视觉中是必需的,现在计算复杂的特征。 基本上,中间级别可以计算新的未知特征。