public class DoubleBinaryOpLambda<A,B> extends DoubleVertex implements NonProbabilistic<DoubleTensor>
Modifier and Type | Field and Description |
---|---|
protected java.util.function.Function<java.util.Map<Vertex,DualNumber>,DualNumber> |
forwardModeAutoDiffLambda |
protected Vertex<A> |
left |
protected java.util.function.BiFunction<A,B,DoubleTensor> |
op |
protected java.util.function.Function<PartialDerivatives,java.util.Map<Vertex,PartialDerivatives>> |
reverseModeAutoDiffLambda |
protected Vertex<B> |
right |
Constructor and Description |
---|
DoubleBinaryOpLambda(int[] shape,
Vertex<A> left,
Vertex<B> right,
java.util.function.BiFunction<A,B,DoubleTensor> op) |
DoubleBinaryOpLambda(int[] shape,
Vertex<A> left,
Vertex<B> right,
java.util.function.BiFunction<A,B,DoubleTensor> op,
java.util.function.Function<java.util.Map<Vertex,DualNumber>,DualNumber> forwardModeAutoDiffLambda,
java.util.function.Function<PartialDerivatives,java.util.Map<Vertex,PartialDerivatives>> reverseModeAutoDiffLambda) |
DoubleBinaryOpLambda(Vertex<A> left,
Vertex<B> right,
java.util.function.BiFunction<A,B,DoubleTensor> op) |
DoubleBinaryOpLambda(Vertex<A> left,
Vertex<B> right,
java.util.function.BiFunction<A,B,DoubleTensor> op,
java.util.function.Function<java.util.Map<Vertex,DualNumber>,DualNumber> forwardModeAutoDiffLambda,
java.util.function.Function<PartialDerivatives,java.util.Map<Vertex,PartialDerivatives>> reverseModeAutoDiffLambda) |
Modifier and Type | Method and Description |
---|---|
DoubleTensor |
calculate() |
DualNumber |
calculateDualNumber(java.util.Map<Vertex,DualNumber> dualNumbers) |
java.util.Map<Vertex,PartialDerivatives> |
reverseModeAutoDifferentiation(PartialDerivatives derivativeOfOutputsWithRespectToSelf) |
DoubleTensor |
sample(KeanuRandom random) |
abs, acos, asin, atan, atan2, ceil, concat, cos, div, div, divideBy, divideBy, equalTo, exp, floor, getValue, greaterThan, greaterThanOrEqualTo, lambda, lambda, lessThan, lessThanOrEqualTo, log, matrixInverse, matrixMultiply, minus, minus, multiply, multiply, notEqualTo, observe, observe, plus, plus, pow, pow, reshape, round, setAndCascade, setAndCascade, setValue, setValue, sigmoid, sin, slice, sum, take, tan, times, times, unaryMinus
addChild, addParent, addParents, equals, eval, getChildren, getConnectedGraph, getId, getIndentation, getLabel, getObservedValue, getParents, getRawValue, getShape, getValue, hashCode, hasValue, isObserved, isProbabilistic, labeledAs, lazyEval, observe, observeOwnValue, sample, setAndCascade, setLabel, setParents, setParents, setValue, toString, unobserve
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
contradictsObservation
getObservedValue, isObserved, observableTypeFor, observe, unobserve
getDualNumber
protected final java.util.function.BiFunction<A,B,DoubleTensor> op
protected final java.util.function.Function<java.util.Map<Vertex,DualNumber>,DualNumber> forwardModeAutoDiffLambda
protected final java.util.function.Function<PartialDerivatives,java.util.Map<Vertex,PartialDerivatives>> reverseModeAutoDiffLambda
public DoubleBinaryOpLambda(int[] shape, Vertex<A> left, Vertex<B> right, java.util.function.BiFunction<A,B,DoubleTensor> op, java.util.function.Function<java.util.Map<Vertex,DualNumber>,DualNumber> forwardModeAutoDiffLambda, java.util.function.Function<PartialDerivatives,java.util.Map<Vertex,PartialDerivatives>> reverseModeAutoDiffLambda)
public DoubleBinaryOpLambda(int[] shape, Vertex<A> left, Vertex<B> right, java.util.function.BiFunction<A,B,DoubleTensor> op)
public DoubleBinaryOpLambda(Vertex<A> left, Vertex<B> right, java.util.function.BiFunction<A,B,DoubleTensor> op, java.util.function.Function<java.util.Map<Vertex,DualNumber>,DualNumber> forwardModeAutoDiffLambda, java.util.function.Function<PartialDerivatives,java.util.Map<Vertex,PartialDerivatives>> reverseModeAutoDiffLambda)
public DoubleTensor sample(KeanuRandom random)
sample
in class Vertex<DoubleTensor>
random
- source of randomnesspublic DoubleTensor calculate()
calculate
in interface NonProbabilistic<DoubleTensor>
public DualNumber calculateDualNumber(java.util.Map<Vertex,DualNumber> dualNumbers)
calculateDualNumber
in interface Differentiable
calculateDualNumber
in class DoubleVertex
public java.util.Map<Vertex,PartialDerivatives> reverseModeAutoDifferentiation(PartialDerivatives derivativeOfOutputsWithRespectToSelf)
reverseModeAutoDifferentiation
in interface Differentiable
reverseModeAutoDifferentiation
in class DoubleVertex