Description Usage Arguments Details Value Examples
optimize.bayesian.movie.html
generates an optimization movie from optimize.bayesian
.
1 2 3 |
optimized |
Type: List returned from |
folder |
Type: character. The output folder for the images of the HTML movie. Defauls to |
file |
Type: character. The output file for the HTML movie, without path. Defauls to |
title |
Type: character. The title of the HTML movie. Defaults to |
autobrowse |
Type: logical. Whether to open the HTML movie once finished. Defaults to |
width |
Type: numeric. Width in pixels. Note that 40 pixels are removed for the borders to fit the provided width. Defaults to |
height |
Type: numeric. Height in pixels. Note that 88 pixels are removed for the borders to fit the provided height. Defaults to |
navigator |
Type: logical. Whether to provide a progress bar on the HTML file. Defaults to |
Please see vignette for demos: vignette("optimize.bayesian", package = "Laurae2")
or help_me("optimize.bayesian")
.
None.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | ## Not run:
library(xgboost)
library(mlrMBO)
# Load demo data
data(EuStockMarkets)
# Transform dataset to "quantiles"
for (i in 1:4) {
EuStockMarkets[, i] <- (ecdf(EuStockMarkets[, i]))(EuStockMarkets[, i])
}
# Create datasets: 1500 observations for training, 360 for testing
# Features are:
# -- Deutscher Aktienindex (DAX),
# -- Swiss Market Index (SMI),
# -- and Cotation Assistee en Continu (CAC)
# Label is Financial Times Stock Exchange 100 Index (FTSE)
dtrain <- xgb.DMatrix(EuStockMarkets[1:1500, 1:3], label = EuStockMarkets[1:1500, 4])
dval <- xgb.DMatrix(EuStockMarkets[1501:1860, 1:3], label = EuStockMarkets[1501:1860, 4])
# Create watchlist for monitoring metric
watchlist <- list(train = dtrain, eval = dval)
# Our loss function to optimize: minimize RMSE
xgboost_optimization <- function(x) {
# Train the model
gc(verbose = FALSE)
set.seed(1)
model <- xgb.train(params = list(max_depth = x[1],
subsample = x[2],
tree_method = x[3],
eta = 0.2,
nthread = 1,
objective = "reg:linear",
eval_metric = "rmse"),
data = dtrain, # Warn: Access using parent environment
nrounds = 9999999,
watchlist = watchlist, # Warn: Access using parent environment
early_stopping_rounds = 5,
verbose = 0)
score <- model$best_score
rm(model)
return(score)
}
# The paramters: max_depth in [1, 15], subsample in [0.1, 1], and tree_method IN {exact, hist}
my_parameters <- makeParamSet(
makeIntegerParam(id = "max_depth", lower = 1, upper = 15),
makeNumericParam(id = "subsample", lower = 0.1, upper = 1),
makeDiscreteParam(id = "tree_method", values = c("exact", "hist"))
)
# Perform optimization
optimization <- optimize.bayesian(loss_func = xgboost_optimization,
param_set = my_parameters,
seed = 1,
maximize = FALSE,
initialization = 10,
max_evaluations = 25,
time_budget = 30,
verbose = TRUE)
# Make movie from the optimization
optimize.bayesian.movie.html(optimization)
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.