Closed PatriceDargenton closed 3 years ago
Hi, thanks for raising this. While I agree that 100% is usually suspicious, I think in this case that due to the size of the Iris data set (150 total samples) then the final results depend on how the test and training sets are (randomly) assigned.
This can be demonstrated with a fixed RandomSeed when creating the data context:
RandomSeed = 0
using var context = new BrightDataContext(RandomSeed);
...
Naive bayes accuracy: 96.67%
Decision tree accuracy: 96.67%
Random forest accuracy: 96.67%
K nearest neighbours accuracy: 100.00%
Multinomial logistic regression accuracy: 90.00%
Training neural network...
Initial score: 30.00%
Epoch 50 - time: 0.00s; score: 73.33% [0.4333]!!
Epoch 100 - time: 0.00s; score: 83.33% [0.1000]!!
Epoch 150 - time: 0.00s; score: 100.00% [0.1667]!!
Epoch 200 - time: 0.00s; score: 100.00% [0.0000]!!
RandomSeed = 1
Naive bayes accuracy: 93.33%
Decision tree accuracy: 90.00%
Random forest accuracy: 93.33%
K nearest neighbours accuracy: 93.33%
Multinomial logistic regression accuracy: 90.00%
Training neural network...
Initial score: 33.33%
Epoch 50 - time: 0.00s; score: 66.67% [0.3333]!!
Epoch 100 - time: 0.00s; score: 96.67% [0.3000]!!
Epoch 150 - time: 0.00s; score: 93.33% [-0.0333]
Epoch 200 - time: 0.00s; score: 96.67% [0.0000]!!
Thank You!
Hello, I am testing the IrisClassification, and the result is perfect (100%) using this latest .Net5 version, while using the previous .Net4.6 version with exactly the same settings, I can't do better than 96.67%, which is a typical performance for this well-known test. An idea ?
``
``