Выберите Classifier Options

Выберите Classifier Type

Можно использовать Classification Learner, чтобы автоматически обучить выбор различных моделей классификации на данных. Используйте автоматизированное обучение быстро попробовать выбор типов модели, затем исследуйте многообещающие модели в интерактивном режиме. Чтобы начать, попробуйте эти опции сначала:

Кнопки классификатора ЗапускаОписание
All Quick-To-TrainПопробуйте это сначала. Приложение обучит все типы модели, доступные для вашего набора данных, которые обычно быстры, чтобы соответствовать.
All LinearПопробуйте это, если вы ожидаете линейные контуры между классами в ваших данных. Эта опция соответствует только Линейному SVM и Линейному Дискриминанту.
AllИспользуйте это, чтобы обучить все доступные nonoptimizable типы модели. Обучает каждый тип независимо от любых предшествующих обученных моделей. Может быть длительным.

Смотрите автоматизированное обучение классификатора.

Если вы хотите исследовать классификаторы по одному, или вы уже знаете, какой тип классификатора вы хотите, можно выбрать отдельные модели или обучить группу того же типа. Чтобы видеть все доступные опции классификатора, на вкладке Classification Learner, кликают по стрелке в разделе Model Type, чтобы расширить список классификаторов. nonoptimizable опции модели в галерее Model Type являются предварительно установленными начальными точками с различными настройками, подходящими для области значений различных проблем классификации. Чтобы использовать optimizable опции модели и гиперпараметры модели мелодии автоматически, смотрите Оптимизацию Гиперпараметра в Приложении Classification Learner.

Для справки, выбирая лучший тип классификатора для вашей проблемы, см., что таблица показывает типичные характеристики различных алгоритмов контролируемого обучения. Используйте таблицу в качестве руководства для вашего итогового выбора алгоритмов. Выберите компромисс, который вы хотите в скорости, гибкости и interpretability. Лучший тип классификатора зависит от ваших данных.

Совет

Чтобы постараться не сверхсоответствовать, ищите модель более низкой гибкости, которая обеспечивает достаточную точность. Например, ищите простые модели, такие как деревья решений и дискриминанты, которые быстры и легки интерпретировать. Если модели не являются достаточно точным предсказанием ответа, выбирают другие классификаторы с более высокой гибкостью, такие как ансамбли. Чтобы управлять гибкостью, смотрите детали для каждого типа классификатора.

Характеристики типов классификатора

Чтобы считать описание каждого классификатора в Classification Learner, переключитесь на представление деталей.

Совет

После того, как вы выберете тип классификатора (например, деревья решений), попробуйте обучение с помощью каждого из классификаторов. nonoptimizable опции в галерее Model Type являются начальными точками с различными настройками. Судите их всех, чтобы видеть, какая опция производит лучшую модель с вашими данными.

Для инструкций по рабочему процессу смотрите, Обучают Модели Классификации в Приложении Classification Learner.

Категориальная поддержка предиктора

В Classification Learner галерея Model Type показывает как доступную типы классификатора, которые поддерживают ваши выбранные данные.

КлассификаторВсе числовые предикторыВсе категориальные предикторыНекоторые категориальные, некоторые числовые
Деревья решенийДаДаДа
Дискриминантный анализДаНетНет
Логистическая регрессияДаДаДа
Наивный БайесДаДаДа
SVMДаДаДа
NearestNeighborЕвклидово расстояние толькоРасстояние Хемминга толькоНет
Приближение ядраДаДаДа
АнсамблиДаДа, кроме дискриминанта подпространстваДа, кроме любого Подпространства
Нейронные сетиДаДаДа

Деревья решений

Деревья решений легко интерпретировать, быстро для подбора кривой и предсказания, и низко на использовании памяти, но у них может быть низкая прогнозирующая точность. Попытайтесь вырастить более простые деревья, чтобы предотвратить сверхподбор кривой. Управляйте глубиной с установкой Maximum number of splits.

Совет

Гибкость модели увеличивается с установкой Maximum number of splits.

