首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在插入符号中哪些模型可以对X使用稀疏矩阵?

在插入符号中哪些模型可以对X使用稀疏矩阵?
EN

Stack Overflow用户
提问于 2016-08-15 16:39:32
回答 1查看 1.4K关注 0票数 9

我希望能够像x一样在caret::train中使用稀疏矩阵,看起来他们中的许多人都希望有一个数据框架。我已经能够在XGboostcaret中使用稀疏矩阵,但是nnetELM似乎都需要一个数据框架。我在代码中注意到,插入符号试图将x转换为nnetELM模型的数据框架。

是否有支持稀疏矩阵的模型列表?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-17 12:09:03

您可以使用这段代码来查找哪些模型在fit函数中使用as.matrix。

请注意,as.matrix将稀疏矩阵转换为完整的矩阵。您可能会遇到内存问题。我还没有测试个别的底层模型是否接受稀疏矩阵。

代码语言:javascript
复制
library(caret)  # run on version 6.0-71

model_list <- getModelInfo()
df <- data.frame(models = names(model_list), 
                 fit = rep("", length(model_list)), 
                 stringsAsFactors = FALSE)

for (i in 1:length(model_list)) {
  df$fit[i] <- as.expression(functionBody(model_list[[i]]$fit))
}

# find xgboost matrix   
df$models[grep("xgb.DMatrix", df$fit)]
[1] "xgbLinear" "xgbTree"  

# find all models where fit contains as.matrix(x)
df$models[grep("as.matrix\\(x\\)", df$fit)]

[1] "bdk"               "binda"             "blasso"            "blassoAveraged"    "bridge"            "brnn"             
[7] "dnn"               "dwdLinear"         "dwdPoly"           "dwdRadial"         "enet"              "enpls.fs"         
[13] "enpls"             "foba"              "gaussprLinear"     "gaussprPoly"       "gaussprRadial"     "glmnet"           
[19] "knn"               "lars"              "lars2"             "lasso"             "logicBag"          "LogitBoost"       
[25] "lssvmLinear"       "lssvmPoly"         "lssvmRadial"       "mlpSGD"            "nnls"              "ordinalNet"       
[31] "ORFlog"            "ORFpls"            "ORFridge"          "ORFsvm"            "ownn"              "PenalizedLDA"     
[37] "ppr"               "qrnn"              "randomGLM"         "relaxo"            "ridge"             "rocc"             
[43] "rqlasso"           "rqnc"              "rvmLinear"         "rvmPoly"           "rvmRadial"         "sda"              
[49] "sddaLDA"           "sddaQDA"           "sdwd"              "snn"               "spikeslab"         "svmLinear"        
[55] "svmLinear2"        "svmLinear3"        "svmLinearWeights"  "svmLinearWeights2" "svmPoly"           "svmRadial"        
[61] "svmRadialCost"     "svmRadialSigma"    "svmRadialWeights"  "xgbLinear"         "xgbTree"           "xyf"      
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38959195

复制
相关文章

相似问题

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