- moved all functions to Layer

- added Stack

git-svn-id: http://moon:8086/svn/software/trunk/projects/Rbm@577 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
2019-10-25 16:41:39 +00:00
parent 3e90330cd1
commit c68faa894e
7 changed files with 192 additions and 14 deletions
+6 -8
View File
@@ -144,22 +144,20 @@ int main()
arma::mat batch = loadTraining(project + string(".training.dat"));
size_t numTraining = batch.n_rows;
size_t numVisible = batch.n_cols;
size_t numVisibleX = 28;
size_t numVisibleY = 28;
size_t numHidden = 64;
Layer layer(project, 0, numVisible, numHidden);
Layer layer(project, 0, numVisibleX, numVisibleY, numHidden);
saveProject(project, layer, numTraining);
printf("Loaded %d training samples\n", (int)numTraining);
arma::mat w = arma::zeros(numVisible, numHidden);
arma::mat bv = arma::zeros(1, numVisible);
arma::mat bh = arma::zeros(1, numHidden);
Rbm rbm(rbmParams, numVisible, numHidden);
Rbm &rbm = layer.rbm();
rbm.train(batch, 1000, 100, &statusDisplay);
saveWeight(project + string(".weights.dat"), 28, 28, rbm.w(), rbm.bv(), rbm.bh());
arma::mat v = arma::randu(numTraining, numVisible);
layer.saveWeight();
arma::mat v = arma::randu(numTraining, numVisibleX*numVisibleY);
arma::mat h = rbm.toHiddenProbs(v);
arma::mat r = rbm.toVisibleProbs(h);
return 0;