Struct TensorBlock

Source
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

Source

pub fn as_ref(&self) -> TensorBlockRef<'_>

Get a non mutable reference to this block

Source

pub fn as_ref_mut(&mut self) -> TensorBlockRefMut<'_>

Get a non mutable reference to this block

Source

pub fn values(&self) -> ArrayRef<'_>

Get the array for the values in this block

Source

pub fn samples(&self) -> Labels

Get the samples for this block

Source

pub fn components(&self) -> Vec<Labels>

Get the components for this block

Source

pub fn properties(&self) -> Labels

Get the properties for this block

Source

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.

Source

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.

Source

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

Source

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

Source

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

Source

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

Trait Implementations§

Source§

impl Debug for TensorBlock

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Drop for TensorBlock

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl Send for TensorBlock

Source§

impl Sync for TensorBlock

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.