Тип классификатораInterpretabilityГибкость модели
Крупное дерево
ЛегкийНизко
Немного листов, чтобы сделать крупные различия между классами (максимальное количество разделений равняется 4).
Среднее дерево
ЛегкийСредняя
Среднее количество уезжает в более прекрасные различия между классами (максимальное количество разделений равняется 20).
Прекрасное дерево
ЛегкийВысоко
Много листов, чтобы сделать много тонких различий между классами (максимальное количество разделений равняется 100).

Совет

В Model Type галерея нажимают All Trees, чтобы попробовать каждую из nonoptimizable опций дерева решений. Обучите их всех видеть, какие настройки производят лучшую модель с вашими данными. Выберите лучшую модель в панели Models. Чтобы попытаться улучшить вашу модель, попробуйте выбор признаков, и затем попытайтесь изменить некоторые расширенные настройки.

Вы обучаете деревья классификации предсказывать ответы на данные. Чтобы предсказать ответ, следуйте за решениями в дереве от корня (начало) узел вниз к вершине. Вершина содержит ответ. Деревья Statistics and Machine Learning Toolbox™ являются двоичным файлом. Каждый шаг в предсказании включает проверку значения одного предиктора (переменная). Например, вот простое дерево классификации:

Это дерево предсказывает классификации на основе двух предикторов, x1 и x2. Чтобы предсказать, запустите в главном узле. При каждом решении проверяйте значения предикторов, чтобы решить который ветвь следовать. Когда ветви достигают вершины, данные классифицируются любой как тип 0 или 1.

Можно визуализировать модель дерева принятия решения путем экспорта модели из приложения и затем ввода:

view(trainedModel.ClassificationTree,'Mode','graph') 
Рисунок показывает пример прекрасное дерево, обученное с fisheriris данные.

Усовершенствованные древовидные опции

Деревья классификации в Classification Learner используют fitctree функция. Можно установить эти опции:

  • Maximum number of splits

    Задайте максимальное количество разделений или точек разветвления, чтобы управлять глубиной вашего дерева. Когда вы выращиваете дерево решений, рассматриваете его простоту и предсказательную силу. Чтобы изменить количество разделений, нажмите кнопки или введите положительное целочисленное значение в поле Maximum number of splits .

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

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

  • Split criterion

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

    Разделите опциями критерия является Gini's diversity index, Twoing rule, или Maximum deviance reduction (также известный как перекрестную энтропию).

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

    Для получения дополнительной информации этих критериев разделения, смотрите ClassificationTree Больше о.

  • Surrogate decision splits — Только для недостающих данных.

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

    Когда вы устанавливаете Surrogate decision splits на On, дерево классификации находит самое большее 10 суррогатных разделений в каждом узле ветви. Чтобы изменить номер, нажмите кнопки или введите положительное целочисленное значение в поле Maximum surrogates per node.

    Когда вы устанавливаете Surrogate decision splits на Find All, дерево классификации находит все суррогатные разделения в каждом узле ветви. Find All установка может использовать продолжительное время и память.

В качестве альтернативы можно позволить приложению выбрать некоторые из этих опций модели автоматически при помощи гипероптимизации параметров управления. Смотрите Гипероптимизацию параметров управления в Приложении Classification Learner.

Дискриминантный анализ

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

Дискриминантный анализ принимает, что различные классы генерируют данные на основе различных Распределений Гаусса. Чтобы обучить классификатор, подходящая функция оценивает параметры Распределения Гаусса для каждого класса.

Тип классификатораInterpretabilityГибкость модели
Линейный дискриминант
ЛегкийНизко
Создает линейные контуры между классами.
Квадратичный дискриминант
ЛегкийНизко
Создает нелинейные контуры между классами (эллипс, парабола или гипербола).

Усовершенствованные дискриминантные опции

Дискриминантный анализ в Classification Learner использует fitcdiscr функция. И для линейных и для квадратичных дискриминантов, можно изменить опцию Covariance structure. Если у вас есть предикторы с нулевым отклонением или если какая-либо из ковариационных матриц ваших предикторов сингулярна, учебный может привести использование к сбою значения по умолчанию, Full структура ковариации. Если обучение перестало работать, выберите Diagonal структура ковариации вместо этого.

