Media Server supports several types of image classifier.
HPE recommends trying each type of classifier to determine which produces the best results for your purposes. When you test your classifier, ensure that the images you use for testing are different to your training images.
The default type of classifier is the Bayesian
classifier. Use a Bayesian
classifier when you have a small number of classes and many training images for each class.
The Bayesian
classifier is better than the Maxvote
classifier at distinguishing between classes that have a high degree of similarity, and requires less time to train than the CNN
classifier.
When you run classification, the Bayesian
classifier outputs a confidence score for each class. These scores can be compared across classifiers, and you can set a threshold to discard results below a specified confidence level.
This is the only type of classifier that supports prior probabilities.
Use a Maxvote
classifier when you have many classes with fewer training images per class. This type of classifier requires fewer training images and can be trained faster than either the Bayesian
or CNN
classifier.
When you run classification, the Maxvote
classifier outputs a number of votes for each class in the classifier. This means that you cannot compare scores across classifiers.
The Convolutional Neural Network (CNN
) classifier usually produces the most accurate results, but can require a significant amount of time to train.
The more time you allow Media Server to train the classifier, the greater the accuracy. Before you train a CNN
classifier, you can choose how many training iterations to run. The time required to train the classifier is proportional to the number of training iterations and the number of training images. Increasing the number of iterations always improves the training and results in better accuracy, but each additional iteration that you add has a smaller effect.
For classifiers that have four or five dissimilar classes with around 100 training images per class, approximately 500 iterations produces reasonable results. This number of iterations with this number of training images requires approximately five hours to complete. HPE recommends a larger number of iterations for classifiers that contain many similar classes. For extremely complex classifiers that have hundreds of classes, you might run 200,000 training iterations. Be aware that running this number of training iterations with large numbers of training images is likely to take weeks.
To find the optimum number of iterations, HPE recommends that you start with a small number of iterations. Double the number of iterations each time you train, until classification accuracy is acceptable.
When you run classification, the CNN
classifier outputs a confidence score for each class. These scores can be compared across classifiers, and you can set a threshold to discard results below a specified confidence level.
|