mirror of
https://github.com/davidalbertonogueira/MLP.git
synced 2025-12-18 12:54:41 +03:00
More test changes.
This commit is contained in:
@@ -43,10 +43,12 @@ UNIT(LearnAND) {
|
|||||||
for (const auto & training_sample : training_sample_set_with_bias) {
|
for (const auto & training_sample : training_sample_set_with_bias) {
|
||||||
std::vector<double> output;
|
std::vector<double> output;
|
||||||
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
||||||
bool predicted_output = output[0] > 0.5 ? true : false;
|
for (int i = 0; i < num_outputs; i++) {
|
||||||
bool correct_output = training_sample.output_vector()[0] > 0.5 ? true : false;
|
bool predicted_output = output[i] > 0.5 ? true : false;
|
||||||
|
bool correct_output = training_sample.output_vector()[i] > 0.5 ? true : false;
|
||||||
ASSERT_TRUE(predicted_output == correct_output);
|
ASSERT_TRUE(predicted_output == correct_output);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
std::cout << "Trained with success." << std::endl;
|
std::cout << "Trained with success." << std::endl;
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
@@ -82,10 +84,12 @@ UNIT(LearnNAND) {
|
|||||||
for (const auto & training_sample : training_sample_set_with_bias) {
|
for (const auto & training_sample : training_sample_set_with_bias) {
|
||||||
std::vector<double> output;
|
std::vector<double> output;
|
||||||
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
||||||
bool predicted_output = output[0] > 0.5 ? true : false;
|
for (int i = 0; i < num_outputs; i++) {
|
||||||
bool correct_output = training_sample.output_vector()[0] > 0.5 ? true : false;
|
bool predicted_output = output[i] > 0.5 ? true : false;
|
||||||
|
bool correct_output = training_sample.output_vector()[i] > 0.5 ? true : false;
|
||||||
ASSERT_TRUE(predicted_output == correct_output);
|
ASSERT_TRUE(predicted_output == correct_output);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
std::cout << "Trained with success." << std::endl;
|
std::cout << "Trained with success." << std::endl;
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
@@ -121,10 +125,12 @@ UNIT(LearnOR) {
|
|||||||
for (const auto & training_sample : training_sample_set_with_bias) {
|
for (const auto & training_sample : training_sample_set_with_bias) {
|
||||||
std::vector<double> output;
|
std::vector<double> output;
|
||||||
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
||||||
bool predicted_output = output[0] > 0.5 ? true : false;
|
for (int i = 0; i < num_outputs; i++) {
|
||||||
bool correct_output = training_sample.output_vector()[0] > 0.5 ? true : false;
|
bool predicted_output = output[i] > 0.5 ? true : false;
|
||||||
|
bool correct_output = training_sample.output_vector()[i] > 0.5 ? true : false;
|
||||||
ASSERT_TRUE(predicted_output == correct_output);
|
ASSERT_TRUE(predicted_output == correct_output);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
std::cout << "Trained with success." << std::endl;
|
std::cout << "Trained with success." << std::endl;
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
@@ -160,10 +166,12 @@ UNIT(LearnNOR) {
|
|||||||
for (const auto & training_sample : training_sample_set_with_bias) {
|
for (const auto & training_sample : training_sample_set_with_bias) {
|
||||||
std::vector<double> output;
|
std::vector<double> output;
|
||||||
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
||||||
bool predicted_output = output[0] > 0.5 ? true : false;
|
for (int i = 0; i < num_outputs; i++) {
|
||||||
bool correct_output = training_sample.output_vector()[0] > 0.5 ? true : false;
|
bool predicted_output = output[i] > 0.5 ? true : false;
|
||||||
|
bool correct_output = training_sample.output_vector()[i] > 0.5 ? true : false;
|
||||||
ASSERT_TRUE(predicted_output == correct_output);
|
ASSERT_TRUE(predicted_output == correct_output);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
std::cout << "Trained with success." << std::endl;
|
std::cout << "Trained with success." << std::endl;
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
@@ -197,10 +205,12 @@ UNIT(LearnXOR) {
|
|||||||
for (const auto & training_sample : training_sample_set_with_bias) {
|
for (const auto & training_sample : training_sample_set_with_bias) {
|
||||||
std::vector<double> output;
|
std::vector<double> output;
|
||||||
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
||||||
bool predicted_output = output[0] > 0.5 ? true : false;
|
for (int i = 0; i < num_outputs; i++) {
|
||||||
bool correct_output = training_sample.output_vector()[0] > 0.5 ? true : false;
|
bool predicted_output = output[i] > 0.5 ? true : false;
|
||||||
|
bool correct_output = training_sample.output_vector()[i] > 0.5 ? true : false;
|
||||||
ASSERT_TRUE(predicted_output == correct_output);
|
ASSERT_TRUE(predicted_output == correct_output);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
std::cout << "Trained with success." << std::endl;
|
std::cout << "Trained with success." << std::endl;
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
@@ -232,10 +242,12 @@ UNIT(LearnNOT) {
|
|||||||
for (const auto & training_sample : training_sample_set_with_bias) {
|
for (const auto & training_sample : training_sample_set_with_bias) {
|
||||||
std::vector<double> output;
|
std::vector<double> output;
|
||||||
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
||||||
bool predicted_output = output[0] > 0.5 ? true : false;
|
for (int i = 0; i < num_outputs; i++) {
|
||||||
bool correct_output = training_sample.output_vector()[0] > 0.5 ? true : false;
|
bool predicted_output = output[i] > 0.5 ? true : false;
|
||||||
|
bool correct_output = training_sample.output_vector()[i] > 0.5 ? true : false;
|
||||||
ASSERT_TRUE(predicted_output == correct_output);
|
ASSERT_TRUE(predicted_output == correct_output);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
std::cout << "Trained with success." << std::endl;
|
std::cout << "Trained with success." << std::endl;
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
@@ -269,15 +281,16 @@ UNIT(LearnX1) {
|
|||||||
for (const auto & training_sample : training_sample_set_with_bias) {
|
for (const auto & training_sample : training_sample_set_with_bias) {
|
||||||
std::vector<double> output;
|
std::vector<double> output;
|
||||||
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
||||||
bool predicted_output = output[0] > 0.5 ? true : false;
|
for (int i = 0; i < num_outputs; i++) {
|
||||||
bool correct_output = training_sample.output_vector()[0] > 0.5 ? true : false;
|
bool predicted_output = output[i] > 0.5 ? true : false;
|
||||||
|
bool correct_output = training_sample.output_vector()[i] > 0.5 ? true : false;
|
||||||
ASSERT_TRUE(predicted_output == correct_output);
|
ASSERT_TRUE(predicted_output == correct_output);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
std::cout << "Trained with success." << std::endl;
|
std::cout << "Trained with success." << std::endl;
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
UNIT(LearnX2) {
|
UNIT(LearnX2) {
|
||||||
std::cout << "Train X2 function with mlp." << std::endl;
|
std::cout << "Train X2 function with mlp." << std::endl;
|
||||||
|
|
||||||
@@ -307,10 +320,12 @@ UNIT(LearnX2) {
|
|||||||
for (const auto & training_sample : training_sample_set_with_bias) {
|
for (const auto & training_sample : training_sample_set_with_bias) {
|
||||||
std::vector<double> output;
|
std::vector<double> output;
|
||||||
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
my_mlp.GetOutput(training_sample.input_vector(), &output);
|
||||||
bool predicted_output = output[0] > 0.5 ? true : false;
|
for (int i = 0; i < num_outputs; i++) {
|
||||||
bool correct_output = training_sample.output_vector()[0] > 0.5 ? true : false;
|
bool predicted_output = output[i] > 0.5 ? true : false;
|
||||||
|
bool correct_output = training_sample.output_vector()[i] > 0.5 ? true : false;
|
||||||
ASSERT_TRUE(predicted_output == correct_output);
|
ASSERT_TRUE(predicted_output == correct_output);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
std::cout << "Trained with success." << std::endl;
|
std::cout << "Trained with success." << std::endl;
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user