Полные наивные классификаторы Байеса (т.е. модели ClassificationNaiveBayes) содержат данные тренировки. Для эффективности вы не можете хотеть предсказывать новые метки с помощью большого классификатора. Этот пример показывает, как уменьшать размер полного наивного классификатора Байеса.
Загрузите набор данных ionosphere.
Обучите наивный классификатор Байеса. Примите, что каждый предиктор условно, нормально распределен, учитывая свою метку. Это - хорошая практика, чтобы задать порядок меток.
Mdl =
ClassificationNaiveBayes
ResponseName: 'Y'
CategoricalPredictors: []
ClassNames: {'b' 'g'}
ScoreTransform: 'none'
NumObservations: 351
DistributionNames: {1x32 cell}
DistributionParameters: {2x32 cell}
Properties, Methods
Mdl является моделью ClassificationNaiveBayes.
Уменьшайте размер наивного классификатора Байеса.
CMdl =
classreg.learning.classif.CompactClassificationNaiveBayes
ResponseName: 'Y'
CategoricalPredictors: []
ClassNames: {'b' 'g'}
ScoreTransform: 'none'
DistributionNames: {1x32 cell}
DistributionParameters: {2x32 cell}
Properties, Methods
CMdl является моделью CompactClassificationNaiveBayes.
Отобразитесь, сколько памяти каждый классификатор использует.
Name Size Bytes Class Attributes
CMdl 1x1 15596 classreg.learning.classif.CompactClassificationNaiveBayes
Mdl 1x1 111726 ClassificationNaiveBayes
Полный наивный классификатор Байеса (Mdl) намного больше, чем компактный наивный классификатор Байеса (CMdl).
Можно удалить Mdl из MATLAB® Workspace и передать CMdl и новые значения предиктора к predict, чтобы эффективно маркировать новые наблюдения.