Class CpuBackend
java.lang.Object
io.github.kirstenali.deepj.tensor.cpu.CpuBackend
- All Implemented Interfaces:
TensorBackend
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidadamWUpdate(Tensor w, Tensor g, Tensor mt, Tensor vt, float lr, float beta1, float beta2, float eps, float weightDecay, float bc1, float bc2) In-place AdamW update.addBroadcastCols(Tensor a, Tensor cv) addBroadcastRows(Tensor a, Tensor rv) voidaddInPlace(Tensor a, Tensor b) addRowVector(Tensor a, Tensor rv) voidaddScalarInPlace(Tensor a, float s) causalMask(int size) crossEntropyGradient(Tensor logits, int[] targets) floatcrossEntropyLoss(Tensor logits, int[] targets) divideBroadcastCols(Tensor a, Tensor cv) voiddivideInPlace(Tensor a, Tensor b) divideScalar(Tensor a, float s) voiddivideScalarInPlace(Tensor a, float s) voidexpInPlace(Tensor a) geluBackward(Tensor input, Tensor gradOutput) voidfloatlayerNormBackward(Tensor dXHat, Tensor xHat, Tensor std, int dim) LayerNorm backward through normalization (given dXHat, xHat, std).voidlogInPlace(Tensor a) multiplyBroadcastCols(Tensor a, Tensor cv) multiplyBroadcastRows(Tensor a, Tensor rv) voidmultiplyInPlace(Tensor a, Tensor b) multiplyScalar(Tensor a, float s) voidmultiplyScalarInPlace(Tensor a, float s) voidnegInPlace(Tensor a) ones(int rows, int cols) voidreluBackward(Tensor input, Tensor gradOutput) voidsampleRows(Tensor t, int n, Random rnd) voidscatterAddRows(Tensor target, int[] indices, Tensor grad) voidvoidvoidsoftmaxBackward(Tensor gradOutput, Tensor softmaxOut) softmaxRows(Tensor logits) voidsubtractBroadcastCols(Tensor a, Tensor cv) voidsubtractInPlace(Tensor a, Tensor b) floatfloatvoidzeros(int rows, int cols) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.github.kirstenali.deepj.tensor.TensorBackend
materializeTensor, releaseResources
-
Constructor Details
-
CpuBackend
public CpuBackend()
-
-
Method Details
-
zeros
-
ones
-
random
-
causalMask
-
matmul
- Specified by:
matmulin interfaceTensorBackend
-
add
- Specified by:
addin interfaceTensorBackend
-
subtract
- Specified by:
subtractin interfaceTensorBackend
-
multiply
- Specified by:
multiplyin interfaceTensorBackend
-
divide
- Specified by:
dividein interfaceTensorBackend
-
addRowVector
- Specified by:
addRowVectorin interfaceTensorBackend
-
addBroadcastRows
- Specified by:
addBroadcastRowsin interfaceTensorBackend
-
multiplyBroadcastRows
- Specified by:
multiplyBroadcastRowsin interfaceTensorBackend
-
addBroadcastCols
- Specified by:
addBroadcastColsin interfaceTensorBackend
-
subtractBroadcastCols
- Specified by:
subtractBroadcastColsin interfaceTensorBackend
-
multiplyBroadcastCols
- Specified by:
multiplyBroadcastColsin interfaceTensorBackend
-
divideBroadcastCols
- Specified by:
divideBroadcastColsin interfaceTensorBackend
-
multiplyScalar
- Specified by:
multiplyScalarin interfaceTensorBackend
-
addScalar
- Specified by:
addScalarin interfaceTensorBackend
-
divideScalar
- Specified by:
divideScalarin interfaceTensorBackend
-
sumRows
- Specified by:
sumRowsin interfaceTensorBackend
-
sumAlongRows
- Specified by:
sumAlongRowsin interfaceTensorBackend
-
sumAlongCols
- Specified by:
sumAlongColsin interfaceTensorBackend
-
meanAlongRows
- Specified by:
meanAlongRowsin interfaceTensorBackend
-
varianceAlongRows
- Specified by:
varianceAlongRowsin interfaceTensorBackend
-
maxAlongRows
- Specified by:
maxAlongRowsin interfaceTensorBackend
-
sum
- Specified by:
sumin interfaceTensorBackend
-
sumAbs
- Specified by:
sumAbsin interfaceTensorBackend
-
transpose
- Specified by:
transposein interfaceTensorBackend
-
clamp
- Specified by:
clampin interfaceTensorBackend
-
sqrt
- Specified by:
sqrtin interfaceTensorBackend
-
pow
- Specified by:
powin interfaceTensorBackend
-
neg
- Specified by:
negin interfaceTensorBackend
-
exp
- Specified by:
expin interfaceTensorBackend
-
log
- Specified by:
login interfaceTensorBackend
-
tanh
- Specified by:
tanhin interfaceTensorBackend
-
sigmoid
- Specified by:
sigmoidin interfaceTensorBackend
-
relu
- Specified by:
reluin interfaceTensorBackend
-
gelu
- Specified by:
geluin interfaceTensorBackend
-
reluBackward
- Specified by:
reluBackwardin interfaceTensorBackend
-
geluBackward
- Specified by:
geluBackwardin interfaceTensorBackend
-
softmaxRows
- Specified by:
softmaxRowsin interfaceTensorBackend
-
softmaxBackward
- Specified by:
softmaxBackwardin interfaceTensorBackend
-
crossEntropyLoss
- Specified by:
crossEntropyLossin interfaceTensorBackend
-
crossEntropyGradient
- Specified by:
crossEntropyGradientin interfaceTensorBackend
-
adamWUpdate
public void adamWUpdate(Tensor w, Tensor g, Tensor mt, Tensor vt, float lr, float beta1, float beta2, float eps, float weightDecay, float bc1, float bc2) Description copied from interface:TensorBackendIn-place AdamW update. Mutates w, mt, vt.- Specified by:
adamWUpdatein interfaceTensorBackend
-
layerNormBackward
Description copied from interface:TensorBackendLayerNorm backward through normalization (given dXHat, xHat, std).- Specified by:
layerNormBackwardin interfaceTensorBackend
-
get
-
set
-
getRow
-
setRow
-
sliceRows
-
scatterAddRows
- Specified by:
scatterAddRowsin interfaceTensorBackend
-
sampleRows
-
addInPlace
- Specified by:
addInPlacein interfaceTensorBackend
-
subtractInPlace
- Specified by:
subtractInPlacein interfaceTensorBackend
-
multiplyInPlace
- Specified by:
multiplyInPlacein interfaceTensorBackend
-
divideInPlace
- Specified by:
divideInPlacein interfaceTensorBackend
-
multiplyScalarInPlace
- Specified by:
multiplyScalarInPlacein interfaceTensorBackend
-
addScalarInPlace
- Specified by:
addScalarInPlacein interfaceTensorBackend
-
divideScalarInPlace
- Specified by:
divideScalarInPlacein interfaceTensorBackend
-
sqrtInPlace
- Specified by:
sqrtInPlacein interfaceTensorBackend
-
negInPlace
- Specified by:
negInPlacein interfaceTensorBackend
-
expInPlace
- Specified by:
expInPlacein interfaceTensorBackend
-
logInPlace
- Specified by:
logInPlacein interfaceTensorBackend
-
reluInPlace
- Specified by:
reluInPlacein interfaceTensorBackend
-
geluInPlace
- Specified by:
geluInPlacein interfaceTensorBackend
-
tanhInPlace
- Specified by:
tanhInPlacein interfaceTensorBackend
-
sigmoidInPlace
- Specified by:
sigmoidInPlacein interfaceTensorBackend
-
print
-