В качестве альтернативы можно позволить приложению выбрать некоторые из этих опций модели автоматически при помощи гипероптимизации параметров управления. Смотрите Гипероптимизацию параметров управления в Приложении Classification Learner.

Логистическая регрессия

Если у вас есть 2 класса, логистическая регрессия является популярным простым алгоритмом классификации, чтобы попробовать, потому что легко интерпретировать. Классификатор моделирует вероятности класса в зависимости от линейной комбинации предикторов.

Тип классификатораInterpretabilityГибкость модели
Логистическая регрессия
ЛегкийНизко
Вы не можете изменить параметры в гибкость модели управления.

Логистическая регрессия в Classification Learner использует fitglm функция. Вы не можете установить опции для этого классификатора в приложении.

Наивные классификаторы Байеса

Наивные классификаторы Байеса легко интерпретировать и полезный для классификации мультиклассов. Наивный алгоритм Бейеса усиливает теорему Бейеса и делает предположение, что предикторы условно независимы, учитывая класс. Используйте эти классификаторы, если это предположение независимости допустимо для предикторов в ваших данных. Однако алгоритм все еще, кажется, работает хорошо, когда предположение независимости не допустимо.

Для наивных классификаторов Байеса ядра можно управлять ядром более сглаженный тип с установкой Kernel Type и управлять ядром, сглаживающим поддержку плотности с установкой Support.

Тип классификатораInterpretabilityГибкость модели
Гауссов наивный классификатор Бейеса
ЛегкийНизко
Вы не можете изменить параметры в гибкость модели управления.
Ядерный наивный Бейес
ЛегкийСредняя
Можно изменить настройки для Kernel Type и Support, чтобы управлять как распределения предиктора моделей классификатора.

Наивный Байесов в Classification Learner использует fitcnb функция.

Усовершенствованные наивные байесовы опции

Для наивных классификаторов Байеса ядра можно установить эти опции:

  • Kernel Type — Задайте ядро более сглаженный тип. Попытайтесь установить каждую из этих опций видеть, улучшают ли они модель с вашими данными.

    Опциями типа ядра является Gaussianполе, Epanechnikov, или Triangle.

  • Поддержка Задайте ядро, сглаживающее поддержку плотности. Попытайтесь установить каждую из этих опций видеть, улучшают ли они модель с вашими данными.

    Вариантами поддержки является Unbounded (все вещественные значения) или Positive (все положительные вещественные значения).

В качестве альтернативы можно позволить приложению выбрать некоторые из этих опций модели автоматически при помощи гипероптимизации параметров управления. Смотрите Гипероптимизацию параметров управления в Приложении Classification Learner.

Для следующих моделей обучения шагов смотрите, Обучают Модели Классификации в Приложении Classification Learner.

Машины опорных векторов

В Classification Learner можно обучить SVMs, когда данные имеют два или больше класса.

Тип классификатораInterpretabilityГибкость модели
Линейный SVM
ЛегкийНизко
Делает простое линейное разделение между классами.
Квадратичный SVM
ТрудноСредняя
Кубический SVM
ТрудноСредняя
Прекрасный гауссов SVM
ТрудноВысоко — уменьшается с установкой шкалы ядра.
Делает точно подробные различия между классами, с набором шкалы ядра к sqrt(P)/4.
Средний гауссов SVM
ТрудноСредняя
Средние различия, с ядром масштабируют набор к sqrt(P).
Крупный гауссов SVM
ТрудноНизко
Делает крупные различия между классами, с набором шкалы ядра к sqrt(P)*4, где P является количеством предикторов.

Совет

Попробуйте обучение каждая из nonoptimizable опций машины опорных векторов в галерее Model Type. Обучите их всех видеть, какие настройки производят лучшую модель с вашими данными. Выберите лучшую модель в панели Models. Чтобы попытаться улучшить вашу модель, попробуйте выбор признаков, и затем попытайтесь изменить некоторые расширенные настройки.

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

support vectors является точками данных, которые являются самыми близкими к отделяющейся гиперплоскости; эти точки находятся на контуре плиты. Следующая фигура иллюстрирует эти определения, с + указание на точки данных типа 1, и – указание на точки данных типа-1.

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

