Полные наивные классификаторы Байеса (т.е. модели 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
, чтобы эффективно маркировать новые наблюдения.