Check result with KDB(k=3)
Same experiment with KDB(k=3), dataset glass, from bayesclass & bayesnet Had same result 0.841121
This commit is contained in:
parent
a0114da70c
commit
b9201cfeea
2
.vscode/launch.json
vendored
2
.vscode/launch.json
vendored
@ -8,7 +8,7 @@
|
||||
"program": "${workspaceFolder}/build/sample/main",
|
||||
"args": [
|
||||
"-f",
|
||||
"iris"
|
||||
"glass"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"preLaunchTask": "CMake: build"
|
||||
|
@ -63,7 +63,7 @@ void ArffFiles::load(const string& fileName, bool classLast)
|
||||
type = "";
|
||||
while (ss >> type_w)
|
||||
type += type_w + " ";
|
||||
attributes.emplace_back(attribute, trim(type));
|
||||
attributes.emplace_back(trim(attribute), trim(type));
|
||||
continue;
|
||||
}
|
||||
if (line[0] == '@') {
|
||||
@ -111,8 +111,8 @@ void ArffFiles::generateDataset(bool classLast)
|
||||
string ArffFiles::trim(const string& source)
|
||||
{
|
||||
string s(source);
|
||||
s.erase(0, s.find_first_not_of(" \n\r\t"));
|
||||
s.erase(s.find_last_not_of(" \n\r\t") + 1);
|
||||
s.erase(0, s.find_first_not_of(" '\n\r\t"));
|
||||
s.erase(s.find_last_not_of(" '\n\r\t") + 1);
|
||||
return s;
|
||||
}
|
||||
|
||||
|
@ -213,6 +213,12 @@ int main(int argc, char** argv)
|
||||
map<string, int> maxes;
|
||||
tie(Xd, maxes) = discretize(X, y, features);
|
||||
maxes[className] = *max_element(y.begin(), y.end()) + 1;
|
||||
cout << "Features: ";
|
||||
for (auto feature : features) {
|
||||
cout << "[" << feature << "] ";
|
||||
}
|
||||
cout << endl;
|
||||
cout << "Class name: " << className << endl;
|
||||
// Build Network
|
||||
auto network = bayesnet::Network();
|
||||
build_network(network, network_name, maxes);
|
||||
|
Loading…
Reference in New Issue
Block a user