Для примера смотрите, Обучают Машины опорных векторов Используя Приложение Classification Learner.

Усовершенствованные опции SVM

Если у вас есть точно два класса, Classification Learner использует fitcsvm функция, чтобы обучить классификатор. Если у вас есть больше чем два класса, приложение использует fitcecoc функция, чтобы уменьшать многоклассовую задачу классификации до набора бинарных подпроблем классификации, с одним учеником SVM для каждой подпроблемы. Чтобы исследовать код на двоичный файл и типы классификатора мультикласса, можно сгенерировать код от обученных классификаторов в приложении.

Можно установить эти опции в приложении:

  • Kernel function

    Задайте функцию Ядра, чтобы вычислить классификатор.

    • Линейное ядро, самое легкое интерпретировать

    • Ядро гауссовой или Радиальной основной функции (RBF)

    • Квадратичный

    • Кубический

  • Box constraint level

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

    Чтобы настроить ваш классификатор SVM, попытайтесь увеличить ограничительный уровень поля. Нажмите кнопки или введите значение положительной скалярной величины в поле Box constraint level. Увеличение ограничительного уровня поля может сократить число векторов поддержки, но также и может увеличить учебное время.

    Параметр ограничения Поля является мягко-граничным штрафом, известным C в основных уравнениях, и является трудным ограничением “поля” в двойных уравнениях.

  • Kernel scale mode

    Задайте ручное ядро, масштабирующееся при желании.

    Когда вы устанавливаете Kernel scale mode на Auto, затем программное обеспечение использует эвристическую процедуру, чтобы выбрать значение шкалы. Эвристическая процедура использует подвыборку. Поэтому, чтобы воспроизвести результаты, установите использование seed случайных чисел rng перед обучением классификатор.

    Когда вы устанавливаете Kernel scale mode на Manual, можно задать значение. Нажмите кнопки или введите значение положительной скалярной величины в поле Manual kernel scale. Программное обеспечение делит все элементы матрицы предиктора значением шкалы ядра. Затем программное обеспечение применяет соответствующую норму ядра, чтобы вычислить матрицу Грамма.

    Совет

    Гибкость модели уменьшается с установкой шкалы ядра.

  • Multiclass method

    Только для данных с 3 или больше классами. Этот метод уменьшает многоклассовую задачу классификации до набора бинарных подпроблем классификации с одним учеником SVM для каждой подпроблемы. One-vs-One обучает одного ученика каждой паре классов. Это учится отличать один класс от другого. One-vs-All обучает одного ученика каждому классу. Это учится отличать один класс от всех других.

  • Standardize data

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

В качестве альтернативы можно позволить приложению выбрать некоторые из этих опций модели автоматически при помощи гипероптимизации параметров управления. Смотрите Гипероптимизацию параметров управления в Приложении Classification Learner.

Самые близкие соседние классификаторы

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

Совет

Гибкость модели уменьшается с установкой Number of neighbors.

Тип классификатораInterpretabilityГибкость модели
Прекрасный KNN
Трудно

Точно подробные различия между классами. Номер соседей определяется к 1.

Средний KNN
Трудно

Средние различия между классами. Номер соседей определяется к 10.

Крупный KNN
Трудно

Крупные различия между классами. Номер соседей определяется к 100.

Косинус KNN
ТрудноСредние различия между классами, с помощью метрики расстояния Косинуса. Номер соседей определяется к 10.
Кубический KNN
ТрудноСредние различия между классами, с помощью кубической метрики расстояния. Номер соседей определяется к 10.
Взвешенный KNN
ТрудноСредние различия между классами, с помощью веса расстояния. Номер соседей определяется к 10.

Совет

Попробуйте обучение каждая из nonoptimizable самых близких соседних опций в галерее Model Type. Обучите их всех видеть, какие настройки производят лучшую модель с вашими данными. Выберите лучшую модель в панели Models. Чтобы попытаться улучшить вашу модель, попробуйте выбор признаков, и затем (опционально) попытайтесь изменить некоторые расширенные настройки.

