Module treez::autograd[][src]

Structs

Context

implementation of reverse automatic differentiation

Link
OpAdd

y = a + b; dy/da = 1; dy/db = 1;

OpCos

y = cos(x); dy/dx = -sin(x)

OpExponential

y = a^x; dy/dx = ln(a) * a^x

OpLog

y = log_base(x); dy/dx = 1/(x*ln(base))

OpMul

y = a*b; dy/da = b; dy/db = a

OpRelu

y = max(0,x); dy/dx = { 1 | x > 0, 0 | x < 0, 0 | x == 0 }

OpReluLeaky

y = max(0.01x,x); dy/dx = { 1 | x > 0, 0.01x | x <= 0 }

OpSigmoid

y = 1/(1+e^(-x)); dy/dx = y * ( 1 - y )

OpSin

y = sin(x); dy/dx = cos(x)

OpTan

y = tan(x); dy/dx = 1/(cos(x))^2

OpTanh

y = sinh(x)/cosh(x) = (1-e^(-2x))/(1+e^(-2x)); dy/dx = 1 - tanh(x)^2

Enums

OpType

Traits

Op

forward Op and gradient interface