Выбор элемента для классификации с использованием анализа компонентов окрестности (NCA)
FeatureSelectionNCAClassification объект содержит данные, информацию о подгонке, веса элементов и другие параметры модели анализа компонентов окрестности (NCA). fscnca изучает веса функций с помощью диагональной адаптации NCA и возвращает экземпляр FeatureSelectionNCAClassification объект. Функция обеспечивает выбор элемента путем упорядочения весов элемента.
Создать FeatureSelectionNCAClassification объект с использованием fscnca.
NumObservations - Количество наблюдений в данных обученияКоличество наблюдений в данных обучения (X и Y) после удаления NaN или Inf значения, хранящиеся как скаляр.
Типы данных: double
ModelParameters - Параметры моделиПараметры модели, используемые для обучения модели, хранящиеся в виде структуры.
Вы можете получить доступ к полям ModelParameters с использованием точечной нотации.
Например, для объекта FeatureSeliceNCAClassification с именем mdl, вы можете получить доступ к LossFunction значение с использованием mdl.ModelParameters.LossFunction.
Типы данных: struct
Lambda - Параметр регуляризацииПараметр регуляризации, используемый для обучения этой модели, хранится как скаляр. Для n наблюдений лучшее Lambda ожидается, что значение, которое минимизирует ошибку обобщения модели NCA, будет кратным 1/n.
Типы данных: double
FitMethod - Наименование метода фитинга'exact' | 'none' | 'average'Имя метода подгонки, используемого для подгонки этой модели, сохраненное как одно из следующих:
'exact' - Выполнить фитинг с использованием всех данных.
'none' - Без подгонки. Эта опция используется для оценки ошибки обобщения модели NCA с использованием начальных весов функций, предоставленных в вызове fscnca.
'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 аргументы пары имя-значение для управления автоматической настройкой начальной скорости обучения при вызове fscnca.
Типы данных: 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' аргумент пары имя-значение в вызове fscnca.
Абсолютное значение FeatureWeights(k) является мерой важности предиктора k. A 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 с использованием точечной нотации. Например, для объекта FeatureNCAClassificationobject с именем mdl, вы можете получить доступ к Objective использование поля mdl.FitInfo.Objective.
Типы данных: struct
Mu - Предиктор означает[]Предикторные средства, хранящиеся в виде вектора p-by-1 для стандартизированных тренировочных данных. В этом случае predict метод центрирует матрицу предиктора X путем вычитания соответствующего элемента Mu из каждого столбца.
Если данные не стандартизированы во время обучения, то Mu пуст.
Типы данных: double
Sigma - Предикторные стандартные отклонения[]Стандартные отклонения предиктора, хранящиеся в виде вектора p-by-1 для стандартизированных тренировочных данных. В этом случае predict метод масштабирует матрицу предиктора X делением каждого столбца на соответствующий элемент Sigma после центрирования данных с помощью Mu.
Если данные не стандартизированы во время обучения, то Sigma пуст.
Типы данных: double
X - Предикторные значенияПредикторные значения, используемые для обучения этой модели, хранятся в виде матрицы n-by-p. n - количество наблюдений, а p - число предикторных переменных в данных обучения.
Типы данных: double
Y - Значения ответаЗначения ответа, используемые для обучения этой модели, хранятся в виде числового вектора размера n, где n - количество наблюдений.
Типы данных: double
W - Наблюдательные весаВеса наблюдения, используемые для обучения этой модели, хранятся в виде числового вектора размера N. Сумма весов наблюдения равна n.
Типы данных: double
| потеря | Оценка точности усвоенных весов характеристик на тестовых данных |
| предсказать | Прогнозирование ответов с использованием классификатора анализа компонентов соседства (NCA) |
| ремонт | Модель анализа соседства (NCA) для классификации |
FeatureSelectionNCAClassification ОбъектЗагрузите образцы данных.
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 .
Значение. Сведения о том, как классы значений влияют на операции копирования, см. в разделе Копирование объектов.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.