Files
foxhunt/crates/ml/README.md
jgrusewski 9c3d741a08 refactor: restructure repo — crates/, bin/, testing/ layout
Move 17 library crates into crates/, CLI binary into bin/fxt,
consolidate 10 test crates into testing/, split config crate
from deployment config files.

Root directory reduced from 38+ to ~17 directories.
All Cargo.toml paths and build.rs proto refs updated.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 11:56:00 +01:00

50 lines
2.0 KiB
Markdown

# ml
Machine learning models for Foxhunt.
## Models
- **DQN (Rainbow)** -- Deep Q-Network with prioritized experience replay, dueling heads, noisy nets, double Q-learning
- **PPO** -- Proximal Policy Optimization with GAE, LSTM policies, clip-higher option
- **TFT** -- Temporal Fusion Transformer for multi-horizon time series forecasting
- **Mamba2** -- State space model for efficient sequence prediction
- **Liquid Networks** -- Biologically inspired neural networks for non-stationary data
- **TLOB** -- Transformer-based Limit Order Book analysis
- **Flash Attention** -- Optimized attention implementation
## Training
Two paths per model:
1. **Standalone trainer** -- direct training loop (e.g., `DQN::train`, `PpoTrainer`)
2. **UnifiedTrainable adapter** -- wraps models for the hyperopt pipeline (e.g., `DQNTrainableAdapter`, `UnifiedTrainablePPO`)
## Inference
`InferenceAdapterBridge` connects models to the ensemble coordinator in `adaptive-strategy`. Each model exposes an `InferenceAdapter` trait for prediction.
## Backend
- **Candle v0.9.1** -- `VarMap`, `AdamW`, `loss.backward()`, `GradStore`, `opt.step(&grads)`
- **CUDA required for training** -- tested on RTX 3050 Ti 4GB, max batch size 230
- **CPU inference** supported
## Hyperopt
`ArgminOptimizer` (Particle Swarm Optimization) with per-model adapters:
DQN, PPO, ContinuousPPO, TFT, Mamba2. Uses `ParameterSpace` trait for continuous parameter mapping.
## ModelType Enum
15 variants: `CompactDQN`, `DistilledMicroNet`, `DQN`, `RainbowDQN`, `MAMBA`, `TFT`, `TGGN`, `LNN`, `TLOB`, `PPO`, `Transformer`, `Mamba`, `LiquidNet`, `TGNN`, `Ensemble`.
## Key Modules
`dqn`, `ppo`, `tft`, `mamba`, `liquid`, `tlob`, `flash_attention`, `ensemble`, `evaluation`, `inference`, `trainers`, `hyperopt`, `checkpoint`, `preprocessing`, `data_loaders`, `features`, `model_factory`, `training_pipeline`, `regime_detection`, `stress_testing`, `validation`, `bridge`, `common`, `metrics`.
## Testing
```bash
SQLX_OFFLINE=true cargo test -p ml --lib # ~2009 tests
```