Python搭建SVM

目录

1.线性分类器

2.损失函数 Loss function

多类支持向量机损失(Multiclass Support Vector Machine Loss)

损失函数(Softmax分类器):

 3.正则化(Regularization)

4.总结如下:   

5.部分代码及其解释

6.全部代码 


  从SVM开始才算真正步入机器学习了,之前的KNN只能算是公式应用,毕竟没有损失函数,没有权重优化怎么能称之为学习呢?

SVM的知识包括几个主要方面评分函数、损失函数、正则化以及梯度下降
从整个过程来看:
1.初始化权重,训练数据点乘权重得到评分矩阵;
2.根据评分矩阵和损失函数公式来求得损失值,并对损失值进行正则化,来减小大的权重参数对损失值影响;
3.利用梯度下降方法对损失值来进行迭代,通过损失值来调整权值参数达到最优。

1.线性分类器

    W被称为权重(weights),b被称为偏差向量(bias vector)

举例:xi=32*32*3*1 [3072 x 1]的列向量;W=10*3072   W的每一行对应一个类的分类器

那么xi的大小就变成[3073x1],而不是[3072x1]了,多出了包含常量1的1个维度。W大小就是[10x3073]了。W中多出来的这一列对应的就是偏差值b
把权重和偏差放到一个矩阵(如图1所示),我们就只需要学习一个权重矩阵,而不用去学习两个分别装着权重和偏差的矩阵了。

                                                                                                图1

所得的结果就是想要得到的评分矩阵(具体例子如图2所示)

图2

                                                                                                   图2

 每一行相当于一个分类器,第一行就是cat的分类器,得分分别是第一幅图cat得分是3.2,第二幅图cat得分是4.9。

2.损失函数 Loss function

多类支持向量机损失(Multiclass Support Vector Machine Loss)

第i个数据的多类SVM的损失函数为

        第i个数据中包含图像xi的像素和代表正确类别的标签yi 。评分函数输入像素数据,然后通过公式 来计算不同分类类别的分值。这里我们将分值简写为 。比如,针对第j个类别的得分就是第j个元素:sj=f(xi,W)j。yi 表示正确的得分,针对第i个数据的多类SVM的损失函数定义如下:

关于0的阀值:max(0,-)函数,它常被称为折叶损失(hinge loss)。有时候会听到人们使用平方折叶损失SVM(即L2-SVM),它使用的是max(0,-)2,将更强烈(平方地而不是线性地)地惩罚过界的边界值。
不使用平方是更标准的版本,但是在某些数据集中,平方折叶损失会工作得更好,可以通过交叉验证来决定到底使用哪个。

在上述例子中,Syi ,分别是3.2,4.9,-3.1。

L1=max(0,5.1-3.2+1)+ max(0,-1.7-3.2+1)

L2=…

举例来说,在CIFAR-10中,我们有一个N=50000的训练集,每个图像有D=32x32x3=3072个像素,而K=10,这是因为图片被分为10个不同的类别(狗,猫,汽车等)。定义评分函数为: ,该函数是原始图像像素到分类分值的映射。

损失函数(Softmax分类器):

第i个数据的Softmax分类器的损失函数为

Softmax分类器就可以理解为逻辑回归分类器面对多个分类的一般化归纳。SVM将输出 作为每个分类的评分(因为无定标,所以难以直接解释)。与SVM不同,Softmax的输出(归一化的分类概率)更加直观,并且从概率上可以解释。
在Softmax分类器中,函数映射保持不变,但将这些评分值视为每个分类的未归一化的对数概率,并且将折叶损失(hinge loss)替换为交叉熵损失(cross-entropy loss)。公式如下:

normalize 意思是归一化也就是公式中的

  • 4
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值