Torch7 中的支持向量机
Support Vector Machine in Torch7
我的模型基于以下教程:
https://github.com/torch/tutorials/tree/master/2_supervised
在最后阶段,神经网络用于从 CNN 提取的特征。我想在最后一层使用 SVM。如何将其添加到我现有的模型中?
一些论文表明,作为 CNN 的最后一层,SVM 似乎比神经网络的功能更好,因此我想尝试一下它们以提高模型的准确性。 SVM 也可用于一个 class class 化,神经网络 lack.I 最后需要一个 class class 化器,因此需要添加一个SVM 到 CNN。
请帮忙
编辑: 自从你 cannot code a (linear) SVM as a complete module 以来,我的旧答案完全是垃圾。相反,您可以将 SVM 视为
a 1-layer NN with linear activation on the output node and trained via hinge loss
(查看已接受答案的评论。)
这意味着在 Torch 中,您可以使用类似
的东西模拟(线性)SVM
linearSVM = nn.Sequential()
linearSVM:add(nn.Linear(ninputs, 1))
criterion = nn.MarginCriterion()
中的以下问题
我的模型基于以下教程:
https://github.com/torch/tutorials/tree/master/2_supervised
在最后阶段,神经网络用于从 CNN 提取的特征。我想在最后一层使用 SVM。如何将其添加到我现有的模型中?
一些论文表明,作为 CNN 的最后一层,SVM 似乎比神经网络的功能更好,因此我想尝试一下它们以提高模型的准确性。 SVM 也可用于一个 class class 化,神经网络 lack.I 最后需要一个 class class 化器,因此需要添加一个SVM 到 CNN。
请帮忙
编辑: 自从你 cannot code a (linear) SVM as a complete module 以来,我的旧答案完全是垃圾。相反,您可以将 SVM 视为
a 1-layer NN with linear activation on the output node and trained via hinge loss
(查看已接受答案的评论。)
这意味着在 Torch 中,您可以使用类似
的东西模拟(线性)SVMlinearSVM = nn.Sequential()
linearSVM:add(nn.Linear(ninputs, 1))
criterion = nn.MarginCriterion()
中的以下问题