Класс FeatureSelectionNCAClassification

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

Покажите выбор для классификации с помощью анализа компонента окружения (NCA)

Описание

Объект FeatureSelectionNCAClassification содержит данные, подходящую информацию, веса функции и другие параметры модели анализа компонента окружения (NCA). fscnca изучает веса функции с помощью диагональной адаптации NCA и возвращает экземпляр объекта FeatureSelectionNCAClassification. Функция достигает выбора функции путем упорядочивания весов функции.

Конструкция

Создайте объект FeatureSelectionNCAClassification с помощью fscnca.

Свойства

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

Количество наблюдений в данных тренировки (X и Y) после удаления NaN или значений Inf, сохраненных как скаляр.

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

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

Можно получить доступ к полям ModelParameters с помощью записи через точку.

Например, для объекта FeatureSelectionNCAClassification под названием mdl, можно получить доступ к значению LossFunction с помощью mdl.ModelParameters.LossFunction.

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

Параметр регуляризации использовал для обучения эту модель, сохраненную как скаляр. Для наблюдений n лучшее значение Lambda, которое минимизирует ошибку обобщения модели NCA, как ожидают, будет кратным 1/n.

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

Имя подходящего метода раньше соответствовало этой модели, сохраненной как одно из следующего:

  • 'exact' — Выполните подбор кривой с помощью всех данных.

  • 'none' Никакой подбор кривой. Используйте эту опцию, чтобы оценить ошибку обобщения модели NCA с помощью начальных весов функции, предоставленных в вызове fscnca.

  • 'average' — Разделите данные на разделы (подмножества), соответствуйте каждому разделу с помощью метода exact и возвратите среднее значение весов функции. Можно задать количество разделов с помощью аргумента пары "имя-значение" NumPartitions.

Имя решателя раньше соответствовало этой модели, сохраненной как одно из следующего:

  • 'lbfgs' — Ограниченная память Бройден Флетчер Голдфарб Шэнно (LBFGS) алгоритм

  • 'sgd' — Алгоритм Стохастического спуска градиента (SGD)

  • 'minibatch-lbfgs' — стохастический спуск градиента с алгоритмом LBFGS применился к мини-пакетам

Относительный допуск сходимости на норме градиента для 'lbfgs' и решателей 'minibatch-lbfgs', сохраненных как значение положительной скалярной величины.

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

Максимальное количество итераций для оптимизации, сохраненной как положительное целочисленное значение.

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

Максимальное количество передач для 'sgd' и решателей 'minibatch-lbfgs'. Каждая передача процессы все наблюдения в данных.

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

Начальный темп обучения для 'sgd' и решателей 'minibatch-lbfgs', сохраненных как положительный действительный скаляр. Темп обучения затухает по итерациям, запускающимся в значении, заданном для InitialLearningRate.

Используйте аргументы пары "имя-значение" NumTuningIterations и TuningSubsetSize, чтобы управлять автоматической настройкой начального темпа обучения в вызове fscnca.

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

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

  • 0 — Никакие сводные данные сходимости

  • 1 — сводные данные Сходимости, включая норму градиента и значения целевой функции

  • > 1 — Больше информации о сходимости, в зависимости от алгоритма подбора. Когда вы используете решатель 'minibatch-lbfgs' и уровень многословия> 1, информация о сходимости включает журнал итерации от промежуточных мини-пакетных подгонок LBFGS.

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

Начальные веса функции, сохраненные как p-by-1 вектор положительных действительных скаляров, где p является количеством предикторов в X.

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

Покажите веса, сохраненные как p-by-1 вектор действительных скаляров, где p является количеством предикторов в X.

Если FitMethod является 'average', то FeatureWeights является p-by-m матрица. m является количеством разделов, заданных через аргумент пары "имя-значение" 'NumPartitions' в вызове fscnca.

Абсолютное значение FeatureWeights(k) является мерой важности предиктора k. Значение FeatureWeights(k), которое является близко к 0, указывает, что предиктор k не влияет на ответ в Y.

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

Подходящая информация, хранившая как структура со следующими полями.

Имя поляЗначение
IterationИндекс итерации
ObjectiveУпорядоченная целевая функция для минимизации
UnregularizedObjectiveНеупорядоченная целевая функция для минимизации
GradientГрадиент упорядоченной целевой функции для минимизации
  • Для классификации UnregularizedObjective представляет отрицание точности, "пропускают один" классификатора NCA на данных тренировки.

  • Для регрессии UnregularizedObjective представляет потерю, "пропускают один" между истинным ответом и предсказанным ответом при использовании модели регрессии NCA.

  • Для решателя 'lbfgs' Gradient является итоговым градиентом. Для 'sgd' и решателей 'minibatch-lbfgs', Gradient является итоговым мини-пакетным градиентом.

  • Если FitMethod является 'average', то FitInfo является m-by-1 массив структур, где m является количеством разделов, заданных через аргумент пары "имя-значение" 'NumPartitions'.

Можно получить доступ к полям FitInfo с помощью записи через точку. Например, для FeatureSelectionNCAClassificationobject по имени mdl, можно получить доступ к полю Objective с помощью mdl.FitInfo.Objective.

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

Средние значения предиктора, сохраненные как p-by-1 вектор для стандартизированных данных тренировки. В этом случае метод predict сосредотачивает матрицу предиктора X путем вычитания соответствующего элемента Mu из каждого столбца.

Если данные не стандартизированы во время обучения, то Mu пуст.

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

Стандартные отклонения предиктора, сохраненные как p-by-1 вектор для стандартизированных данных тренировки. В этом случае метод predict масштабирует матрицу предиктора X путем деления каждого столбца на соответствующий элемент Sigma после центрирования данных с помощью Mu.

Если данные не стандартизированы во время обучения, то Sigma пуст.

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

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

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

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

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

Веса наблюдения раньше обучали эту модель, сохраненную как числовой вектор размера n. Суммой весов наблюдения является n.

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

Методы

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

Примеры

свернуть все

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

load ionosphere

Набор данных имеет 34 непрерывных предиктора. Переменная отклика является радаром, возвращается, маркированный как b (плохо) или (хороший) g.

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

mdl = fscnca(X,Y);

Возвращенная модель NCA, mdl, является объектом FeatureSelectionNCAClassification. Эта информация об объектно-ориентированной памяти о данных тренировки, модели и оптимизации. Можно получить доступ к свойствам объектов, таким как веса функции, с помощью записи через точку.

Постройте веса функции.

figure()
plot(mdl.FeatureWeights,'ro')
xlabel('Feature Index')
ylabel('Feature Weight')
grid on

Веса несоответствующих функций являются нулем. Опция 'Verbose',1 в вызове fscnca отображает информацию об оптимизации о командной строке. Можно также визуализировать процесс оптимизации путем графического вывода целевой функции по сравнению с номером итерации.

figure
plot(mdl.FitInfo.Iteration,mdl.FitInfo.Objective,'ro-')
grid on
xlabel('Iteration Number')
ylabel('Objective')

Свойством ModelParameters является struct, который содержит больше информации о модели. Можно получить доступ к полям этого свойства с помощью записи через точку. Например, смотрите, были ли данные стандартизированы или нет.

mdl.ModelParameters.Standardize
ans = logical
   0

0 означает, что данные не были стандартизированы прежде, чем соответствовать модели NCA. Можно стандартизировать предикторы, когда они находятся в совсем других шкалах с помощью аргумента пары "имя-значение" 'Standardize',1 в вызове fscnca.

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

Значение. Чтобы изучить, как классы значения влияют на операции копии, смотрите Копирование Объектов (MATLAB).

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

| | |

Введенный в R2017b