Personalizer → BrainState; classical heads remain available for research CV and Julia.
- Product path: Personalizer
- Python quickstart: Python SDK Quickstart
- Julia quickstart: Julia SDK Quickstart
- Feature preparation: Preprocessing Requirements
Personalizer (frozen encoder)
Wrap anyencode(X) → Z, personalize online, consume BrainState.
Personalizer(encoder=None, head="lda"|...) — same app surface. Full contract: Personalizer.
Motor imagery
Motor imagery workflows usually use CSP or bandpower features from 8–30 Hz EEG — or embeddings from a frozen trunk.- Python
- Julia
Personalizer(head="lda")). Try head="qda" when class covariances differ substantially.
P300 detection
P300 examples usually use ERP amplitude features from a post-stimulus time window.- Python
- Julia
Streaming
Streaming uses short feature chunks and aggregates chunk predictions into a trial decision. Bridge toBrainState for apps.
- Python
- Julia
predict → BrainState) over a raw streaming session. API detail: Python Streaming Inference, Streaming inference configuration.
Calibration and normalization
Estimate normalization parameters from calibration or training data only, then reuse them for test and deployment data.- Python
- Julia
Diagnostics
Run diagnostics when confidence is unexpectedly low or accuracy drops across sessions.Choosing a starting point
Full comparison: Model Specification.
Next read
Personalizer
Encoder contract and BrainState
Python SDK Quickstart
First Python workflow from install to inference
Advanced Applications
Higher-level deployment patterns
Error Handling
Production safeguards and failure modes