compact

Уменьшайте размер классификатора машины опорных векторов (SVM)

Описание

пример

CompactSVMModel = compact(SVMModel) возвращает компактный классификатор машины опорных векторов (SVM) (CompactSVMModel), компактная версия обученного классификатора SVM SVMModel. CompactSVMModel CompactClassificationSVM объект.

CompactSVMModel не содержит обучающие данные, тогда как SVMModel содержит обучающие данные в его X и Y свойства. Поэтому несмотря на то, что можно предсказать метки класса с помощью CompactSVMModel, вы не можете выполнить задачи, такие как перекрестная проверка с компактным классификатором SVM.

Примеры

свернуть все

Уменьшайте размер полного классификатора SVM путем удаления обучающих данных. Полные классификаторы SVM (то есть, ClassificationSVM классификаторы), содержат обучающие данные. Чтобы повысить эффективность, используйте меньший классификатор.

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

load ionosphere

Обучите классификатор SVM. Стандартизируйте данные о предикторе и задайте порядок классов.

SVMModel = fitcsvm(X,Y,'Standardize',true,...
    'ClassNames',{'b','g'})
SVMModel = 
  ClassificationSVM
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: {'b'  'g'}
           ScoreTransform: 'none'
          NumObservations: 351
                    Alpha: [90x1 double]
                     Bias: -0.1343
         KernelParameters: [1x1 struct]
                       Mu: [1x34 double]
                    Sigma: [1x34 double]
           BoxConstraints: [351x1 double]
          ConvergenceInfo: [1x1 struct]
          IsSupportVector: [351x1 logical]
                   Solver: 'SMO'


  Properties, Methods

SVMModel ClassificationSVM классификатор.

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

CompactSVMModel = compact(SVMModel)
CompactSVMModel = 
  classreg.learning.classif.CompactClassificationSVM
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: {'b'  'g'}
           ScoreTransform: 'none'
                    Alpha: [90x1 double]
                     Bias: -0.1343
         KernelParameters: [1x1 struct]
                       Mu: [1x34 double]
                    Sigma: [1x34 double]
           SupportVectors: [90x34 double]
      SupportVectorLabels: [90x1 double]


  Properties, Methods

CompactSVMModel CompactClassificationSVM классификатор.

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

whos('SVMModel','CompactSVMModel')
  Name                 Size             Bytes  Class                                                 Attributes

  CompactSVMModel      1x1              31074  classreg.learning.classif.CompactClassificationSVM              
  SVMModel             1x1             141404  ClassificationSVM                                               

Полный классификатор SVM (SVMModel) больше чем в четыре раза больше, чем компактный классификатор SVM (CompactSVMModel).

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

Чтобы далее уменьшать размер вашего компактного классификатора SVM, используйте discardSupportVectors функционируйте, чтобы отбросить векторы поддержки.

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

свернуть все

Полный, обученный классификатор SVM, заданный как ClassificationSVM модель обучена с fitcsvm.

Введенный в R2014a