matlab - 如何限制线性分类器的权重?

标签 matlab constraints svm linear-regression

有很多神经元,我们知道它们在 -3s、-2s、-1s 上的放电率, 喜欢

神经元指数:

                  1     2     3     4

发射率

         0s:      1     1    -1     1
        -1s:     -1    -1     0    -1
        -2s:      0     0     0     0
        -3s:      1     1     1     1

通过使用这些发射率历史记录,我想预测神经元当前(0s)的发射率是 1 还是 -1。我使用线性 SVM 并改变每个时间点的权重。

但是,我想限制最近发射率的权重绝对值总是大于过去的像

重量

-1秒:-0.8

-2s:0.3

-3秒:-0.1

如何在 MATLAB 上的线性分类器(如线性 SVM)上实现这个想法?

最佳答案

一种选择是向优化问题添加约束,即采用常规 SVM 问题并添加约束:

enter image description here

对于i=2,3,...,d。这不再是 SVM 问题,因此您必须找到一些通用优化引擎或自己编写求解器。另请注意,此优化问题不再是凸的,因此任何优化算法都只会找到局部最小值。

关于matlab - 如何限制线性分类器的权重?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34427320/

相关文章:

python - python读取的复杂Matlab struct mat文件

swift - tableview 将标签高度设置为零和正确的值,然后选择保留零以使标签消失

swift - 编程约束未按预期工作

iOS 约束导致 SIGABRT 错误

Python (sklearn) - 为什么我对 SVR 中的每个测试元组都得到相同的预测?

matlab - 轴标签中的希腊字母不起作用

matlab - 机器学习 (MATLAB) - 神经网络在检查点中保存为 'struct' 而不是 'network'

c++ - 以 SVM 作为弱学习器的 Opencv 级联分类器

machine-learning - 如何使用libsvm进行文本分类?

matlab - MATLAB 中的快速傅里叶变换