circuits-learn
Safe HaskellNone
LanguageGHC2024

Circuit.Learn.Fit

Description

Toy 2-layer neural network fit.

A small regression example: 1→2→1 network with tanh activation, trained by Adam-style gradient descent to approximate y = 2*x.

The oracle in circuits-learn-axioma asserts that loss decreases over training: loss(weights_0) > loss(weights_N).

Synopsis

Network

forward :: [Double] -> Double -> Double Source #

Forward pass: 1 → 2 → 1.

loss :: [Double] -> [(Double, Double)] -> Double Source #

Mean squared error loss.

Training

fit :: Int -> [Double] -> [(Double, Double)] -> ([Double], Double, Double) Source #

Run N steps of Adam, returning trained params and initial/final loss.

Dev dataset

toyData :: [(Double, Double)] Source #

Toy dataset: y ≈ 2*x with slight noise on the last point.