Struct gad::Eval [−][src]
pub struct Eval { /* fields omitted */ }
The default algebra that only computes forward values.
Implementations
impl Eval
[src]
Trait Implementations
impl<T: Float> AfAlgebra<T> for Eval
[src]
impl<T> AnalyticAlgebra<Array<T>> for Eval where
Self: CoreAlgebra<Array<T>, Value = Array<T>>,
T: HasAfEnum<UnaryOutType = T, AbsOutType = T> + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + Zero + One + for<'a> Div<&'a Array<T>, Output = Array<T>>,
[src]
Self: CoreAlgebra<Array<T>, Value = Array<T>>,
T: HasAfEnum<UnaryOutType = T, AbsOutType = T> + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + Zero + One + for<'a> Div<&'a Array<T>, Output = Array<T>>,
fn exp(&mut self, v: &Array<T>) -> Array<T>
[src]
fn log(&mut self, v: &Array<T>) -> Array<T>
[src]
fn log1p(&mut self, v: &Array<T>) -> Array<T>
[src]
fn sin(&mut self, v: &Array<T>) -> Array<T>
[src]
fn cos(&mut self, v: &Array<T>) -> Array<T>
[src]
fn tanh(&mut self, v: &Array<T>) -> Array<T>
[src]
fn sigmoid(&mut self, v: &Array<T>) -> Array<T>
[src]
fn reciprocal(&mut self, v: &Array<T>) -> Array<T>
[src]
fn sqrt(&mut self, v: &Array<T>) -> Array<T>
[src]
fn div(&mut self, v0: &Array<T>, v1: &Array<T>) -> Result<Array<T>>
[src]
fn pow(&mut self, v0: &Array<T>, v1: &Array<T>) -> Result<Array<T>>
[src]
impl<T> AnalyticAlgebra<T> for Eval where
T: Number + Float,
[src]
T: Number + Float,
fn exp(&mut self, v: &T) -> T
[src]
fn log(&mut self, v: &T) -> T
[src]
fn log1p(&mut self, v: &T) -> T
[src]
fn sin(&mut self, v: &T) -> T
[src]
fn cos(&mut self, v: &T) -> T
[src]
fn tanh(&mut self, v: &T) -> T
[src]
fn sigmoid(&mut self, v: &T) -> T
[src]
fn reciprocal(&mut self, v: &T) -> T
[src]
fn sqrt(&mut self, v: &T) -> T
[src]
fn div(&mut self, v0: &T, v1: &T) -> Result<T>
[src]
fn pow(&mut self, v0: &T, v1: &T) -> Result<T>
[src]
impl<T> ArithAlgebra<Array<T>> for Eval where
Self: CoreAlgebra<Array<T>, Value = Array<T>>,
T: HasAfEnum + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + Zero + One,
[src]
Self: CoreAlgebra<Array<T>, Value = Array<T>>,
T: HasAfEnum + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + Zero + One,
fn zeros(&mut self, v: &Array<T>) -> Array<T>
[src]
fn ones(&mut self, v: &Array<T>) -> Array<T>
[src]
fn neg(&mut self, v: &Array<T>) -> Array<T>
[src]
fn sub(&mut self, v0: &Array<T>, v1: &Array<T>) -> Result<Array<T>>
[src]
fn mul(&mut self, v0: &Array<T>, v1: &Array<T>) -> Result<Array<T>>
[src]
impl<T: Number> ArithAlgebra<T> for Eval
[src]
fn zeros(&mut self, _v: &T) -> T
[src]
fn ones(&mut self, _v: &T) -> T
[src]
fn neg(&mut self, v: &T) -> T
[src]
fn sub(&mut self, v0: &T, v1: &T) -> Result<T>
[src]
fn mul(&mut self, v0: &T, v1: &T) -> Result<T>
[src]
impl<T> ArrayAlgebra<Array<T>> for Eval where
T: Float,
[src]
T: Float,
type Dims = Dim4
type Scalar = T
fn flat(&mut self, v: &Array<T>) -> Array<T>
[src]
fn moddims(&mut self, v: &Array<T>, dims: Dim4) -> Result<Array<T>>
[src]
fn tile_as(&mut self, v: &Array<T>, rdims: Dim4) -> Result<Array<T>>
[src]
fn sum_as(&mut self, v: &Array<T>, rdims: Dim4) -> Result<Array<T>>
[src]
fn constant_as(&mut self, v: &T, dims: Dim4) -> Array<T>
[src]
fn as_scalar(&mut self, v: &Array<T>) -> Result<T>
[src]
fn scale(&mut self, lambda: &T, v: &Array<T>) -> Array<T>
[src]
fn dot(&mut self, v1: &Array<T>, v2: &Array<T>) -> Result<T>
[src]
fn norm2(&mut self, v: &Value) -> Self::Scalar
[src]
impl<T> ArrayCompareAlgebra<Array<T>> for Eval where
Self: CoreAlgebra<Array<T>, Value = Array<T>> + AnalyticAlgebra<Array<T>>,
T: Float + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + Zero,
[src]
Self: CoreAlgebra<Array<T>, Value = Array<T>> + AnalyticAlgebra<Array<T>>,
T: Float + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + Zero,
fn max_as(&mut self, v: &Array<T>, rdims: Dim4) -> Result<Array<T>>
[src]
fn argmax_as(&mut self, v: &Array<T>, rdims: Dim4) -> Result<Array<T>>
[src]
fn softmax_as(&mut self, v: &Array<T>, rdims: Dim4) -> Result<Array<T>>
[src]
impl Clone for Eval
[src]
impl<T> CompareAlgebra<Array<T>> for Eval where
Self: CoreAlgebra<Array<T>, Value = Array<T>>,
T: HasAfEnum + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + Zero,
[src]
Self: CoreAlgebra<Array<T>, Value = Array<T>>,
T: HasAfEnum + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + Zero,
fn min(&mut self, v0: &Array<T>, v1: &Array<T>) -> Result<Array<T>>
[src]
fn max(&mut self, v0: &Array<T>, v1: &Array<T>) -> Result<Array<T>>
[src]
fn select_argmax(
&mut self,
v0: &Array<T>,
v1: &Array<T>,
r0: Option<&Array<T>>,
r1: Option<&Array<T>>
) -> Result<Array<T>>
[src]
&mut self,
v0: &Array<T>,
v1: &Array<T>,
r0: Option<&Array<T>>,
r1: Option<&Array<T>>
) -> Result<Array<T>>
fn abs(&mut self, v: &Value) -> Value where
Self: ArithAlgebra<Value>,
[src]
Self: ArithAlgebra<Value>,
fn sign(&mut self, v: &Value) -> Value where
Self: ArithAlgebra<Value>,
[src]
Self: ArithAlgebra<Value>,
fn relu(&mut self, v: &Value) -> Value where
Self: ArithAlgebra<Value>,
[src]
Self: ArithAlgebra<Value>,
impl<T: Number + PartialOrd> CompareAlgebra<T> for Eval
[src]
fn min(&mut self, v0: &T, v1: &T) -> Result<T>
[src]
fn max(&mut self, v0: &T, v1: &T) -> Result<T>
[src]
fn select_argmax(
&mut self,
v0: &T,
v1: &T,
r0: Option<&T>,
r1: Option<&T>
) -> Result<T>
[src]
&mut self,
v0: &T,
v1: &T,
r0: Option<&T>,
r1: Option<&T>
) -> Result<T>
fn abs(&mut self, v: &Value) -> Value where
Self: ArithAlgebra<Value>,
[src]
Self: ArithAlgebra<Value>,
fn sign(&mut self, v: &Value) -> Value where
Self: ArithAlgebra<Value>,
[src]
Self: ArithAlgebra<Value>,
fn relu(&mut self, v: &Value) -> Value where
Self: ArithAlgebra<Value>,
[src]
Self: ArithAlgebra<Value>,
impl<T, C> ConstArithAlgebra<Array<T>, C> for Eval where
Self: CoreAlgebra<Array<T>, Value = Array<T>>,
T: HasAfEnum + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + From<C>,
[src]
Self: CoreAlgebra<Array<T>, Value = Array<T>>,
T: HasAfEnum + ImplicitPromote<T, Output = T> + ConstGenerator<OutType = T> + From<C>,
fn setc(&mut self, v: &Array<T>, c: C) -> Array<T>
[src]
fn addc(&mut self, v: &Array<T>, c: C) -> Array<T>
[src]
fn mulc(&mut self, v: &Array<T>, c: C) -> Array<T>
[src]
fn powc(&mut self, v: &Array<T>, c: C) -> Array<T>
[src]
impl<T, C> ConstArithAlgebra<T, C> for Eval where
T: Number + From<C> + Pow<C, Output = T>,
[src]
T: Number + From<C> + Pow<C, Output = T>,
fn setc(&mut self, _v: &T, c: C) -> T
[src]
fn addc(&mut self, v: &T, c: C) -> T
[src]
fn mulc(&mut self, v: &T, c: C) -> T
[src]
fn powc(&mut self, v: &T, c: C) -> T
[src]
impl<T> CoreAlgebra<Array<T>> for Eval where
T: HasAfEnum + ImplicitPromote<T, Output = T>,
[src]
T: HasAfEnum + ImplicitPromote<T, Output = T>,
type Value = Array<T>
Tracked values of underlying type Data.
fn variable(&mut self, array: Array<T>) -> Array<T>
[src]
fn constant(&mut self, array: Array<T>) -> Array<T>
[src]
fn add(&mut self, v0: &Array<T>, v1: &Array<T>) -> Result<Array<T>>
[src]
fn add_all(&mut self, values: &[&Self::Value]) -> Result<Self::Value> where
Self::Value: Clone,
[src]
Self::Value: Clone,
impl<T: Number> CoreAlgebra<T> for Eval
[src]
type Value = T
Tracked values of underlying type Data.
fn variable(&mut self, data: T) -> T
[src]
fn constant(&mut self, data: T) -> T
[src]
fn add(&mut self, v0: &T, v1: &T) -> Result<T>
[src]
fn add_all(&mut self, values: &[&Self::Value]) -> Result<Self::Value> where
Self::Value: Clone,
[src]
Self::Value: Clone,
impl Default for Eval
[src]
impl FullAlgebra for Eval
[src]
type GradientReader = EmptyGradientMap
impl HasGradientReader for Eval
[src]
type GradientReader = EmptyGradientMap
impl<T> MatrixAlgebra<Array<T>> for Eval where
T: Float,
[src]
T: Float,
Auto Trait Implementations
impl RefUnwindSafe for Eval
impl Send for Eval
impl Sync for Eval
impl Unpin for Eval
impl UnwindSafe for Eval
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<D, A> LinkedAlgebra<Value<D>, D> for A where
A: CoreAlgebra<D, Value = D>,
[src]
A: CoreAlgebra<D, Value = D>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,