компактный

Класс: ClassificationNaiveBayes

Компактный наивный классификатор Байеса

Синтаксис

CMdl = compact(Mdl)

Описание

пример

CMdl = compact(Mdl) возвращает компактный наивный классификатор Байеса (CMdl), который является компактной версией обученного наивного классификатора Байеса Mdl.

CMdl хранит меньше, чем Mdl, например, CMdl не хранит данные тренировки.

Входные параметры

развернуть все

Полностью обученный наивный классификатор Байеса, заданный как модель ClassificationNaiveBayes, обученная fitcnb.

Выходные аргументы

развернуть все

Компактный наивный классификатор Байеса, возвращенный как модель CompactClassificationNaiveBayes.

Предскажите метки класса с помощью CMdl точно, как вы были бы с помощью Mdl. Однако, поскольку CMdl не содержит данные тренировки, вы не можете выполнить определенные задачи, такие как перекрестная проверка.

Примеры

развернуть все

Полные наивные классификаторы Байеса (т.е. модели ClassificationNaiveBayes) содержат данные тренировки. Для эффективности вы не можете хотеть предсказывать новые метки с помощью большого классификатора. Этот пример показывает, как уменьшать размер полного наивного классификатора Байеса.

Загрузите набор данных ionosphere.

load ionosphere
X = X(:,3:end); % Remove two predictors for stability

Обучите наивный классификатор Байеса. Примите, что каждый предиктор условно, нормально распределен, учитывая свою метку. Это - хорошая практика, чтобы задать порядок меток.

Mdl = fitcnb(X,Y,'ClassNames',{'b','g'})
Mdl = 
  ClassificationNaiveBayes
              ResponseName: 'Y'
     CategoricalPredictors: []
                ClassNames: {'b'  'g'}
            ScoreTransform: 'none'
           NumObservations: 351
         DistributionNames: {1x32 cell}
    DistributionParameters: {2x32 cell}


  Properties, Methods

Mdl является моделью ClassificationNaiveBayes.

Уменьшайте размер наивного классификатора Байеса.

CMdl = compact(Mdl)
CMdl = 
  classreg.learning.classif.CompactClassificationNaiveBayes
              ResponseName: 'Y'
     CategoricalPredictors: []
                ClassNames: {'b'  'g'}
            ScoreTransform: 'none'
         DistributionNames: {1x32 cell}
    DistributionParameters: {2x32 cell}


  Properties, Methods

CMdl является моделью CompactClassificationNaiveBayes.

Отобразитесь, сколько памяти каждый классификатор использует.

whos('Mdl','CMdl')
  Name      Size             Bytes  Class                                                        Attributes

  CMdl      1x1              15596  classreg.learning.classif.CompactClassificationNaiveBayes              
  Mdl       1x1             111726  ClassificationNaiveBayes                                               

Полный наивный классификатор Байеса (Mdl) намного больше, чем компактный наивный классификатор Байеса (CMdl).

Можно удалить Mdl из MATLAB® Workspace и передать CMdl и новые значения предиктора к predict, чтобы эффективно маркировать новые наблюдения.