initial_validation_split()
創建隨機的 three-way 將數據分為訓練集、驗證集和測試集。 initial_validation_time_split()
執行相同的操作,但訓練、驗證和測試集不是隨機選擇,而是按完整數據集的順序排列,第一個觀察結果被放入訓練集中。 group_initial_validation_split()
基於某些分組變量創建類似的數據隨機分割,以便 "group" 中的所有數據都分配到同一分區。 training()
、 validation()
和 testing()
可用於提取結果數據集。使用 validation_set()
創建 rset
對象,以便與調整包中的函數(例如 tune::tune_grid()
)一起使用。
用法
initial_validation_split(
data,
prop = c(0.6, 0.2),
strata = NULL,
breaks = 4,
pool = 0.1,
...
)
initial_validation_time_split(data, prop = c(0.6, 0.2), ...)
group_initial_validation_split(
data,
group,
prop = c(0.6, 0.2),
...,
strata = NULL,
pool = 0.1
)
# S3 method for initial_validation_split
training(x, ...)
# S3 method for initial_validation_split
testing(x, ...)
validation(x, ...)
# S3 method for default
validation(x, ...)
# S3 method for initial_validation_split
validation(x, ...)
參數
- data
-
一個 DataFrame 。
- prop
-
分別為訓練數據和驗證數據保留的數據比例的長度為 2 的向量。
- strata
-
data
中的變量(單個字符或名稱)用於進行分層抽樣。如果不是NULL
,則每次重新采樣都會在分層變量中創建。數字strata
被分為四分位數。 - breaks
-
給出對數值分層變量進行分層所需的箱數的單個數字。
- pool
-
用於確定特定組是否太小的數據比例,是否應合並到另一個組中。我們不建議將此參數降低到默認值 0.1 以下,因為分層組太小存在危險。
- ...
-
這些點用於將來的擴展,並且必須為空。
- group
-
data
中的變量(單個字符或名稱),用於將具有相同值的觀察結果分組到折疊內的分析或評估集。 - x
-
類
initial_validation_split
的對象。
值
一個 initial_validation_split
對象,可與 training()
、 validation()
和 testing()
函數一起使用以提取每個拆分中的數據。
細節
使用 strata
參數,在分層變量內進行隨機抽樣。這有助於確保重采樣與原始數據集具有相同的比例。對於分類變量,采樣是在每個類別內單獨進行的。對於數字分層變量,strata
被分為四分位數,然後用於分層。低於總數10%的地層合並在一起;有關更多詳細信息,請參閱make_strata()
。
例子
set.seed(1353)
car_split <- initial_validation_split(mtcars)
train_data <- training(car_split)
validation_data <- validation(car_split)
test_data <- testing(car_split)
data(drinks, package = "modeldata")
drinks_split <- initial_validation_time_split(drinks)
train_data <- training(drinks_split)
validation_data <- validation(drinks_split)
c(max(train_data$date), min(validation_data$date))
#> [1] "2007-05-01" "2007-06-01"
data(ames, package = "modeldata")
set.seed(1353)
ames_split <- group_initial_validation_split(ames, group = Neighborhood)
train_data <- training(ames_split)
validation_data <- validation(ames_split)
test_data <- testing(ames_split)
相關用法
- R rsample initial_split 簡單的訓練/測試集分割
- R rsample int_pctl 自舉置信區間
- R rsample validation_set 創建驗證拆分以進行調整
- R rsample populate 添加評估指標
- R rsample vfold_cv V 折交叉驗證
- R rsample rset_reconstruct 使用新的 rset 子類擴展 rsample
- R rsample group_mc_cv 小組蒙特卡羅交叉驗證
- R rsample group_vfold_cv V 組交叉驗證
- R rsample rolling_origin 滾動原點預測重采樣
- R rsample reverse_splits 反轉分析和評估集
- R rsample group_bootstraps 團體自舉
- R rsample labels.rset 從 rset 對象中查找標簽
- R rsample get_fingerprint 獲取重采樣的標識符
- R rsample bootstraps 引導抽樣
- R rsample validation_split 創建驗證集
- R rsample reg_intervals 具有線性參數模型的置信區間的便捷函數
- R rsample clustering_cv 集群交叉驗證
- R rsample get_rsplit 從 rset 中檢索單個 rsplit 對象
- R rsample loo_cv 留一交叉驗證
- R rsample complement 確定評估樣本
- R rsample slide-resampling 基於時間的重采樣
- R rsample as.data.frame.rsplit 將 rsplit 對象轉換為 DataFrame
- R rsample labels.rsplit 從 rsplit 對象中查找標簽
- R rsample mc_cv 蒙特卡羅交叉驗證
- R rsample tidy.rsplit 整潔的重采樣對象
注:本文由純淨天空篩選整理自Hannah Frick等大神的英文原創作品 Create an Initial Train/Validation/Test Split。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。