ClassificationDiscriminant class

Суперклассы: CompactClassificationDiscriminant

Классификация дискриминантного анализа

Описание

A ClassificationDiscriminant объект инкапсулирует классификатор дискриминантного анализа, который является Гауссовой смешанной моделью для генерации данных. A ClassificationDiscriminant объект может предсказывать отклики для новых данных с помощью predict способ. Объект содержит данные, используемые для обучения, поэтому может вычислять предсказания реституции.

Конструкция

Создайте ClassificationDiscriminant объект при помощи fitcdiscr.

Свойства

BetweenSigma

p-by- p матрица, ковариация между классами, где p - количество предикторов.

CategoricalPredictors

Категориальные индексы предиктора, который всегда пуст ([]) .

ClassNames

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

Coeffs

k-by- k структура матриц коэффициентов, где k количество классов. Coeffs(i,j) содержит коэффициенты линейных или квадратичных контуров между классами i и j. Поля в Coeffs(i,j):

  • DiscrimType

  • Class1ClassNames(i)

  • Class2ClassNames(j)

  • Const - Скаляр

  • Linear - Вектор с p компоненты, где p количество столбцов в X

  • Quadraticp-by- p матрица, существует для квадратичных DiscrimType

Уравнение контура между классами i и классовые j является

Const + Linear * x + x' * Quadratic * x = 0,

где x является вектор-столбец длины p.

Если fitcdiscr имел FillCoeffs Пара "имя-значение" установлена на 'off' при построении классификатора Coeffs пуст ([]).

Cost

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

Изменение Cost матрица с использованием записи через точку: obj.Cost = costMatrix.

Delta

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

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

Изменение Delta использование записи через точку: obj.Delta = newDelta.

DeltaPredictor

Вектор-строка длины, равная количеству предикторов в obj. Если   DeltaPredictor(i) < Delta затем коэффициент i модели 0.

Если obj является квадратичной дискриминантной моделью, все элементы DeltaPredictor являются 0.

DiscrimType

Вектор символов, задающий тип дискриминанта. Один из:

  • 'linear'

  • 'quadratic'

  • 'diagLinear'

  • 'diagQuadratic'

  • 'pseudoLinear'

  • 'pseudoQuadratic'

Изменение DiscrimType использование записи через точку: obj.DiscrimType = newDiscrimType.

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

Gamma

Значение параметра гамма-регуляризации, скаляр от 0 на 1. Изменение Gamma использование записи через точку: obj.Gamma = newGamma.

  • Если вы задаете 1 для линейного дискриминанта дискриминант устанавливает свой тип следующим 'diagLinear'.

  • Если вы задаете значение между MinGamma и 1 для линейного дискриминанта дискриминант устанавливает свой тип следующим 'linear'.

  • Вы не можете задать значения ниже значения MinGamma свойство.

  • Для квадратичного дискриминанта можно задать любой 0 (для DiscrimType 'quadratic') или 1 (для DiscrimType 'diagQuadratic').

HyperparameterOptimizationResults

Описание оптимизации гиперпараметров перекрестной валидации, сохраненное как BayesianOptimization объект или таблица гиперпараметров и связанных значений. Непусто, когда OptimizeHyperparameters Пара "имя-значение" не пуста при создании. Значение зависит от настройки HyperparameterOptimizationOptions Пара "имя-значение" при создании:

  • 'bayesopt' (по умолчанию) - Объект класса BayesianOptimization

  • 'gridsearch' или 'randomsearch' - Таблица используемых гиперпараметров, наблюдаемых значений целевой функции (потери перекрестной валидации) и ранг наблюдений от самого низкого (лучшего) до самого высокого (худшего)

LogDetSigma

Логарифм определяющего ковариационной матрицы внутри класса. Тип LogDetSigma зависит от типа дискриминанта:

  • Скаляр для линейного дискриминантного анализа

  • Вектор длины K для квадратичного дискриминантного анализа, где K количество классов

MinGamma

Неотрицательный скаляр, минимальное значение параметра Гаммы так, что матрица корреляции является инвертируемой. Если матрица корреляции не сингулярна, MinGamma является 0.

ModelParameters

Параметры, используемые в обучающих obj.

Mu

Класс означает, задается как K-by- p матрица класса скалярных значений означает size. K количество классов и p - количество предикторов. Каждая строка Mu представляет среднее значение многомерного нормального распределения соответствующего класса. Индексы классов указаны в ClassNames атрибут.

NumObservations

Количество наблюдений в обучающих данных, числовой скаляр. NumObservations может быть меньше, чем количество строк входных данных X когда есть отсутствующие значения в X или ответ Y.

