Random search với h2o
Tiếp theo, bạn sẽ dùng random search. Thư viện h2o và seeds_train_data đã được nạp sẵn cho bạn và đoạn mã sau đã được chạy:
h2o.init()
seeds_train_data_hf <- as.h2o(seeds_train_data)
y <- "seed_type"
x <- setdiff(colnames(seeds_train_data_hf), y)
seeds_train_data_hf[, y] <- as.factor(seeds_train_data_hf[, y])
sframe <- h2o.splitFrame(seeds_train_data_hf, seed = 42)
train <- sframe[[1]]
valid <- sframe[[2]]
dl_params <- list(hidden = list(c(50, 50), c(100, 100)),
epochs = c(5, 10, 15),
rate = c(0.001, 0.005, 0.01))
Bài tập này là một phần của khóa học
Tinh chỉnh siêu tham số trong R
Hướng dẫn bài tập
- Tạo một đối tượng search criteria để định nghĩa random search với thời gian chạy tối đa 10 giây.
- Thêm đối tượng search criteria này vào đúng vị trí trong hàm
h2o.gridđể huấn luyện các mô hình ngẫu nhiên.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Define search criteria
search_criteria <- list(strategy = ___,
___ = 10, # this is way too short & only used to keep runtime short!
seed = 42)
# Train with random search
dl_grid <- h2o.grid("deeplearning",
grid_id = "dl_grid",
x = x,
y = y,
training_frame = train,
validation_frame = valid,
seed = 42,
hyper_params = dl_params,
___ = ___)