pub struct EmbeddingRateEncoder {
pub config: EmbeddingEncoderConfig,
pub normalized_embeddings: Vec<f32>,
}Expand description
Rate-style membrane encoder driven by a fixed embedding vector.
Accumulates normalized embedding components into per-channel membrane potentials and emits a spike when the threshold is crossed (soft reset).
§Examples
use axon_encoder::encoder::{EmbeddingEncoderConfig, EmbeddingRateEncoder, EncoderState};
let enc = EmbeddingRateEncoder::new(&[0.5, 1.0], EmbeddingEncoderConfig { v_th: 0.4 });
let state = EncoderState::new_zeros(2);
let (out, next) = enc.forward(&state);
assert!(!out.spikes.is_empty());
assert_eq!(next.membrane_potentials.len(), 2);Fields§
§config: EmbeddingEncoderConfig§normalized_embeddings: Vec<f32>Implementations§
Source§impl EmbeddingRateEncoder
impl EmbeddingRateEncoder
pub fn new(embeddings: &[f32], config: EmbeddingEncoderConfig) -> Self
pub fn forward( &self, prev_state: &EncoderState, ) -> (EncodedOutput, EncoderState)
Trait Implementations§
Source§impl Clone for EmbeddingRateEncoder
impl Clone for EmbeddingRateEncoder
Source§fn clone(&self) -> EmbeddingRateEncoder
fn clone(&self) -> EmbeddingRateEncoder
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for EmbeddingRateEncoder
impl Debug for EmbeddingRateEncoder
Source§impl PartialEq for EmbeddingRateEncoder
impl PartialEq for EmbeddingRateEncoder
impl StructuralPartialEq for EmbeddingRateEncoder
Auto Trait Implementations§
impl Freeze for EmbeddingRateEncoder
impl RefUnwindSafe for EmbeddingRateEncoder
impl Send for EmbeddingRateEncoder
impl Sync for EmbeddingRateEncoder
impl Unpin for EmbeddingRateEncoder
impl UnsafeUnpin for EmbeddingRateEncoder
impl UnwindSafe for EmbeddingRateEncoder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more