PredictorNames

Массив ячеек с именами для переменных предиктора в том порядке, в котором они появляются в обучающих данных X.

Prior

Числовой вектор априорных вероятностей для каждого класса. Порядок элементов Prior соответствует порядку классов в ClassNames.

Добавление или изменение Prior вектор с использованием записи через точку: obj.Prior = priorVector.

ResponseName

Вектор символов, описывающий переменную отклика Y.

ScoreTransform

Вектор символов, представляющий встроенную функцию преобразования или указатель на функцию для преобразования счетов. 'none' означает отсутствие преобразования; эквивалентно 'none' означает @(x)x. Список встроенных функций преобразования и синтаксис пользовательских функций преобразования см. в fitcdiscr.

Реализуйте запись через точку, чтобы добавить или изменить ScoreTransform использовать одну из следующих функций:

  • cobj. ScoreTransform =' function'

  • cobj. ScoreTransform = function

Sigma

Ковариационная матрица или матрицы внутри класса. От размерностей зависит DiscrimType:

  • 'linear' (по умолчанию) - Матрица размера p-by- p, где p количество предикторов

  • 'quadratic' - Массив размерных p-by- p-by- K, где K количество классов

  • 'diagLinear' - Вектор-строка длины p

  • 'diagQuadratic' - Массив размерных 1-by- p-by- K

  • 'pseudoLinear' - Матрица размера p-by- p

  • 'pseudoQuadratic' - Массив размерных p-by- p-by- K

W

Масштабированные weights, вектор с длиной n, количество строк в X.

X

Матрица значений предиктора. Каждый столбец X представляет один предиктор (переменную), и каждая строка представляет одно наблюдение.

Xcentered

X данные со средним классом вычитаются. Если Y(i) является классом j,

Xcentered(i,:) = X(i,:)Mu(j,:),

где Mu - свойство среднего класса.

Y

Категориальный массив, массив ячеек из символьных векторов, символьный массив, логический вектор или числовой вектор с одинаковым числом строк как X. Каждая строка Y представляет классификацию соответствующей строки X.

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

compactКомпактный классификатор дискриминантного анализа
compareHoldoutСравните точности двух классификационных моделей с помощью новых данных
crossvalПерекрестный проверенный классификатор дискриминантного анализа
cvshrinkПерекрестная валидация регуляризации линейного дискриминанта
edgeКлассификационное ребро
limeЛокальные интерпретируемые модели-агностические объяснения (LIME)
logpЛоггирование безусловной плотности вероятностей для классификатора дискриминантного анализа
lossОшибка классификации
mahalРасстояние Махаланобиса до класса означает
marginКлассификационные поля
nLinearCoeffsКоличество ненулевых линейных коэффициентов
partialDependenceВычисление частичной зависимости
plotPartialDependenceСоздайте график частичной зависимости (PDP) и отдельные графики условного ожидания (ICE)
predictПрогнозируйте метки с помощью дискриминантной модели классификации анализа
resubEdgeКлассификационное ребро путем реподституции
resubLossОшибка классификации путем реподституции
resubMarginКлассификационные погрешности путем реподституции
resubPredictПредсказание меток реституции классификационной модели дискриминантного анализа
shapleyЗначения Shapley
testckfoldСравните точности двух классификационных моделей путем повторной перекрестной валидации

Копировать семантику

Значение. Чтобы узнать, как классы значений влияют на операции копирования, см. раздел «Копирование объектов».

Примеры

свернуть все

Загрузите набор данных радужки Фишера.

load fisheriris

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

Mdl = fitcdiscr(meas,species)
Mdl = 
  ClassificationDiscriminant
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: {'setosa'  'versicolor'  'virginica'}
           ScoreTransform: 'none'
          NumObservations: 150
              DiscrimType: 'linear'
                       Mu: [3x4 double]
                   Coeffs: [3x3 struct]


  Properties, Methods

Mdl является ClassificationDiscriminant модель. Для доступа к его свойствам используйте запись через точку. Для примера отобразите средства группы для каждого предиктора.

Mdl.Mu
ans = 3×4

    5.0060    3.4280    1.4620    0.2460
    5.9360    2.7700    4.2600    1.3260
    6.5880    2.9740    5.5520    2.0260

Чтобы предсказать метки для новых наблюдений, передайте Mdl и данные предиктора в predict.

Подробнее о

расширить все

Ссылки

[1] Guo, Y., T. Hastie, and R. Tibshirani. «Упорядоченный линейный дискриминантный анализ и его применение в микромассивах». Биостатистика, том 8, № 1, стр. 86-100, 2007.

Расширенные возможности

.
Введенный в R2011b