diff --git a/Source/MainComponent.cpp b/Source/MainComponent.cpp
index 362465e..e504d76 100644
--- a/Source/MainComponent.cpp
+++ b/Source/MainComponent.cpp
@@ -280,6 +280,10 @@ MainComponent::MainComponent ()
weightInitLabel->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
weightInitLabel->addListener (this);
+ addAndMakeVisible (rbmTrainV2ToggleButton = new ToggleButton ("rbmTrainV2ToggleButton toggle button"));
+ rbmTrainV2ToggleButton->setButtonText (TRANS("Train Ver. 2"));
+ rbmTrainV2ToggleButton->addListener (this);
+
//[UserPreSize]
m_vNumX = 16;
@@ -340,6 +344,7 @@ MainComponent::~MainComponent()
momentumLabel = nullptr;
sparsityLearningRateLabel = nullptr;
weightInitLabel = nullptr;
+ rbmTrainV2ToggleButton = nullptr;
//[Destructor]. You can add your own custom destruction code here..
@@ -461,6 +466,7 @@ void MainComponent::resized()
momentumLabel->setBounds (208, 368, 72, 24);
sparsityLearningRateLabel->setBounds (416, 320, 72, 24);
weightInitLabel->setBounds (416, 368, 72, 24);
+ rbmTrainV2ToggleButton->setBounds (336, 200, 128, 24);
//[UserResized] Add your own custom resize handling here..
DrawTraining->setBounds (16, 16, 100, 100);
DrawReconstruction->setBounds (110+16, 16, 100, 100);
@@ -618,6 +624,11 @@ void MainComponent::buttonClicked (Button* buttonThatWasClicked)
m_pRbm->setDoSparse(buttonThatWasClicked->getToggleState());
//[/UserButtonCode_rbmDoSparseToggleButton]
}
+ else if (buttonThatWasClicked == rbmTrainV2ToggleButton)
+ {
+ //[UserButtonCode_rbmTrainV2ToggleButton] -- add your button handler code here..
+ //[/UserButtonCode_rbmTrainV2ToggleButton]
+ }
//[UserbuttonClicked_Post]
//[/UserbuttonClicked_Post]
@@ -848,8 +859,8 @@ void MainComponent::redrawReconstruction()
{
DrawHidden->setData(m_pRbm->toHidden(DrawTraining->getData()));
DrawReconstruction->setData(m_pRbm->toVisible(DrawHidden->getData()));
- double energy = m_pRbm->getEnergy(DrawTraining->getData(), DrawHidden->getData());
- cout << "Energy(" << 0 <<") = " << energy << endl;
+// double energy = m_pRbm->getEnergy(DrawTraining->getData(), DrawHidden->getData());
+// cout << "Energy(" << 0 <<") = " << energy << endl;
}
@@ -862,8 +873,14 @@ void MainComponent::redrawWeights(int index)
void MainComponent::run()
{
trainButton->setEnabled(false);
- m_pRbm->train(m_layers, numEpochslabel->getText().getIntValue());
-// m_pRbm->train2(m_layers, numEpochslabel->getText().getIntValue(), 100);
+ if (rbmTrainV2ToggleButton->getToggleState())
+ {
+ m_pRbm->train2(m_layers, numEpochslabel->getText().getIntValue(), 100);
+ }
+ else
+ {
+ m_pRbm->train(m_layers, numEpochslabel->getText().getIntValue());
+ }
trainButton->setEnabled(true);
}
@@ -1046,6 +1063,10 @@ BEGIN_JUCER_METADATA
edBkgCol="0" labelText="0.001" editableSingleClick="1" editableDoubleClick="1"
focusDiscardsChanges="0" fontname="Default font" fontsize="15"
bold="0" italic="0" justification="36"/>
+
END_JUCER_METADATA
diff --git a/Source/MainComponent.h b/Source/MainComponent.h
index 9e7e5b7..cb2dc0e 100644
--- a/Source/MainComponent.h
+++ b/Source/MainComponent.h
@@ -129,6 +129,7 @@ private:
ScopedPointer