【问题标题】:Regularised discriminant analysis (RDA) in RR中的正则化判别分析(RDA)
【发布时间】:2014-01-19 11:52:30
【问题描述】:

我正在尝试在 R 中的数据上应用 RDA,经过一些研究后,我发现 R 中有一个名为“rda”的包,它似乎可以为我完成这项工作。但是,我查看了该包中 RDA 函数的描述,现在我有点困惑:

R 中给出的用法:

rda(x, y, xnew=NULL, ynew=NULL, prior=table(y)/length(y),alpha=seq(0, 0.99, len=10), delta=seq(0, 3, len=10), regularization="S", genelist=FALSE, trace=FALSE)

我不确定在这种情况下“alpha”和“delta”代表什么。我被告知在 RDA 中有两个参数“lambda”和“sigma”,其中 lambda 是一个复杂度参数, 指示线性和二次判别分析之间的平衡,而 sigma 是进一步正则化协方差矩阵的另一个参数。它们都在 0 和 1 之间。

但是对于 R 中的这个“rda”函数,delta 的默认值在 0 到 3 之间,这让我很困惑。

谁能帮我解释一下?谢谢!

【问题讨论】:

    标签: r rda


    【解决方案1】:

    您可以使用包klaR,它有一个函数rda,其正则化参数的参数化与您描述的类似。

     detach(package:rda)     
     require(klaR)
     data(iris)
     x <- rda(Species ~ ., data = iris, gamma = 0.05, lambda = 0.2)
     predict(x, iris)
    

    混合两个包不是一个好主意(某些功能的命名空间问题),如果你想使用klaR(或相反),最好分离rda

    【讨论】:

    • 谢谢,是的,我认为 klaR 是我正在寻找的包。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-03
    • 1970-01-01
    • 2015-01-15
    • 2013-06-19
    • 2012-12-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多