问题标签 [kernlab]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 如何克服“.local(object, ...) 中的错误:测试向量与模型不匹配!”?
我从原始数据集中删除了 100 条记录,然后使用以下编码重建了 SVM 模型。
现在,我想引入我在训练/测试新模型时留出的那 100 条记录,并检查该模型在识别和分类这 100 条以前从未见过的记录方面的能力。所以我做了以下编码。
但是 R,给了我以下错误:
知道我怎么能克服这个错误吗?用于构建模型的测试集有 466 条记录。因此,我也尝试将验证测试复制到 466,但它仍然给出相同的错误。
r - R ksvm 支持向量
我正在尝试提取 R 的 ksvm 包的权重。
通常我使用 e1071 包,权重可以通过
但是,当我查看 ksvm 包时,系数和 alpha(支持向量)都是相同维度的列表。alpha 不返回向量。
我的问题是,我应该如何访问包括零值的支持向量?我是否必须使用 SVindex 将变量对应回原始输入?
谢谢。
r - 带有插入符号错误的 SVM 分类(基本)
我可能在这里犯了一个非常简单(和愚蠢)的错误,但我无法弄清楚。我正在使用来自 Kaggle ( Digit Recognizer ) 的一些数据,并尝试将 SVM 与 Caret 包一起使用来进行一些分类。如果我只是将标签值作为数字类型train
插入函数,那么 Caret 中的函数似乎默认为回归并且性能很差。所以我接下来尝试使用函数将其转换为因子factor()
并尝试运行 SVM 分类。这是一些代码,我在其中生成了一些虚拟数据,然后将其插入 Caret:
我收到此错误:
有人可以告诉我我做错了什么吗?谢谢!
r - 为什么 R 中 ksvm 的概率和响应不一致?
我使用R 中的kernlabksvm
包来预测概率,使用. 但是,我发现有时使用不会产生由 给出的最高概率的类。type="probabilities"
predict.ksvm
predict(model,observation,type="r")
predict(model,observation,type="p")
例子:
这是正确的行为还是错误?如果这是正确的行为,我如何从概率中估计最可能的类别?
尝试可重现的示例:
结果输出:
r - 在 R 中使用 ksvm 的大型支持向量机的概率模型无效
我使用 R 中的 kernlab 包中的函数训练支持向量机ksvm
,对大量的观察结果(300k)进行训练,但特征不是很多(1-8)。我想使用生成的概率模型,但是对于大型数据集,生成的概率模型具有意外的格式。
这是应该发生的:
但是,对于较大的值n
(例如 100k;请注意高内存使用率和长执行时间),值prob.model(m)[[1]]
是长度的数值向量2n
,似乎是 中每个观察的可能性df
。什么可能导致这种情况?
会话信息:
编辑:这是我正在谈论的分类任务,df
具有以下形式:
r - 线搜索在训练 ksvm prob.model 时失败
从R 中使用 ksvm 的大型支持向量机的无效概率模型开始:
我正在使用 R 中的 kernlab 包中的 ksvm 训练 SVM。我想使用概率模型,但在 sigmoid 拟合期间,我收到以下错误消息:
发生这种情况时,结果值prob.model(m)
是所有概率的向量,而不是拟合在这些概率上的 sigmoid 函数的预期参数。是什么导致了这个错误,我该如何防止它?搜索错误消息没有产生任何结果。
可重现的例子:
r - 参数 C. epsilon 作为 R 中 kernlab 的 ksvm 中的向量
我正在尝试使用 R 中 kernlab 包的 ksvm 函数进行 epsilon-SVM 回归。我想将参数 C(正则化常数)和 epsilon(不敏感)作为向量(向量长度 = 训练数据长度)。但我无法弄清楚如何做到这一点。请提出一些方法。
r - 为垃圾邮件数据集绘制 SVM 分类结果时出错
我在为包SVM
中的垃圾邮件数据集绘制分类结果时遇到问题kernlab
。
代码:
错误:
r - 如何在kernlab包的ksvm中自定义一个内核函数?
我有经纬度,所以需要将RBF内核重新定义为exp(-1/2||sophore distrance||^2),也就是说我需要自己重写一个内核函数。我写我的内核如下:
我测试了这个功能,内核应该是正确的。但是使用以下培训命令,我收到了错误:
更棘手的是,我尝试了 ksvm 文档中的示例代码:
但我得到了同样的错误。
任何人都知道如何正确定义核函数?
r - 使用 e1071 和插入符号的 SVM 模型的结果截然不同
我正在对我的数据使用两个不同的包来训练两个 SVM 模型,并得到截然不同的结果。这是可以预料的吗?
使用 e1071 的模型 1
使用插入符号的模型2
calculateAUC()
是我定义的一个函数,用于计算 AUC 值,给定目标的预测值和实际值。我将这些值视为:
型号 1 (e1071)
1
0.8567979
模型2(插入符号)
0.9910193
0.758201
这是可能的吗?还是我做错了?
如果有帮助,我可以提供示例数据