Fix mistakes in feature selection in SPnDE

Complete the first A2DE test
Update version number
This commit is contained in:
2024-05-05 11:14:01 +02:00
parent f806015b29
commit 0ec53f405f
7 changed files with 18 additions and 15 deletions

View File

@@ -16,7 +16,7 @@ namespace bayesnet {
addNodes();
std::vector<int> attributes;
for (int i = 0; i < static_cast<int>(features.size()); ++i) {
if (std::find(parents.begin(), parents.end(), i) != parents.end()) {
if (std::find(parents.begin(), parents.end(), i) == parents.end()) {
attributes.push_back(i);
}
}
@@ -25,6 +25,7 @@ namespace bayesnet {
for (const auto& attribute : attributes) {
model.addEdge(className, features[attribute]);
for (const auto& root : parents) {
model.addEdge(features[root], features[attribute]);
}
}

View File

@@ -27,10 +27,11 @@ namespace bayesnet {
significanceModels.clear();
for (int i = 0; i < features.size() - 1; ++i) {
for (int j = i + 1; j < features.size(); ++j) {
models.push_back(std::make_unique<SPnDE>(std::vector<int>({ i, j })));
auto model = std::make_unique<SPnDE>(std::vector<int>({ i, j }));
models.push_back(std::move(model));
}
}
n_models = models.size();
n_models = static_cast<unsigned>(models.size());
significanceModels = std::vector<double>(n_models, 1.0);
}
std::vector<std::string> A2DE::graph(const std::string& title) const