Core Configuration¶
spectrans.config.core ¶
Base configuration models for spectrans components.
This module provides the foundational Pydantic models that define common configuration patterns used across spectrans components. These base classes are extended by specific component configuration models in submodules.
Classes:
| Name | Description |
|---|---|
BaseLayerConfig |
Base configuration for all neural network layers. |
UnitaryLayerConfig |
Configuration for layers that preserve energy/unitarity. |
FilterLayerConfig |
Configuration for layers using learnable spectral filters. |
AttentionLayerConfig |
Configuration for attention-based layers. |
Notes
All configuration models use Pydantic v2 BaseModel for validation and type safety. The base classes here provide common parameter patterns that are inherited by specific component configurations.
Examples:
>>> from spectrans.config.core import BaseLayerConfig
>>> class MyLayerConfig(BaseLayerConfig):
... special_param: int = 42
>>> config = MyLayerConfig(hidden_dim=768)
>>> print(config.hidden_dim)
768
Classes¶
BaseLayerConfig ¶
Bases: BaseModel
Base configuration for all neural network layers.
Attributes:
| Name | Type | Description |
|---|---|---|
hidden_dim |
int
|
Hidden dimension size, must be positive. |
dropout |
float
|
Dropout probability, must be between 0.0 and 1.0, defaults to 0.0. |
UnitaryLayerConfig ¶
Bases: BaseLayerConfig
Configuration for layers that preserve energy/unitarity.
Attributes:
| Name | Type | Description |
|---|---|---|
norm_eps |
float
|
Epsilon for numerical stability in normalization, defaults to 1e-5. |
energy_tolerance |
float
|
Tolerance for energy preservation checks, defaults to 1e-4. |
fft_norm |
FFTNorm
|
FFT normalization mode, defaults to "ortho". |
FilterLayerConfig ¶
Bases: BaseLayerConfig
Configuration for layers using learnable spectral filters.
Attributes:
| Name | Type | Description |
|---|---|---|
sequence_length |
int
|
Input sequence length, must be positive. |
learnable_filters |
bool
|
Whether filters are learnable, defaults to True. |
fft_norm |
FFTNorm
|
FFT normalization mode, defaults to "ortho". |
filter_init_std |
float
|
Standard deviation for filter initialization, defaults to 0.02. |
AttentionLayerConfig ¶
Bases: BaseLayerConfig
Configuration for attention-based layers.
Attributes:
| Name | Type | Description |
|---|---|---|
num_heads |
int
|
Number of attention heads, must be positive, defaults to 8. |
head_dim |
int | None
|
Dimension per head, defaults to None (auto-computed). |