[−][src]Trait auto_diff::op::OpTrait
All op is OpTrait
Required methods
fn get_name(&self) -> String
fn get_input_size(&self) -> usize
fn get_output_size(&self) -> usize
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
Forward pass
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
Given the forward input value and backward output_grad, Update weight gradient. return backward input gradeint.
fn get_values(&self) -> Vec<&Tensor>
access weight values
fn set_values(&self, v: &[Tensor])
fn get_grads(&self) -> Vec<&Tensor>
access gradient values
Provided methods
Loading content...Implementors
impl OpTrait for Conv2d
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
Forward pass
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
Given the forward input value and backward output_grad, Update weight gradient. return backward input gradeint.
fn get_values(&self) -> Vec<&Tensor>
[src]
access weight values
fn set_values(&self, v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values
impl OpTrait for Linear
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
fn get_values(&self) -> Vec<&Tensor>
[src]
fn set_values(&self, v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
impl OpTrait for Add
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
fn get_values(&self) -> Vec<&Tensor>
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
fn set_values(&self, _v: &[Tensor])
[src]
impl OpTrait for Div
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
fn get_values(&self) -> Vec<&Tensor>
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
fn set_values(&self, _v: &[Tensor])
[src]
impl OpTrait for Mul
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
fn get_values(&self) -> Vec<&Tensor>
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
fn set_values(&self, _v: &[Tensor])
[src]
impl OpTrait for Sub
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
fn get_values(&self) -> Vec<&Tensor>
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
fn set_values(&self, _v: &[Tensor])
[src]
impl OpTrait for BCEWithLogitsLoss
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
The first is the prediction, the second input is the label ORDER IS IMPORTANT, SECOND ARGUMENT WON'T GET GRADEINT.
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
Given the forward input value and backward output_grad, Update weight gradient. return backward input gradeint.
fn get_values(&self) -> Vec<&Tensor>
[src]
access weight values
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values
impl OpTrait for CrossEntropyLoss
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
The first is the prediction, the second input is the label ORDER IS IMPORTANT, SECOND ARGUMENT WON'T GET GRADEINT.
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
Given the forward input value and backward output_grad, Update weight gradient. return backward input gradeint.
fn get_values(&self) -> Vec<&Tensor>
[src]
access weight values
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values
impl OpTrait for MSELoss
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
fn get_values(&self) -> Vec<&Tensor>
[src]
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
impl OpTrait for ELU
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
Forward pass
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
Given the forward input value and backward output_grad, Update weight gradient. return backward input gradeint.
fn get_values(&self) -> Vec<&Tensor>
[src]
access weight values
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values
impl OpTrait for ReLU
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
Forward pass
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
Given the forward input value and backward output_grad, Update weight gradient. return backward input gradeint.
fn get_values(&self) -> Vec<&Tensor>
[src]
access weight values
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values
impl OpTrait for Sigmoid
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
The first is the prediction, the second input is the label
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
Given the forward input value and backward output_grad, Update weight gradient. return backward input gradeint.
fn get_values(&self) -> Vec<&Tensor>
[src]
access weight values
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values
impl OpTrait for Sine
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
Forward pass
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
Given the forward input value and backward output_grad, Update weight gradient. return backward input gradeint.
fn get_values(&self) -> Vec<&Tensor>
[src]
access weight values
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values
impl OpTrait for Nop
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, _input: &[&Tensor], _output: &[&Tensor])
[src]
Forward pass
fn grad(
&self,
_input: &[&Tensor],
_output_grad: &[&Tensor],
_input_grad: &[&Tensor]
)
[src]
&self,
_input: &[&Tensor],
_output_grad: &[&Tensor],
_input_grad: &[&Tensor]
)
fn get_values(&self) -> Vec<&Tensor>
[src]
access weight values
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values
impl OpTrait for View
[src]
fn get_name(&self) -> String
[src]
fn get_input_size(&self) -> usize
[src]
fn get_output_size(&self) -> usize
[src]
fn apply(&mut self, input: &[&Tensor], output: &[&Tensor])
[src]
fn grad(
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
[src]
&self,
input: &[&Tensor],
output_grad: &[&Tensor],
input_grad: &[&Tensor]
)
fn get_values(&self) -> Vec<&Tensor>
[src]
fn set_values(&self, _v: &[Tensor])
[src]
fn get_grads(&self) -> Vec<&Tensor>
[src]
access gradient values