Что такое k - Самая близкая Соседняя классификация? Категоризация точек запроса на основе их расстояния до точек (или соседи) в обучающем наборе данных может быть простым все же эффективным способом классифицировать новые точки. Можно использовать различные метрики, чтобы определить расстояние. Учитывая набор X точек n и функции расстояния, k - самый близкий сосед (k NN) поиск позволяет вам найти k самыми близкими точками в X к точке запроса или набору точек. k основанные на NN алгоритмы широко используется в качестве правил машинного обучения сравнительного теста.

Для примера смотрите, Обучают Самые близкие Соседние Классификаторы Используя Приложение Classification Learner.

Усовершенствованные опции KNN

Самые близкие Соседние классификаторы в Classification Learner используют fitcknn функция. Можно установить эти опции:

  • Number of neighbors

    Задайте количество самых близких соседей, чтобы найти для классификации каждой точки при предсказании. Задайте штраф (небольшое число) или крупный классификатор (высокий номер) путем изменения количества соседей. Например, прекрасный KNN использует одного соседа, и крупный KNN использует 100. Многие соседи могут быть трудоемкими, чтобы соответствовать.

  • Distance metric

    Можно использовать различные метрики, чтобы определить расстояние до точек. Для определений смотрите класс ClassificationKNN.

  • Distance weight

    Задайте функцию взвешивания расстояния. Можно выбрать Equal (никакие веса), Inverse (вес 1/дистанцировать), или Squared Inverse (вес 1/дистанцировать2).

  • Standardize data

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

В качестве альтернативы можно позволить приложению выбрать некоторые из этих опций модели автоматически при помощи оптимизации гиперпараметра. Смотрите Оптимизацию Гиперпараметра в Приложении Classification Learner.

Классификаторы приближения ядра

В Classification Learner можно использовать классификаторы приближения ядра, чтобы выполнить нелинейную классификацию данных со многими наблюдениями. Для больших данных в оперативной памяти классификаторы ядра имеют тенденцию обучать и предсказывать быстрее, чем классификаторы SVM с Гауссовыми ядрами.

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

Совет

В галерее Model Type нажмите All Kernels , чтобы попробовать каждую из предварительно установленных опций приближения ядра и видеть, какие настройки производят лучшую модель с вашими данными. Выберите лучшую модель в панели Models и попытайтесь улучшить ту модель при помощи выбора признаков и изменяющий некоторые расширенные настройки.

Тип классификатораInterpretabilityГибкость модели
Ядро SVM
ТрудноНоситель — увеличения как установка Kernel scale уменьшаются
Ядро логистической регрессии
ТрудноНоситель — увеличения как установка Kernel scale уменьшаются

Для примера смотрите, Обучают Классификаторы Приближения Ядра Используя Приложение Classification Learner.

Усовершенствованные опции ядра

Если у вас есть точно два класса, Classification Learner использует fitckernel функция, чтобы обучить классификаторы ядра. Если у вас есть больше чем два класса, приложение использует fitcecoc функция, чтобы уменьшать многоклассовую задачу классификации до набора бинарных подпроблем классификации, с одним учеником ядра для каждой подпроблемы.

Можно установить эти опции:

  • Learner — Задайте линейный тип модели классификации, чтобы поместиться в расширенный пробел, любой SVM или Logistic Regression. Классификаторы ядра SVM используют функцию потерь стержня во время подбора кривой модели, тогда как классификаторы ядра логистической регрессии используют отклонение (логистическая) потеря.

  • Number of expansion dimensions — Задайте количество размерностей на расширенном пробеле.

    • Когда вы устанавливаете эту опцию на Auto, программное обеспечение определяет номер размерностей к 2.^ceil(min(log2(p)+5,15)), где p количество предикторов.

    • Когда вы устанавливаете эту опцию на Manual, можно задать значение путем нажатия кнопок или ввода значения положительной скалярной величины в поле.

  • Regularization strength (Lambda) — Задайте гребень (L2) термин штрафа регуляризации. Когда вы используете ученика SVM, ограничение поля C и сила термина регуляризации, λ связан C = 1 / (λ n), где n является количеством наблюдений.

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

    • Когда вы устанавливаете эту опцию на Manual, можно задать значение путем нажатия кнопок или ввода значения положительной скалярной величины в поле.

  • Kernel scale — Задайте масштабирование ядра. Программное обеспечение использует это значение, чтобы получить случайный базис для случайного расширения функции. Для получения дополнительной информации смотрите Случайное Расширение Функции.

    • Когда вы устанавливаете эту опцию на Auto, программное обеспечение использует эвристическую процедуру, чтобы выбрать значение шкалы. Эвристическая процедура использует подвыборку. Поэтому, чтобы воспроизвести результаты, установите использование seed случайных чисел rng перед обучением классификатор.

    • Когда вы устанавливаете эту опцию на Manual, можно задать значение путем нажатия кнопок или ввода значения положительной скалярной величины в поле.

  • Multiclass method — Задайте метод для сокращения проблемы мультикласса к набору бинарных подпроблем с одним учеником ядра для каждой подпроблемы. Это значение применимо только для данных больше чем с двумя классами.

    • One-vs-One обучает одного ученика каждой паре классов. Этот метод учится отличать один класс от другого.

    • One-vs-All обучает одного ученика каждому классу. Этот метод учится отличать один класс от всех других.

  • Iteration limit — Задайте максимальное количество учебных итераций.

