exponenta event banner

CompactClassificationGAM

Компактная обобщенная аддитивная модель (GAM) для двоичной классификации

    Описание

    CompactClassificationGAM является компактной версией ClassificationGAM объект модели (GAM для двоичной классификации). Компактная модель не включает данные, используемые для обучения классификатора. Поэтому некоторые задачи, такие как перекрестная проверка, с использованием компактной модели выполнить невозможно. Используйте компактную модель для таких задач, как прогнозирование меток новых данных.

    Создание

    Создать CompactClassificationGAM объект из полного ClassificationGAM объект модели с помощью compact.

    Свойства

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

    Свойства GAM

    Это свойство доступно только для чтения.

    Индексы терминов взаимодействия, указанные как t-на-2 матрица положительных чисел, где t - количество терминов взаимодействия в модели. Каждая строка матрицы представляет один член взаимодействия и содержит индексы столбцов данных предиктора. X для термина взаимодействия. Если модель не включает член взаимодействия, то это свойство пустое ([]).

    Программное обеспечение добавляет условия взаимодействия в модель в порядке важности на основе значений p. Это свойство используется для проверки порядка терминов взаимодействия, добавленных в модель.

    Типы данных: double

    Это свойство доступно только для чтения.

    Член перехвата (константа) модели, который является суммой членов перехвата в деревьях предикторов и деревьях взаимодействия, заданных как числовой скаляр.

    Типы данных: single | double

    Другие свойства классификации

    Это свойство доступно только для чтения.

    Индексы категориального предиктора, указанные как вектор положительных целых чисел. CategoricalPredictors содержит значения индекса, соответствующие столбцам данных предиктора, которые содержат категориальные предикторы. Если ни один из предикторов не категоричен, то это свойство пустое ([]).

    Типы данных: double

    Это свойство доступно только для чтения.

    Уникальные метки классов, используемые в обучении, указанные как категориальный или символьный массив, логический или числовой вектор или массив ячеек символьных векторов. ClassNames имеет тот же тип данных, что и метки класса Y. (Программа рассматривает строковые массивы как массивы ячеек символьных векторов.) ClassNames также определяет порядок классов.

    Типы данных: single | double | logical | char | cell | categorical

    Затраты на неправильную классификацию, указанные как числовая матрица 2 на 2.

    Cost(i,j) - стоимость классификации точки по классу j если его истинный класс i. Порядок строк и столбцов Cost соответствует порядку классов в ClassNames.

    Программное обеспечение использует Cost значение для прогнозирования, но не обучения. Значение можно изменить с помощью точечной нотации.

    Пример: Mdl.Cost = C;

    Типы данных: double

    Это свойство доступно только для чтения.

    Расширенные имена предикторов, заданные как массив ячеек символьных векторов.

    ExpandedPredictorNames является таким же, как PredictorNames для обобщенной аддитивной модели.

    Типы данных: cell

    Это свойство доступно только для чтения.

    Имена переменных предиктора, заданные как массив ячеек векторов символов. Порядок элементов PredictorNames соответствует порядку, в котором имена предикторов появляются в данных обучения.

    Типы данных: cell

    Это свойство доступно только для чтения.

    Вероятности предшествующего класса, определенные как числовой вектор с двумя элементами. Порядок элементов соответствует порядку элементов в ClassNames.

    Типы данных: double

    Это свойство доступно только для чтения.

    Имя ответной переменной, указанное как символьный вектор.

    Типы данных: char

    Преобразование баллов, указанное как символьный вектор или дескриптор функции. ScoreTransform представляет встроенную функцию преобразования или дескриптор функции для преобразования прогнозируемых оценок классификации.

    Изменение функции преобразования баллов на function, например, использовать точечную нотацию.

    • Для встроенной функции введите символьный вектор.

      Mdl.ScoreTransform = 'function';

      В этой таблице описаны доступные встроенные функции.

      СтоимостьОписание
      'doublelogit'1/( 1 + e-2x)
      'invlogit'log (x/( 1 - x))
      'ismax'Устанавливает балл для класса с наибольшим баллом в 1 и устанавливает балл для всех остальных классов в 0
      'logit'1/( 1 + e-x)
      'none' или 'identity'x (без преобразования)
      'sign'-1 для x < 0
      0 для x = 0
      1 для x > 0
      'symmetric'2x – 1
      'symmetricismax'Устанавливает балл для класса с наибольшим баллом в 1 и устанавливает балл для всех остальных классов в -1
      'symmetriclogit'2/( 1 + e-x) - 1

    • Для определяемой функции MATLAB ® или функции введите ее дескриптор.

      Mdl.ScoreTransform = @function;

      function должен принять матрицу (исходные баллы) и вернуть матрицу того же размера (преобразованные баллы).

    Это свойство определяет вычисление выходного балла для функций объекта, таких как predict, margin, и edge. Использовать 'logit' для вычисления задних вероятностей и использования 'none' для вычисления логита задних вероятностей.

    Типы данных: char | function_handle

    Функции объекта

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

    limeЛокальные интерпретируемые модели-агностические объяснения (LIME)
    partialDependenceВычислить частичную зависимость
    plotLocalEffectsПостроить график локальных эффектов терминов в обобщенной аддитивной модели (GAM)
    plotPartialDependenceСоздание графиков частичной зависимости (PDP) и индивидуального условного ожидания (ICE)
    shapleyЗначения Шапли
    predictКлассификация наблюдений с использованием обобщенной аддитивной модели (GAM)
    lossКлассификационные потери для обобщенной аддитивной модели (GAM)
    marginКлассификационные поля для обобщенной аддитивной модели (GAM)
    edgeКрай классификации для обобщенной аддитивной модели (GAM)
    compareHoldoutСравнение точности двух классификационных моделей с использованием новых данных

    Примеры

    свернуть все

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

    Загрузить ionosphere набор данных. Этот набор данных имеет 34 предиктора и 351 двоичный отклик для радарных возвращений, либо плохой ('b') или хорошо ('g').

    load ionosphere

    Обучение GAM с использованием предикторов X и метки классов Y. Рекомендуется указывать имена классов.

    Mdl = fitcgam(X,Y,'ClassNames',{'b','g'})
    Mdl = 
      ClassificationGAM
                 ResponseName: 'Y'
        CategoricalPredictors: []
                   ClassNames: {'b'  'g'}
               ScoreTransform: 'logit'
                    Intercept: 2.2715
              NumObservations: 351
    
    
      Properties, Methods
    
    

    Mdl является ClassificationGAM объект модели.

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

    CMdl = compact(Mdl)
    CMdl = 
      CompactClassificationGAM
                 ResponseName: 'Y'
        CategoricalPredictors: []
                   ClassNames: {'b'  'g'}
               ScoreTransform: 'logit'
                    Intercept: 2.2715
    
    
      Properties, Methods
    
    

    CMdl является CompactClassificationGAM объект модели.

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

    whos('Mdl','CMdl')
      Name      Size              Bytes  Class                                                 Attributes
    
      CMdl      1x1             1030010  classreg.learning.classif.CompactClassificationGAM              
      Mdl       1x1             1230986  ClassificationGAM                                               
    

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

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

    Представлен в R2021a