结构学习:结构型支持向量机

本文详细探讨了结构学习的统一框架,包括结构学习的三个核心问题:表示形式、最大值查找和模型获取。以目标检测为例,阐述了估计、推理和训练过程。接着介绍了结构感知器及其在可分和不可分情况下的应用,以及考虑错误等级的改进方法。文章进一步讨论了结构支持向量机,包括割平面法和多分类、二分类结构SVM的实现。最后,提出了结合深度学习扩展结构学习的可能性。
摘要由CSDN通过智能技术生成

1. 回顾结构学习

1.1 结构学习的统一框架

  结构学习的统一框架可以分为下面的两个部分

第一步通过训练得到函数,第二部给定数据,找到最符合的 y 。

1.2 结构学习要解决的三个问题

  主要需要解决的如下的三个问题

首先要确定的问题是,找到函数 F(x,y) 的表示形式。第二个问题是,如果给定了一个 F(x,y) 和输入数据 x 如何找到对应的最大的 y ,这个一般假设是通过穷举的方法得到的。最后需要解决的问题是给定了训练数据 x 如何得到分类用模型 F(x,y)

  这里之前有一个问题一直困扰我, 为什么第二步感觉很像测试的时候用的方法,却放在训练的前面?实际上是因为在训练的过程中有寻找最大值的过程,所以需要先解决如何寻找最大值的问题。

1.3 以目标检测为例进行说明

  下面将以目标检测为例进行说明,当然除了目标检测还有其他的应用,如下图所示

可以使用不规则的形状将目标标注出来,可以使用不同的颜色标注出人的不同部位,进而完成动作的识别。在这里我们以简单的边界框的目标检测为例进行说明,同样是分为估计(evaluation),推理(Inference)和训练(Training)三个问题。

1.3.1 估计(evaluation)

  估计的问题实际上就是构建特征及函数的过程,如下图所示

其中输入的数据 x 试图向,y是将凉宫春日标记出的边界框,而 F(x,y) 是由一系列 x,y 构成的特征的线性组合。

1.3.2 推理(Inference)

  推理的过程实际上就是,假设现在已经存在了一个 F(x,y) ,如果给定一个输入 x ,如何找到使 F(x,y) 的 y 值。如下图所示

上面的每一个框的位置实际上就是一个 y ,我们需要做的也就是当给定一个输入数据 x (其实就是这样图像),找到最为匹配(使得 F(x,y) 的值最大的那一个)。

  推理这部分中,具体怎样找出最好的那个 y 实际上是假设已经找出来的,但是却又没有给出具体的方法如何找出,主要原因在于这个过程对于具体问题是需要具体讨论的。在目标检测中常用的是:Branch and Bound algorithm、Selective Search ;在句子标注中常用的是:Viterbi Algorithm;或者也可以使用遗传算法进行搜索。但是这里总是假设这个 y 是已经得到了的。

1.3.3训练(Training)

  经过训练之后,我们希望模型可以实现下面这样的功能

对于输入的训练数据,只有与给定的输入数据相对应的 y 才会获得最大的标签值。在这里我们认为第一二个问题已经得到了解决,因此忽略它们重点讨论第三个问题。

2. 结构感知器

  假设这里存在这样的权重 w 可以使得没一张图像都可以找到与自己目标对应的边界框。此时就可以只用之前在线性模型那一节课介绍的知识对 F(x,y) 进行求解。具体方法如下

2.1 结构感知器收敛的证明

  要证明的结论是,对于可分的案例,我们通过结构感知器仅仅需要迭代

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值