Represents a generic autoencoder network.

autoencoder(network, loss = "mean_squared_error")

Arguments

network

Layer construct of class "ruta_network" or coercible

loss

A "ruta_loss" object or a character string specifying a loss function

Value

A construct of class "ruta_autoencoder"

Examples


# Basic autoencoder with a network of [input]-256-36-256-[input] and
# no nonlinearities
autoencoder(c(256, 36), loss = "binary_crossentropy")
#> Autoencoder learner
#> ----------------------------------------
#> Type: basic 
#> 
#> Network structure:
#>  input
#>  dense(256 units) - linear
#>  dense(36 units) - linear
#>  dense(256 units) - linear
#>  dense - linear
#> 
#> Loss: binary_crossentropy 
#> ----------------------------------------

# Customizing the activation functions in the same network
network <-
  input() +
  dense(256, "relu") +
  dense(36, "tanh") +
  dense(256, "relu") +
  output("sigmoid")

learner <- autoencoder(
  network,
  loss = "binary_crossentropy"
)