pub struct TensorBlock { /* private fields */ }
Expand description
A single block, containing both values & optionally gradients of these values w.r.t. any relevant quantity.
Implementations§
Source§impl TensorBlock
impl TensorBlock
Sourcepub fn as_ref(&self) -> TensorBlockRef<'_>
pub fn as_ref(&self) -> TensorBlockRef<'_>
Get a non mutable reference to this block
Sourcepub fn as_ref_mut(&mut self) -> TensorBlockRefMut<'_>
pub fn as_ref_mut(&mut self) -> TensorBlockRefMut<'_>
Get a non mutable reference to this block
Sourcepub fn components(&self) -> Vec<Labels>
pub fn components(&self) -> Vec<Labels>
Get the components for this block
Sourcepub fn properties(&self) -> Labels
pub fn properties(&self) -> Labels
Get the properties for this block
Sourcepub fn new(
data: impl Array,
samples: &Labels,
components: &[Labels],
properties: &Labels,
) -> Result<TensorBlock, Error>
pub fn new( data: impl Array, samples: &Labels, components: &[Labels], properties: &Labels, ) -> Result<TensorBlock, Error>
Create a new TensorBlock
containing the given data, described by the
samples
, components
, and properties
labels. The block is
initialized without any gradients.
Sourcepub fn add_gradient(
&mut self,
parameter: &str,
gradient: TensorBlock,
) -> Result<(), Error>
pub fn add_gradient( &mut self, parameter: &str, gradient: TensorBlock, ) -> Result<(), Error>
Add a gradient with respect to parameter
to this block.
The property of the gradient should match the ones of this block. The components of the gradients must contain at least the same entries as the value components, and can prepend other components.
Sourcepub fn load(path: impl AsRef<Path>) -> Result<TensorBlock, Error>
pub fn load(path: impl AsRef<Path>) -> Result<TensorBlock, Error>
Load a TensorBlock
from the file at path
This is a convenience function calling crate::io::load_block
Sourcepub fn load_buffer(buffer: &[u8]) -> Result<TensorBlock, Error>
pub fn load_buffer(buffer: &[u8]) -> Result<TensorBlock, Error>
Load a TensorBlock
from an in-memory buffer
This is a convenience function calling crate::io::load_block_buffer
Sourcepub fn save(&self, path: impl AsRef<Path>) -> Result<(), Error>
pub fn save(&self, path: impl AsRef<Path>) -> Result<(), Error>
Save the given block to the file at path
This is a convenience function calling crate::io::save_block
Sourcepub fn save_buffer(&self, buffer: &mut Vec<u8>) -> Result<(), Error>
pub fn save_buffer(&self, buffer: &mut Vec<u8>) -> Result<(), Error>
Save the given block to an in-memory buffer
This is a convenience function calling crate::io::save_block_buffer