Классификаторы ансамбля

Комбинация классификаторов ансамбля следует из многих слабых учеников в одну высококачественную модель ансамбля. Качества зависят от выбора алгоритма.

Совет

Гибкость модели увеличивается с установкой Number of learners.

Все классификаторы ансамбля имеют тенденцию не спешить соответствовать, потому что им часто нужны многие ученики.

Тип классификатораInterpretabilityМетод ансамбляГибкость модели
Повышенные деревья
ТрудноAdaBoost, с Decision Tree ученики

Носитель к высокому — увеличивается с установкой Number of learners или Maximum number of splits.

Совет

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

Сложенные в мешок деревья
ТрудноСлучайный лес
Bag, с Decision Tree ученики

Высоко — увеличивается с установкой Number of learners.

Совет

Попробуйте этот классификатор сначала.

Дискриминант подпространства
ТрудноSubspace, с Discriminant ученики

Носитель — увеличивается с установкой Number of learners.

Хороший для многих предикторов

Подпространство KNN
ТрудноSubspace, с Nearest Neighbor ученики

Носитель — увеличивается с установкой Number of learners.

Хороший для многих предикторов

Деревья RUSBoost
ТрудноRUSBoost, с Decision Tree ученики

Носитель — увеличивается с установкой Number of learners или Maximum number of splits.

Хороший для скошенных данных (со значительно большим количеством наблюдений за 1 классом)

GentleBoost или LogitBoost — не доступный в галерее Model Type.
Если у вас есть 2 данных о классе, выберите вручную.
ТрудноGentleBoost или LogitBoost, с Decision Tree ученики
Выберите Boosted Trees и превратитесь в GentleBoost метод.

Носитель — увеличивается с установкой Number of learners или Maximum number of splits.

Для бинарной классификации только

Сложенные в мешок деревья используют 'random forest' Бреимена алгоритм. Для ссылки смотрите Бреимена, L. Случайные Леса. Машинное обучение 45, стр 5–32, 2001.

Советы

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

  • Попробуйте обучение каждая из nonoptimizable опций классификатора ансамбля в галерее Model Type. Обучите их всех видеть, какие настройки производят лучшую модель с вашими данными. Выберите лучшую модель в панели Models. Чтобы попытаться улучшить вашу модель, попробуйте выбор признаков, PCA, и затем (опционально) попытайтесь изменить некоторые расширенные настройки.

  • Для повышения методов ансамбля можно получить мелкие детали или с более глубокими деревьями или с большим числом мелких деревьев. Как с одним древовидными классификаторами, глубокие деревья могут вызвать сверхподбор кривой. Необходимо экспериментировать, чтобы выбрать лучшую древовидную глубину для деревьев в ансамбле, для того, чтобы к совпадению данных компромисса с древовидной сложностью. Используйте настройки Number of learners и Maximum number of splits.

Для примера смотрите, Обучают Классификаторы Ансамбля Используя Приложение Classification Learner.

Усовершенствованные опции ансамбля

