Onboarding
Getting Started
Axon Studio is a browser-based neural-network lab for small 2D classification problems. It is built to show how a model learns, not just what it predicts at the end.
- Train directly in the browser with TensorFlow.js
- Watch the decision field update epoch by epoch
- Inspect errors, confidence, weights, and saved snapshots
First run
Quick Start
Open the playground, select a preset, press Run, then switch between boundary, errors, and gradients. Pause training and scrub the epoch timeline to inspect earlier states.
- Use Space to run or pause
- Use S to step one epoch
- Use E / G / B to switch view modes
Datasets
Choosing a Dataset
Axon ships with four built-in datasets and supports custom CSV import. Pick a dataset based on the learning behavior you want to observe.
- XOR — classic non-linear split; requires hidden layers
- Circles — fast convergence; great for boundary demos
- Spiral — stress test; reveals limits of small networks
- Blobs — linearly separable; sanity-check baseline
Step by step
Training Your First Model
Select the Circles clean preset, leave all defaults, and press Run. The decision boundary will start forming within the first few epochs. Use the epoch timeline to scrub back and see how the boundary evolved.
- Step 1 — Select a preset from the left panel
- Step 2 — Press Run or hit Space
- Step 3 — Watch the boundary form in the center canvas
- Step 4 — Pause and scrub the timeline to inspect earlier epochs
Power user
Keyboard Shortcuts
All major playground actions are accessible from the keyboard. These shortcuts work as long as focus is not inside a text input.
- Space — run / pause training
- R — reset model and data
- S — step one epoch
- E — switch to Errors view
- G — switch to Gradients view
- B — switch to Boundary view
- Ctrl / Cmd + S — save current run
Visual model output
Decision Boundary
The central square maps the x₁ / x₂ input space. Purple and pink regions show the predicted class, while the contour line shows the 0.5 decision threshold.
- Darker regions indicate stronger model confidence
- The contour line marks where the model changes class
- Train/test points show whether the boundary generalizes
Debugging mistakes
Misclassification Lens
Errors view highlights points where the predicted label does not match the true label. This helps you understand whether the model is underfitting, overfitting, or confused by noisy data.
- Orange rings mark visible errors on the canvas
- The right panel shows the total misclassified count
- Click any point to inspect its prediction path
Point-level transparency
Forward-Pass Inspector
Click any data point on the boundary canvas to inspect how that specific input travels through the network layer by layer. The right panel shows activations, output score, and confidence.
- Shows layer-by-layer activation values
- Displays predicted class and probability
- Works on both training and test points
Generalization
Train / Test Split
Axon reports train accuracy, test accuracy, and generalization gap. This stops the playground from becoming a pure memorization demo.
- Train accuracy measures fitted points
- Test accuracy uses held-out examples
- A large gap means the model may not generalize
Layer-level learning
Gradient Flow
The Gradients view and layer flow indicators show how strongly each layer is updating. Use this to detect vanishing gradients or stuck layers.
- Bright layers are updating strongly
- Dim layers may have vanishing gradients
- Switch to Gradients view with the G shortcut
Custom datasets
CSV Format
CSV mode supports two numeric input columns and one binary label column. Axon normalizes x/y values to [-1, 1] so the dataset fits the boundary canvas.
- Expected columns: x, y, label
- Labels can be 0/1 or two distinct class names
- Invalid rows are counted and excluded before training
Auto-parsing
Column Detection
When you upload a CSV, Axon scans the header row and attempts to auto-detect which columns are numeric inputs and which is the binary label. You can override the selection manually.
- Numeric columns are auto-selected as x and y inputs
- The label column is inferred from binary-valued data
- Manual override is available if detection is wrong
Error handling
Validation States
The CSV importer validates each row before training. Rows with non-numeric values, missing fields, or out-of-range labels are flagged and excluded.
- Invalid row count is shown before training starts
- At least 20 valid rows are required to proceed
- Validation errors are shown inline in the importer
Data preprocessing
Normalization
All input features are normalized to [-1, 1] based on the min/max of the uploaded dataset. This ensures the values fit the boundary canvas and the model trains stably.
- Min/max normalization applied per column
- Normalization is automatic and cannot be disabled
- Original values are preserved in the export JSON
Data quality
Invalid Rows
Rows that fail validation are silently excluded from training. The importer shows a count of invalid rows so you can assess data quality before proceeding.
- Rows with non-numeric inputs are excluded
- Rows with labels outside the detected class set are excluded
- Completely empty rows are ignored
Experiment tracking
Compare Runs
Save multiple runs from the playground and compare them on the Experiments page. Each saved run stores the architecture, dataset, metrics, and training config.
- Save a run with Ctrl/Cmd+S or the save run button
- Up to 8 runs are stored in localStorage
- Compare accuracy, loss, and architecture side by side
Portable results
Export JSON
Export a full experiment snapshot as JSON. The file includes metrics, architecture config, dataset metadata, snapshots, and saved runs.
- Includes train/test accuracy and loss
- Captures the full layer configuration
- Useful for logging results outside the browser
Visual export
Export Boundary PNG
Download a screenshot of the current decision boundary canvas as a PNG. The export captures the exact visual state including points, boundary regions, and confidence zones.
- Exports at canvas resolution
- Captures the currently active view mode
- Useful for presentations and reports
Quick share
Copy Experiment Summary
Copy a human-readable text summary of the current experiment to your clipboard. The summary includes dataset, architecture, epoch count, loss, and accuracy.
- Paste into a notebook, README, or issue
- Includes all key metrics in plain text
- Generated from the current visible state
Run history
Saved Experiments
The Experiments page shows all runs you have saved from the playground. Runs are stored in localStorage and persist across page refreshes.
- Access saved runs from the top navigation
- Delete individual runs or clear all at once
- Export all runs as a single JSON file