kfoldEdge

Классификационные ребра для перекрестно проверенной классификационной модели

    Описание

    пример

    E = kfoldEdge(CVMdl) возвращает ребро классификации, полученное перекрестной проверенной классификационной моделью CVMdl. Для каждой складки, kfoldEdge вычисляет ребро классификации для наблюдений с сворачиванием с использованием классификатора, обученного наблюдениям с сворачиванием. CVMdl.X и CVMdl.Y содержат оба набора наблюдений.

    E = kfoldEdge(CVMdl,Name,Value) возвращает ребро классификации с дополнительными опциями, заданными одним или несколькими аргументами в виде имя-значение. Для примера задайте складки, которые будут использоваться или задавать, чтобы вычислить ребро классификации для каждой отдельной складки.

    Примеры

    свернуть все

    Вычислите ребро k-складки для модели, обученной по данным радужной оболочки глаза Фишера.

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

    load fisheriris

    Обучите классификационный древовидный классификатор.

    tree = fitctree(meas,species);

    Перекрестная проверка классификатора с помощью 10-кратной перекрестной проверки.

    cvtree = crossval(tree);

    Вычислите ребро k-образного сгиба.

    edge = kfoldEdge(cvtree)
    edge = 0.8578
    

    Вычислите k-кратное ребро для ансамбля, обученного по данным ириса Фишера.

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

    load fisheriris

    Обучите ансамбль из 100 ускоренных классификационных деревьев.

    t = templateTree('MaxNumSplits',1); % Weak learner template tree object
    ens = fitcensemble(meas,species,'Learners',t);

    Создайте перекрестно проверенный ансамбль из ens и найдите классификационное ребро.

    rng(10,'twister') % For reproducibility
    cvens = crossval(ens);
    E = kfoldEdge(cvens)
    E = 3.2033
    

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

    свернуть все

    Перекрестный проверенный секционированный классификатор, заданный как ClassificationPartitionedModel, ClassificationPartitionedEnsemble, или ClassificationPartitionedGAM объект. Можно создать объект двумя способами:

    • Передайте обученную классификационную модель, перечисленную в следующей таблице, в свою crossval функция объекта.

    • Обучите классификационную модель с помощью функции, перечисленной в следующей таблице, и задайте один из аргументов имя-значение перекрестной валидации для функции.

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

    Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

    Пример: kfoldEdge(CVMdl,'Folds',[1 2 3 5]) задает использование первой, второй, третьей и пятой складок для вычисления ребра классификации, но исключает четвертую складку.

    Используйте индексы сгиба, заданные как положительный целочисленный вектор. Элементы Folds должен находиться в области значений от 1 на CVMdl.KFold.

    Программа использует только складки, указанные в Folds.

    Пример: 'Folds',[1 4 10]

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

    Флаг для включения условий взаимодействия модели, заданный как true или false. Этот аргумент действителен только для обобщенной аддитивной модели (GAM). То есть можно задать этот аргумент только тогда, когда CVMdl является ClassificationPartitionedGAM.

    Значение по умолчанию true если модели в CVMdl (CVMdl.Trained) содержат условия взаимодействия. Значение должно быть false если модели не содержат условий взаимодействия.

    Пример: 'IncludeInteractions',false

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

    Уровень агрегации для выхода, заданный как 'average', 'individual', или 'cumulative'.

    ЗначениеОписание
    'average'Выход является скаляром средним по всем складкам.
    'individual'Выход является вектором длины k содержащим одно значение на складку, где k количество складок.
    'cumulative'

    Примечание

    Если вы хотите задать это значение, CVMdl должен быть ClassificationPartitionedEnsemble объект или ClassificationPartitionedGAM объект.

    • Если CVMdl является ClassificationPartitionedEnsemble, тогда выход является вектором длины min(CVMdl.NumTrainedPerFold). Каждый элемент j является средним значением по всем складкам, которые функция получает с помощью ансамблей, обученных со слабыми учениками 1:j.

    • Если CVMdl является ClassificationPartitionedGAM, тогда выход значение зависит от IncludeInteractions значение.

      • Если IncludeInteractions является false, затем L является   (1 + min(NumTrainedPerFold.PredictorTrees))-by-1 числовой вектор-столбец. Первый элемент L является средним значением по всем складкам, который получен только член точки пересечения (константа). The   (j + 1)первый элемент L - среднее значение, полученное с помощью термина точки пересечения и первого j деревья предикторов на линейный член.

      • Если IncludeInteractions является true, затем L является   (1 + min(NumTrainedPerFold.InteractionTrees))-by-1 числовой вектор-столбец. Первый элемент L - это среднее значение по всем складкам, которое получается с помощью термина точка пересечения (константа) и всех деревьев предикторов на линейный термин. The   (j + 1)первый элемент L - это среднее значение, полученное с помощью термина точки пересечения, всех деревьев предикторов на линейный термин и первого j деревья взаимодействия на срок взаимодействия.

    Пример: 'Mode','individual'

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

    свернуть все

    Классификационное ребро, возвращенный как числовой скаляр или числовой вектор-столбец.

    • Если Mode является 'average', затем E - средняя классификация, ребро по всем складкам.

    • Если Mode является 'individual', затем E является k числовым вектором-1, содержащим ребро классификации для каждой складки, где k количество складок.

    • Если Mode является 'cumulative' и CVMdl является ClassificationPartitionedEnsemble, затем E является min(CVMdl.NumTrainedPerFold)-by-1 числовой вектор-столбец. Каждый элемент j - среднее ребро по всем складкам, который получает функция с помощью ансамблей, обученных со слабыми учениками 1:j.

    • Если Mode является 'cumulative' и CVMdl является ClassificationPartitionedGAM, тогда выход значение зависит от IncludeInteractions значение.

      • Если IncludeInteractions является false, затем L является   (1 + min(NumTrainedPerFold.PredictorTrees))-by-1 числовой вектор-столбец. Первый элемент L - среднее ребро классификации по всем складкам, который получается с использованием только члена точки пересечения (константы). The   (j + 1)первый элемент L - среднее ребро, полученный с помощью термина точки пересечения и первого j деревья предикторов на линейный член.

      • Если IncludeInteractions является true, затем L является   (1 + min(NumTrainedPerFold.InteractionTrees))-by-1 числовой вектор-столбец. Первый элемент L - среднее ребро классификации по всем складкам, который получается с помощью термина точка пересечения (константа) и всех деревьев предикторов на линейный член. The   (j + 1)первый элемент L - среднее ребро, полученный с помощью термина точки пересечения, все деревья предикторов на линейный термин и первый j деревья взаимодействия на срок взаимодействия.

    Подробнее о

    свернуть все

    Классификационное ребро

    Этот classification edge является средневзвешенным значением classification margins.

    Один из способов выбрать один из нескольких классификаторов, например, для выбора признаков, - выбрать классификатор, который дает наибольшее ребро.

    Классификационное поле

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

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

    Алгоритмы

    kfoldEdge вычисляет ребро классификации как описано в соответствующем edge функция объекта. Для описания модели смотрите соответствующее edge страницу с описанием функции в следующей таблице.

    Тип моделиedge Функция
    Классификатор дискриминантного анализаedge
    Классификатор ансамбляedge
    Обобщенный классификатор аддитивной моделиedge
    k - ближайший соседний классификаторedge
    Наивный классификатор Байесаedge
    Классификатор нейронной сетиedge
    Машина опорных векторовedge
    Двоичное дерево принятия решений для многоклассовой классификацииedge

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

    Введенный в R2011a