【发布时间】:2020-10-28 22:53:28
【问题描述】:
我对学习 tidymodel 很感兴趣,并尝试将其应用到应用预测建模中的一些练习中。这是练习 6.2。我想为渗透率数据集指定一个偏最小二乘 (PLS) 模型。
我有以下代码可以一直运行到调谐网格。我已经根据 Julia Silge 的 - Lasso regression with tidymodels 和 The Office found here 建模了我的分析。
您可以在下面看到我的脚本和 tune_grid 错误消息。
library(tidymodels)
library(tidyverse)
library(skimr)
library(plsmod)
library(caret)
library(AppliedPredictiveModeling)
data(permeability)
dim(fingerprints)
fingerprints <- fingerprints[, -nearZeroVar(fingerprints)]
dim(fingerprints)
df <- cbind(fingerprints, permeability)
df <- as_tibble(df)
perm_split <- initial_split(df)
perm_train <- training(perm_split)
perm_test <- testing(perm_split)
perm_rec<- recipe(permeability ~ ., data=perm_train) %>%
step_center(all_numeric(),-all_outcomes()) %>%
step_scale(all_numeric(),-all_outcomes())
perm_prep <- perm_rec %>%
prep()
perm_prep
pls_spec <- pls(num_comp = 4) %>%
set_mode("regression") %>%
set_engine("mixOmics")
wf <- workflow() %>%
add_recipe(perm_prep)
pls_fit <- wf %>%
add_model(pls_spec) %>%
fit(data=perm_train)
pls_fit %>%
pull_workflow_fit() %>%
tidy()
set.seed(123)
perm_folds <- vfold_cv(perm_train, v=10)
pls_tune_spec <- pls(num_comp = tune()) %>%
set_mode("regression") %>%
set_engine("mixOmics")
comp_grid <- expand.grid(num_comp = seq(from = 1, to = 20, by = 1))
doParallel::registerDoParallel()
set.seed(4763)
pls_grid <- tune_grid(
wf %>% add_model(pls_tune_spec),
resamples = perm_folds,
grid = comp_grid
)
此时我收到以下错误:
所有模型都在 tune_grid() 中失败。请参阅.notes 列。
两个问题:
- 为什么我的调谐网格出现故障,我该如何解决?
- 如何看到
.note列。
【问题讨论】:
标签: r tidymodels