templateDiscriminant

Шаблон классификатора дискриминантного анализа

Синтаксис

t = templateDiscriminant()
t = templateDiscriminant(Name,Value)

Описание

пример

t = templateDiscriminant() возвращает шаблон ученика дискриминантного анализа, подходящий для учебных ансамблей или моделей мультикласса выходного кода с коррекцией ошибок (ECOC).

Если вы задаете шаблон по умолчанию, то программное обеспечение использует значения по умолчанию для всех входных параметров во время обучения.

Задайте t как ученика в fitcensemble или fitcecoc.

пример

t = templateDiscriminant(Name,Value) создает шаблон с дополнительными опциями, заданными одним или несколькими аргументами пары "имя-значение".

Например, можно задать дискриминантный тип или параметр регуляризации.

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

Примеры

свернуть все

Создайте шаблон дискриминантного анализа не по умолчанию для использования в fitcensemble.

Загрузите ирисовый набор данных Фишера.

load fisheriris

Создайте шаблон для псевдолинейного дискриминантного анализа.

t = templateDiscriminant('DiscrimType','pseudoLinear')
t = 
Fit template for classification Discriminant.

    DiscrimType: 'pseudoLinear'
          Gamma: []
          Delta: []
     FillCoeffs: []
     SaveMemory: []
        Version: 1
         Method: 'Discriminant'
           Type: 'classification'

Все свойства объекта шаблона пусты за исключением DiscrimType, Method и Type. Когда обучено на, программное обеспечение заполняет пустые свойства с их соответствующими значениями по умолчанию.

Задайте t как слабого ученика для ансамбля классификации.

Mdl = fitcensemble(meas,species,'Method','Subspace','Learners',t);

Отобразите в выборке (перезамена) misclassification ошибка.

L = resubLoss(Mdl)
L = 0.0400

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

свернуть все

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'DiscrimType','pseudoLinear','SaveMemory','on' задает шаблон для псевдолинейного дискриминантного анализа, который не хранит полную ковариационную матрицу.

Линейный содействующий порог, заданный как пара, разделенная запятой, состоящая из 'Delta' и неотрицательного скалярного значения. Если коэффициент Mdl имеет значение, меньшее, чем Delta, Mdl устанавливает этот коэффициент на 0, и можно устранить соответствующий предиктор из модели. Установите Delta на более высокое значение устранять больше предикторов.

Delta должен быть 0 для квадратичных дискриминантных моделей.

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

Дискриминантный тип, заданный как пара, разделенная запятой, состоящая из 'DiscrimType' и вектора символов или скаляра строки в этой таблице.

ЗначениеОписаниеОбработка ковариации предиктора
'linear'Упорядоченный линейный дискриминантный анализ (LDA)
  • Все классы имеют ту же ковариационную матрицу.

  • Σ^γ=(1γ)Σ^+γdiag(Σ^).

    Σ^ эмпирическая, объединенная ковариационная матрица, и γ является объемом регуляризации.

'diaglinear'LDAВсе классы имеют то же самое, диагональную ковариационную матрицу.
'pseudolinear'LDAВсе классы имеют ту же ковариационную матрицу. Программное обеспечение инвертирует ковариационную матрицу с помощью псевдо инверсии.
'quadratic'Квадратичный дискриминантный анализ (QDA)Ковариационные матрицы могут отличаться среди классов.
'diagquadratic'QDAКовариационные матрицы являются диагональными и могут отличаться среди классов.
'pseudoquadratic'QDAКовариационные матрицы могут отличаться среди классов. Программное обеспечение инвертирует ковариационную матрицу с помощью псевдо инверсии.

Примечание

Чтобы использовать регуляризацию, необходимо задать 'linear'. Чтобы задать объем регуляризации, используйте аргумент пары "имя-значение" Gamma.

Пример: 'DiscrimType','quadratic'

Флаг свойства Coeffs, заданный как пара, разделенная запятой, состоящая из 'FillCoeffs' и 'on' или 'off'. Установка флага к 'on' заполняет свойство Coeffs в объекте классификатора. Это может быть в вычислительном отношении интенсивно, особенно при перекрестной проверке. Значением по умолчанию является 'on', если вы не задаете пару "имя-значение" перекрестной проверки, в этом случае флаг установлен в 'off' по умолчанию.

Пример: 'FillCoeffs','off'

Объем регуляризации, чтобы применяться при оценке ковариационной матрицы предикторов, заданных как пара, разделенная запятой, состоящая из 'Gamma' и скалярного значения в интервале [0,1]. Gamma обеспечивает более прекрасное управление структурой ковариационной матрицы, чем DiscrimType.

  • Если вы задаете 0, то программное обеспечение не использует регуляризацию, чтобы настроить ковариационную матрицу. Таким образом, программное обеспечение оценивает и использует неограниченную, эмпирическую ковариационную матрицу.

    • Для линейного дискриминантного анализа, если эмпирическая ковариационная матрица сингулярна, то программное обеспечение автоматически применяет минимальную регуляризацию, требуемую инвертировать ковариационную матрицу. Можно отобразить выбранный объем регуляризации путем ввода Mdl.Gamma в командной строке.

    • Для квадратичного дискриминантного анализа, если по крайней мере один класс имеет эмпирическую ковариационную матрицу, которая сингулярна, затем программное обеспечение выдает ошибку.

  • Если вы задаете значение в интервале (0,1), то необходимо реализовать линейный дискриминантный анализ, в противном случае программное обеспечение выдает ошибку. Следовательно, программное обеспечение устанавливает DiscrimType на 'linear'.

  • Если вы задаете 1, то программное обеспечение использует максимальную регуляризацию для оценки ковариационной матрицы. Таким образом, программное обеспечение ограничивает ковариационную матрицу, чтобы быть диагональным. Также можно установить DiscrimType на 'diagLinear' или 'diagQuadratic' для диагональных ковариационных матриц.

Пример: 'Gamma',1

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

Отметьте, чтобы сохранить ковариационную матрицу, заданную как пара, разделенная запятой, состоящая из 'SaveMemory' и или 'on' или 'off'. Если вы задаете 'on', то fitcdiscr не хранит полную ковариационную матрицу, но вместо этого хранит достаточно информации, чтобы вычислить матрицу. Метод predict вычисляет полную ковариационную матрицу для прогноза и не хранит матрицу. Если вы задаете 'off', то fitcdiscr вычисляет и хранит полную ковариационную матрицу в Mdl.

Задайте SaveMemory как 'on', когда входная матрица будет содержать тысячи предикторов.

Пример: 'SaveMemory','on'

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

свернуть все

Шаблон классификации дискриминантных анализов, подходящий для учебных ансамблей или моделей мультикласса выходного кода с коррекцией ошибок (ECOC), возвращенных как объект шаблона. Передайте t fitcensemble или fitcecoc, чтобы задать, как создать классификатор дискриминантного анализа для ансамбля или модели ECOC, соответственно.

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

Смотрите также

| | |

Введенный в R2014a