Felomeng翻译:libsvm2.88之预先计算好的内核

本文介绍了一种使用预计算核技巧来简化支持向量机(SVM)训练与测试的方法。该方法允许用户直接输入核心数值,而非原始数据,从而提高了处理效率。文中详细解释了如何构造训练与测试文件,并给出了具体示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用户可以预告计算好核心数值并将它们作为训练和测试文件输入。这样支持向量机工具包就不需要原始的训练/测试数据集了。

假设有L个训练实例,x1,…,xL。设K(x,y)为实例xy的内核值。则输入数据格式为:

xi的新训练实例:

<label>0:I 1:K(xi,x1)…L:K(xi,xL)

x的新测试实例:

<label>0:?1:K(x,x1)…L:K(x,xL)

也就是说,在训练文件中,第一列必须是xi的“ID”。在测试实例中,?表示任意值。

包括“±0”在内的所有内核数值都必须明确给定。训练/测试文件的任何排列或随机子集都是合法的(见下面的例子)。

注意:与支持向量机工具包的早期发行版本中工具的预先计算好核心集的格式略有不同

示例:

假设原始训练数据有三个实例,每个实例有四种属性,而测试数据有一个实例:

15 1:1 2:1 3:1 4:1

45 2:3 4:3

25 3:1

15 1:1 3:1

如果使用线性核心,那么我们会得到如下的训练与测试集合:

15 0:1 1:4 2:6 3:1

45 0:2 1:6 2:18 3:0

25 0:3 1:1 2:0 3:1

15 0:? 1:2 2:0 3:1

? 表示任意值

以上训练文件中的任意子集也都是合法的。例如:

25 0:3 1:1 2:0 3:1

45 0:2 1:6 2:18 3:0

意味着核心矩阵是

[K(2,2) K(2,3)] = [18 0]

[K(3,2) K(3,3)] = [0 1]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值