Выбор признаков для регрессии с помощью анализа компонента окружения (NCA)
FeatureSelectionNCARegression содержит данные, подходящую информацию, веса функции и другие параметры модели модели анализа компонента окружения (NCA). fsrnca изучает веса функции с помощью диагональной адаптации NCA и возвращает экземпляр FeatureSelectionNCARegression объект. Функция достигает выбора признаков путем упорядочивания весов функции.
Создайте FeatureSelectionNCAClassification объект с помощью fsrnca.
NumObservations — Количество наблюдений в обучающих данныхКоличество наблюдений в обучающих данных (X и Y) после удаления NaN или Inf значения, сохраненные как скаляр.
Типы данных: double
ModelParameters — Параметры моделиПараметры модели использовали в обучении модель, сохраненную как структура.
Можно получить доступ к полям ModelParameters использование записи через точку.
Например, для объекта FeatureSelectionNCARegression под названием mdl, можно получить доступ к LossFunction значение с помощью mdl.ModelParameters.LossFunction.
Типы данных: struct
Lambda — Параметр регуляризацииПараметр регуляризации использовал в обучении эту модель, сохраненную как скаляр. Для наблюдений n, лучшего Lambda значение, которое минимизирует ошибку обобщения модели NCA, как ожидают, будет кратным 1/n.
Типы данных: double
FitMethod — Имя подходящего метода раньше подбирало эту модель'exact' | 'none' | 'average'Имя подходящего метода раньше подбирало эту модель, сохраненную как одно из следующего:
'exact' — Выполните подбор кривой с помощью всех данных.
'none' — Никакой подбор кривой. Используйте эту опцию, чтобы оценить ошибку обобщения модели NCA с помощью начальных весов функции, предоставленных в вызове fsrnca.
'average' — Программное обеспечение делит данные на разделы (подмножества), соответствует каждому разделу с помощью exact метод, и возвращает среднее значение весов функции. Можно задать количество разделов с помощью NumPartitions аргумент пары "имя-значение".
Solver — Имя решателя раньше подбирало эту модель'lbfgs' | 'sgd' | 'minibatch-lbfgs'Имя решателя раньше подбирало эту модель, сохраненную как одно из следующего:
'lbfgs' — Ограниченная память Бройден Флетчер Голдфарб Шэнно (LBFGS) алгоритм
'sgd' — Алгоритм стохастического градиентного спуска (SGD)
'minibatch-lbfgs' — стохастический градиентный спуск с алгоритмом LBFGS применился к мини-пакетам
GradientTolerance — Относительный допуск сходимости на норме градиентаОтносительный допуск сходимости на норме градиента для 'lbfgs' и 'minibatch-lbfgs' решатели, сохраненные как значение положительной скалярной величины.
Типы данных: double
IterationLimit — Максимальное количество итераций для оптимизацииМаксимальное количество итераций для оптимизации, сохраненной как положительное целочисленное значение.
Типы данных: double
PassLimit — Максимальное количество передачМаксимальное количество передач для 'sgd' и 'minibatch-lbfgs' решатели. Каждая передача процессы все наблюдения в данных.
Типы данных: double
InitialLearningRate — Начальный темп обученияНачальный темп обучения для 'sgd' и 'minibatch-lbfgs' решатели. Темп обучения затухает по итерациям, запускающимся в значении, заданном для InitialLearningRate.
Используйте NumTuningIterations и TuningSubsetSize управлять автоматической настройкой начального темпа обучения в вызове fsrnca.
Типы данных: double
Verbose — Индикатор уровня многословияИндикатор уровня многословия, сохраненный как неотрицательное целое число. Возможные значения:
0 — Никакие сводные данные сходимости
1 — сводные данные Сходимости, включая норму градиента и значения целевой функции
> 1 — Больше информации о сходимости, в зависимости от алгоритма подбора. Когда вы используете 'minibatch-lbfgs' решатель и уровень многословия> 1, информация о сходимости включает журнал итерации от промежуточных мини-пакетных подгонок LBFGS.
Типы данных: double
InitialFeatureWeights — Начальные веса функцииНачальные веса функции, сохраненные как p-by-1 вектор положительных действительных скаляров, где p является количеством предикторов в X.
Типы данных: double
FeatureWeights — Покажите весаПокажите веса, сохраненные как p-by-1 вектор действительных скалярных значений, где p является количеством предикторов в X.
Для 'FitMethod' равняйтесь 'average', FeatureWeights p-by-m матрица, где m является количеством разделов, заданных через 'NumPartitions' аргумент пары "имя-значение" в вызове fsrnca.
Абсолютное значение FeatureWeights(k) мера важности предиктора k. Если FeatureWeights(k) близко к 0, затем это указывает на тот предиктор k не влияет на ответ в Y.
Типы данных: double
FitInfo — Подходящая информацияПодходящая информация, хранившая как структура со следующими полями.
| Имя поля | Значение |
|---|---|
Iteration | Индекс итерации |
Objective | Упорядоченная целевая функция для минимизации |
UnregularizedObjective | Неупорядоченная целевая функция для минимизации |
Gradient | Градиент упорядоченной целевой функции для минимизации |
Для классификации, UnregularizedObjective представляет отрицание точности, "пропускают один" классификатора NCA на обучающих данных.
Для регрессии, UnregularizedObjective представляет потерю, "пропускают один" между истинным ответом и предсказанным ответом при использовании модели регрессии NCA.
Для 'lbfgs' решатель, Gradient итоговый градиент. Для 'sgd' и 'minibatch-lbfgs' решатели, Gradient итоговый мини-пакетный градиент.
Если FitMethod 'average', затем FitInfo m-by-1 массив структур, где m является количеством разделов, заданных через 'NumPartitions' аргумент пары "имя-значение".
Можно получить доступ к полям FitInfo использование записи через точку. Например, для FeatureSelectionNCARegressionobject назвал mdl, можно получить доступ к Objective поле с помощью mdl.FitInfo.Objective.
Типы данных: struct
Mu — Средние значения предиктора[]Средние значения предиктора, сохраненные как p-by-1 вектор для стандартизированных обучающих данных. В этом случае, predict метод сосредотачивает матрицу предиктора X путем вычитания соответствующего элемента Mu из каждого столбца.
Если данные не стандартизированы во время обучения, то Mu isempty.
Типы данных: double
Sigma — Стандартные отклонения предиктора[]Стандартные отклонения предиктора, сохраненные как p-by-1 вектор для стандартизированных обучающих данных. В этом случае, predict метод масштабирует матрицу предиктора X путем деления каждого столбца на соответствующий элемент Sigma после центрирования данных с помощью Mu.
Если данные не стандартизированы во время обучения, то Sigma isempty.
Типы данных: double
X — Значения предиктораЗначения предиктора раньше обучали эту модель, сохраненную как n-by-p матрица. n является количеством наблюдений, и p является количеством переменных предикторов в обучающих данных.
Типы данных: double
Y — Значения ответаЗначения ответа раньше обучали эту модель, сохраненную как числовой вектор размера n, где n является количеством наблюдений.
Типы данных: double
W — Веса наблюденияВеса наблюдения раньше обучали эту модель, сохраненную как числовой вектор размера n. Суммой весов наблюдения является n.
Типы данных: double
| потеря | Оцените точность изученных весов функции на тестовых данных |
| предсказать | Предскажите ответы с помощью модели регрессии анализа компонента окружения (NCA) |
| ремонт | Переоборудуйте модель анализа компонента окружения (NCA) для регрессии |
FeatureSelectionNCARegression ОбъектЗагрузите выборочные данные.
load imports-85Первые 15 столбцов содержат непрерывные переменные предикторы, тогда как 16-й столбец содержит переменную отклика, которая является ценой автомобиля. Задайте переменные для аналитической модели компонента окружения.
Predictors = X(:,1:15); Y = X(:,16);
Подбирайте модель анализа компонента окружения (NCA) для регрессии, чтобы обнаружить соответствующие функции.
mdl = fsrnca(Predictors,Y);
Возвращенная модель NCA, mdl, FeatureSelectionNCARegression объект. Эта информация об объектно-ориентированной памяти об обучающих данных, модели и оптимизации. Можно получить доступ к свойствам объектов, таким как веса функции, с помощью записи через точку.
Постройте веса функции.
figure() plot(mdl.FeatureWeights,'ro') xlabel('Feature Index') ylabel('Feature Weight') grid on

Веса несоответствующих функций являются нулем. 'Verbose',1 опция в вызове fsrnca отображает информацию об оптимизации о командной строке. Можно также визуализировать процесс оптимизации путем графического вывода целевой функции по сравнению с номером итерации.
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 аргумент пары "имя-значение" в вызове fsrnca .
Значение. Чтобы изучить, как классы значения влияют на операции копии, смотрите Копирование Объектов (MATLAB).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.