@Override
protected double loss(List<SampleVector> samples) {
DoubleMatrix x_samples = MathUtil.convertX2Matrix(samples);
DoubleMatrix reconstruct_x = reconstruct(x_samples);
return MatrixFunctions.powi(reconstruct_x.sub(x_samples), 2).sum();
}
@Override
protected void gradientUpdateMiniBatch(SGDTrainConfig config, DoubleMatrix x_samples, DoubleMatrix y_samples, SGDParam curr_param) {
int nbr_sample = x_samples.rows;