Классификаторы ансамбля в Classification Learner используют fitcensemble функция. Можно установить эти опции:

  • Для Ensemble method выбора справки и Learner type, см. таблицу Ensemble. Попробуйте предварительные установки сначала.

  • Maximum number of splits

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

  • Number of learners

    Попытайтесь изменить количество учеников, чтобы видеть, можно ли улучшить модель. Многие ученики могут произвести высокую точность, но могут быть трудоемкими, чтобы соответствовать. Начните с нескольких дюжин учеников, и затем смотрите эффективность. Ансамблю с хорошей предсказательной силой могут быть нужны несколько сотен учеников.

  • Learning rate

    Задайте скорость обучения для уменьшения. Если вы устанавливаете скорость обучения на меньше чем 1, ансамбль требует большего количества итераций изучения, но часто достигает лучшей точности. 0.1 популярный выбор.

  • Subspace dimension

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

В качестве альтернативы можно позволить приложению выбрать некоторые из этих опций модели автоматически при помощи гипероптимизации параметров управления. Смотрите Гипероптимизацию параметров управления в Приложении Classification Learner.

Классификаторы нейронной сети

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

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

Совет

В галерее Model Type нажмите All Neural Networks , чтобы попробовать каждую из предварительно установленных опций нейронной сети и видеть, какие настройки производят лучшую модель с вашими данными. Выберите лучшую модель в панели Models и попытайтесь улучшить ту модель при помощи выбора признаков и изменяющий некоторые расширенные настройки.

Тип классификатораInterpretabilityГибкость модели
Узкая нейронная сеть
ТрудноНоситель — увеличивается с установкой First layer size
Средняя нейронная сеть
ТрудноНоситель — увеличивается с установкой First layer size
Широкая нейронная сеть
ТрудноНоситель — увеличивается с установкой First layer size
Нейронная сеть Bilayered
ТрудноВысоко — увеличивается с настройками First layer size и Second layer size
Нейронная сеть Trilayered
ТрудноВысоко — увеличивается с First layer size, Second layer size и настройками Third layer size

Каждой моделью является feedforward, полностью соединенная нейронная сеть для классификации. Первый полносвязный слой нейронной сети имеет связь от сетевого входа (данные о предикторе), и каждый последующий слой имеет связь от предыдущего слоя. Каждый полносвязный слой умножает вход на матрицу веса и затем добавляет вектор смещения. Функция активации следует за каждым полносвязным слоем. Итоговый полносвязный слой и последующая softmax активация функциональный продукт выход сети, а именно, классификационные оценки (апостериорные вероятности) и предсказанные метки. Для получения дополнительной информации смотрите Структуру Нейронной сети.

Для примера смотрите, Обучают Классификаторы Нейронной сети Используя Приложение Classification Learner.

Усовершенствованные опции нейронной сети

Классификаторы нейронной сети в Classification Learner используют fitcnet функция. Можно установить эти опции:

  • Number of fully connected layers — Задайте количество полносвязных слоев в нейронной сети, исключая итоговый полносвязный слой для классификации. Можно выбрать максимум трех полносвязных слоев.

  • First layer size, Second layer size и Third layer size — Задайте размер каждого полносвязного слоя, исключая итоговый полносвязный слой. Если вы принимаете решение создать нейронную сеть с несколькими полносвязными слоями, рассмотрите слои определения с уменьшающимися размерами.

  • Activation — Задайте функцию активации для всех полносвязных слоев, исключая итоговый полносвязный слой. Функция активации для последнего полносвязного слоя всегда softmax. Выберите из следующих функций активации: ReLUtanh'none', и Sigmoid.

  • Iteration limit — Задайте максимальное количество учебных итераций.

  • Regularization strength (Lambda) — Задайте гребень (L2) термин штрафа регуляризации.

  • Standardize data — Задайте, стандартизировать ли числовые предикторы. Если предикторы имеют широко различные шкалы, стандартизация может улучшить подгонку. Стандартизация данных настоятельно рекомендована.

В качестве альтернативы можно позволить приложению выбрать некоторые из этих опций модели автоматически при помощи гипероптимизации параметров управления. Смотрите Гипероптимизацию параметров управления в Приложении Classification Learner.

Похожие темы