29template<
typename Real_t>
36 for(
size_t i = 0; i<
m; i++)
38 for(
size_t j=0;
j<
n;
j++)
47template <
typename Real_t>
55 for (
size_t i = 0; i < (size_t)
fVBiases.GetNrows(); i++)
57 for (
size_t j = 0;
j < (size_t)
fVBiases.GetNcols();
j++) {
84template<
typename Real_t>
92 for (
size_t i = 0; i <
m; i++) {
93 for (
size_t j = 0;
j <
n;
j++) {
98 for (
size_t i = 0; i <
m; i++) {
99 for (
size_t j = 0;
j <
n;
j++) {
100 A(i,
j) = exp(A(i,
j)) /
sum;
107template <
typename Real_t>
111 for(
size_t i=0; i< (size_t)
input.GetNrows(); i++)
113 for(
size_t j=0;
j<(size_t)
input.GetNcols();
j++ )
133template <
typename Real_t>
142 for (
size_t i = 0; i <
m; i++) {
144 for (
size_t j = 0;
j <
a;
j++) {
151template <
typename Real_t>
170template<
typename Real_t>
178 for(
size_t i= 0; i <
m; i++)
181 for(
size_t j=0;
j <
n;
j++)
183 p(i, 0) += fWeights(i,
j) *
input(
j, 0);
190template<
typename Real_t>
204 for(
size_t i= 0; i<
m; i++)
207 for(
size_t j=0;
j<
n;
j++)
213 fBiases(i, 0) += learningRate *
difference(i, 0) / fBatchSize;
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void input
static void SoftmaxAE(TMatrixT< AReal > &A)
static void EncodeInput(TMatrixT< AReal > &input, TMatrixT< AReal > &compressedInput, TMatrixT< AReal > &Weights)
static void ReconstructInput(TMatrixT< AReal > &compressedInput, TMatrixT< AReal > &reconstructedInput, TMatrixT< AReal > &fWeights)
static void UpdateParams(TMatrixT< AReal > &x, TMatrixT< AReal > &tildeX, TMatrixT< AReal > &y, TMatrixT< AReal > &z, TMatrixT< AReal > &fVBiases, TMatrixT< AReal > &fHBiases, TMatrixT< AReal > &fWeights, TMatrixT< AReal > &VBiasError, TMatrixT< AReal > &HBiasError, AReal learningRate, size_t fBatchSize)
static void UpdateParamsLogReg(TMatrixT< AReal > &input, TMatrixT< AReal > &output, TMatrixT< AReal > &difference, TMatrixT< AReal > &p, TMatrixT< AReal > &fWeights, TMatrixT< AReal > &fBiases, AReal learningRate, size_t fBatchSize)
static void CorruptInput(TMatrixT< AReal > &input, TMatrixT< AReal > &corruptedInput, AReal corruptionLevel)
static void ForwardLogReg(TMatrixT< AReal > &input, TMatrixT< AReal > &p, TMatrixT< AReal > &fWeights)
static void AddBiases(TMatrixT< AReal > &A, const TMatrixT< AReal > &biases)
create variable transformations
static uint64_t sum(uint64_t i)