test_that("Metrics are correctly saved", {
x <- torch_randn(1000, 10)
y <- torch_randn(1000, 1)
module <- nn_module(
inherit = nn_linear,
set_optimizers = function(lr = 2*1e-4, betas = c(0.5, 0.999)) {
list(
weight = optim_adam(list(super$parameters$weight), lr = lr, betas = betas),
bias = optim_adam(list(super$parameters$bias), lr = lr, betas = betas)
)
}
)
model <- module %>%
setup(loss = nnf_mse_loss) %>%
set_hparams(in_features = 10, out_features = 1) %>%
set_opt_hparams(lr = 1e-4)
tmp <- tempfile()
fitted <- model %>% fit(list(x, y), valid_data = 0.2, callbacks = list(
luz_callback_tfevents(tmp, histograms = TRUE)
), verbose = 0)
scalars <- tfevents::collect_events(tmp, type="scalar")
expect_equal(nrow(scalars), 40)
summaries <- tfevents::collect_events(tmp, type = "summary")
histograms <- summaries[summaries$plugin == "histograms",]
expect_equal(nrow(histograms), 20)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.