首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Kernlab中的类权重语法?

Kernlab中的类权重语法?
EN

Stack Overflow用户
提问于 2010-07-20 00:22:56
回答 1查看 2.2K关注 0票数 1

您好,我正在尝试使用kernlab包对R中的不平衡数据集进行分类,因为类分布不是1:1。我在ksvm()函数调用中使用class.weights选项,但是当我添加或删除权重时,在分类场景中没有得到任何差异?所以问题是声明类权重的正确语法是什么?

我正在使用以下函数调用:

代码语言:javascript
运行
复制
model = ksvm(dummy[1:466], lab_tr,type='C-svc',kernel=pre,cross=10,C=10,prob.model=F,class.weights=c("Negative"=0.7,"Positive"=0.3)) 
#this is the function call with class weights 
model = ksvm(dummy[1:466], lab_tr,type='C-svc',kernel=pre,cross=10,C=10,prob.model=F) 

有没有人能对此发表评论,我是否遵循了添加权重的正确语法?我还发现,如果我们将权重与prob.model=T一起使用,ksvm函数将返回错误!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-20 04:15:21

你的语法是正确的,但在机器学习中,不工作类平衡的问题是相当普遍的;在某种程度上,从更大的类中删除一些对象是唯一保证有效的方法,但它仍然可能是错误增加的来源,并且必须小心以智能的方式这样做(在SVM中,潜在的支持向量应该具有优先级--当然,现在存在如何定位它们的问题)。

你也可以尝试将重量提高到简单的长度比,比如说十倍,并检查它是否有一点帮助,或者幸运的是,它对另一边的不平衡有一定的帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3282916

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档