pub struct HDCMemory {
pub patterns: HashMap<String, Hypervector>,
pub item_memory: HashMap<String, Hypervector>,
pub config: HDCConfig,
}Expand description
Basic HDC Memory for storing and retrieving patterns
Fields§
§patterns: HashMap<String, Hypervector>Stored hypervector patterns with labels
item_memory: HashMap<String, Hypervector>Item memory for atomic concepts
config: HDCConfigConfiguration parameters
Implementations§
Source§impl HDCMemory
impl HDCMemory
Sourcepub fn store(&mut self, label: String, pattern: Hypervector)
pub fn store(&mut self, label: String, pattern: Hypervector)
Store a pattern with its label
§Arguments
label- Label for the patternpattern- Hypervector pattern to store
Sourcepub fn get_patterns(&self) -> &HashMap<String, Hypervector>
pub fn get_patterns(&self) -> &HashMap<String, Hypervector>
Get all stored patterns
Sourcepub fn remove(&mut self, label: &str) -> Option<Hypervector>
pub fn remove(&mut self, label: &str) -> Option<Hypervector>
Sourcepub fn update_pattern(
&mut self,
label: String,
new_pattern: Hypervector,
learning_rate: f64,
) -> NdimageResult<()>
pub fn update_pattern( &mut self, label: String, new_pattern: Hypervector, learning_rate: f64, ) -> NdimageResult<()>
Update an existing pattern or store a new one
§Arguments
label- Pattern labelnew_pattern- New pattern to storelearning_rate- Rate for updating existing patterns
Sourcepub fn store_item(&mut self, name: String, item: Hypervector)
pub fn store_item(&mut self, name: String, item: Hypervector)
Store item in item memory
Sourcepub fn get_item(&self, name: &str) -> Option<&Hypervector>
pub fn get_item(&self, name: &str) -> Option<&Hypervector>
Get item from item memory
Trait Implementations§
Auto Trait Implementations§
impl Freeze for HDCMemory
impl RefUnwindSafe for HDCMemory
impl Send for HDCMemory
impl Sync for HDCMemory
impl Unpin for HDCMemory
impl UnsafeUnpin for HDCMemory
impl UnwindSafe for HDCMemory
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.