All examplesNeural networks Install Aner
Dense dropout and exact continuation
Use explicit or recorded automatic seeds, validation and SGD or Adam checkpoints with a retained mask schedule.
// Run in a fresh directory; the continuation example creates dropout.anermodel.
// Partitioning, initialization, shuffling and dropout have separate seeds.
import aner.dataset
import aner.nn
import aner.ml
let parts = dataset.iris().partition(validation: 0.2, test: 0.2, seed: 81)
let network = nn.sequential(seed: 42)
.dense(inputs: 4, outputs: 16, initialization: "he").relu()
.dropout(probability: 0.2)
.dense(inputs: 16, outputs: 3, initialization: "xavier")
let plan = ml.classifier(network, standardize: true, optimizer: "adam")
.dropout_seed(seed: 2026)
let config = ml.training(epochs: 30, batch: 16, rate: 0.01, seed: 91)
.validation(parts.validation()).select_best(true)
let fitted = plan.fit(parts.train(), config: config)
print(fitted.summary())
// Validation and prediction use the complete network, with dropout disabled.
print(fitted.evaluate(parts.test()).summary())
// Omit dropout_seed for a fresh automatic seed. Preserve its summary/checkpoint
// to recover the exact integer seed, stream protocol and continuation position.
let automatic = ml.classifier(network, standardize: true, optimizer: "adam")
.fit(parts.train(), config: ml.training(epochs: 2, batch: 16, rate: 0.01, seed: 91))
print(automatic.summary())
// Checkpoint continuation restores the seed, sample schedule and optimizer state.
// The same pattern works with optimizer: "sgd".
let partial = plan.fit(parts.train(),
config: ml.training(epochs: 2, batch: 16, rate: 0.01, seed: 91))
partial.save("dropout.anermodel")
let restored = ml.load_classifier("dropout.anermodel")
let continued = plan.warm_start(restored).fit(parts.train(),
config: ml.training(epochs: 2, batch: 16, rate: 0.01, seed: 91))
let uninterrupted = plan.fit(parts.train(),
config: ml.training(epochs: 4, batch: 16, rate: 0.01, seed: 91))
print(continued.training_loss() == uninterrupted.training_loss())
Make it your experiment.
Use Aner 0.0.5 or newer. Save this program as examples/neural_dropout.aner inside a folder for your experiment. Open a terminal in that folder, then check and run the program.
aner check examples/neural_dropout.aner
aner run examples/neural_dropout.anerThe aner command must be on your PATH. Follow the installation guide if your terminal cannot find it.
Requires Aner 0.0.5 or newer with Dense dropout and version 7 checkpoints. Run from a fresh writable directory because dropout.anermodel is exclusively created; source checking creates no checkpoint.
aner check examples/neural_dropout.aner
aner run examples/neural_dropout.anerBundled datasets retain their own source attribution and license notices. Example outcomes are not comparative benchmarks or evidence of clinical validity.
Dataset sources & attribution