Ранговые характеристики для неконтролируемого обучения с использованием лапласианских баллов
ранжирует элементы (переменные) в idx = fsulaplacian(X)X используя оценки Лапласа. Функция возвращает idx, который содержит индексы элементов, упорядоченные по важности элементов. Вы можете использовать idx выбрать важные функции для неконтролируемого обучения.
указывает дополнительные параметры, использующие один или несколько аргументов пары имя-значение. Например, можно указать idx = fsulaplacian(X,Name,Value)'NumNeighbors',10 для создания графа подобия с использованием 10 ближайших соседей.
Загрузите образцы данных.
load ionosphereРанжирование элементов по важности.
[idx,scores] = fsulaplacian(X);
Создайте штрих-график показателей важности элемента.
bar(scores(idx)) xlabel('Feature rank') ylabel('Feature importance score')

Выберите пять наиболее важных функций. Найдите столбцы этих функций в X.
idx(1:5)
ans = 1×5
15 13 17 21 19
15-я колонна X является наиболее важной особенностью.
Вычислите матрицу подобия из набора данных радужки Фишера и ранжируйте признаки, используя матрицу подобия.
Загрузите набор данных радужки Фишера.
load fisheririsНайдите расстояние между каждой парой наблюдений в meas с помощью pdist и squareform с метрикой евклидова расстояния по умолчанию.
D = pdist(meas); Z = squareform(D);
Создайте матрицу подобия и подтвердите, что она симметрична.
S = exp(-Z.^2); issymmetric(S)
ans = logical
1
Ранжирование элементов.
idx = fsulaplacian(meas,'Similarity',S)idx = 1×4
3 4 1 2
Ранжирование с использованием матрицы подобия S совпадает с ранжированием путем указания 'NumNeighbors' как size(meas,1).
idx2 = fsulaplacian(meas,'NumNeighbors',size(meas,1))idx2 = 1×4
3 4 1 2
X - Входные данныеВходные данные, определенные как n-by-p-числовая матрица. Строки X соответствуют наблюдениям (или точкам), а столбцы - элементам.
Программное обеспечение обрабатывает NaNs в X как отсутствующие данные и игнорирует любую строку X содержащий, по крайней мере, один NaN.
Типы данных: single | double
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'NumNeighbors',10,'KernelScale','auto' определяет число ближайших соседей как 10 и масштабный коэффициент ядра как 'auto'.'Similarity' - Матрица подобия[] (пустая матрица) (по умолчанию) | симметричная матрицаМатрица подобия, заданная как пара, разделенная запятыми, состоящая из 'Similarity' и симметричную матрицу n-на-n, где n - число наблюдений. Матрица подобия (или матрица смежности) представляет входные данные путем моделирования локальных отношений соседства между точками данных. Значения в матрице подобия представляют ребра (или соединения) между узлами (точками данных), которые связаны в графе подобия. Дополнительные сведения см. в разделе Матрица подобия.
При указании 'Similarity' значение, то вы не можете указать какой-либо другой аргумент пары имя-значение. Если не указать 'Similarity' затем программное обеспечение вычисляет матрицу подобия, используя опции, заданные другими аргументами пары имя-значение.
Типы данных: single | double
'Distance' - Метрика расстоянияМетрика расстояния, заданная как разделенная запятыми пара, состоящая из 'Distance' и символьный вектор, строковый скаляр или дескриптор функции, как описано в этой таблице.
| Стоимость | Описание |
|---|---|
'euclidean' | Евклидово расстояние (по умолчанию) |
'seuclidean' | Стандартизированное евклидово расстояние. Каждая разность координат между наблюдениями масштабируется делением на соответствующий элемент стандартного отклонения, вычисленного из |
'mahalanobis' | Расстояние Махаланобиса с использованием ковариации образца |
'cityblock' | Расстояние между городскими кварталами |
'minkowski' | Минковская дистанция. Степень по умолчанию равна 2. Используйте |
'chebychev' | Расстояние Чебычева (максимальная разность координат) |
'cosine' | Один минус косинус включенного угла между наблюдениями (рассматривается как векторы) |
'correlation' | Один минус выборочная корреляция между наблюдениями (рассматривается как последовательность значений) |
'hamming' | Расстояние хэмминга, которое представляет собой процент различающихся координат |
'jaccard' | Один минус коэффициент Jaccard, который является процентом ненулевых координат, которые отличаются |
'spearman' | Один минус выборка ранговой корреляции Спирмена между наблюдениями (рассматривается как последовательности значений) |
@ | Пользовательский дескриптор функции расстояния. Функция расстояния имеет вид function D2 = distfun(ZI,ZJ) % calculation of distance ...
Если данные не разрежены, можно, как правило, быстрее вычислять расстояние, используя встроенное расстояние вместо дескриптора функции. |
Дополнительные сведения см. в разделе Метрики расстояния.
При использовании 'seuclidean', 'minkowski', или 'mahalanobis' метрика расстояния, можно указать дополнительный аргумент пары имя-значение 'Scale', 'P', или 'Cov', соответственно, для управления метриками расстояния.
Пример: 'Distance','minkowski','P',3 указывает использовать метрику расстояния Минковского с показателем степени 3.
'P' - Показатель для метрики расстояния Минковского2 (по умолчанию) | положительный скалярЭкспонента для метрики расстояния Минковского, заданная как разделенная запятыми пара, состоящая из 'P' и положительный скаляр.
Этот аргумент допустим только в том случае, если 'Distance' является 'minkowski'.
Пример: 'P',3
Типы данных: single | double
'Cov' - Ковариационная матрица для метрики расстояния Махаланобисаcov(X,'omitrows') (по умолчанию) | положительная определенная матрицаКовариационная матрица для метрики расстояния Махаланобиса, заданная как разделенная запятыми пара, состоящая из 'Cov' и положительная определенная матрица.
Этот аргумент допустим только в том случае, если 'Distance' является 'mahalanobis'.
Пример: 'Cov',eye(4)
Типы данных: single | double
'Scale' - Коэффициенты масштабирования для стандартизированной евклидовой метрики расстоянияstd(X,'omitnan') (по умолчанию) | числовой вектор неотрицательных значенийМасштабные коэффициенты для стандартизированной евклидовой метрики расстояния, заданной как разделенная запятыми пара, состоящая из 'Scale' и числовой вектор неотрицательных значений.
Scale имеет длину p (количество столбцов в X), потому что каждое измерение (столбец) X имеет соответствующее значение в Scale. Для каждого измерения X, fsulaplacian использует соответствующее значение в Scale для стандартизации различий между наблюдениями.
Этот аргумент допустим только в том случае, если 'Distance' является 'seuclidean'.
Типы данных: single | double
'NumNeighbors' - Количество ближайших соседейlog(size(X,1)) (по умолчанию) | положительное целое числоЧисло ближайших соседей, использованных для построения графа подобия, заданного как пара, разделенная запятыми, состоящая из 'NumNeighbors' и положительное целое число.
Пример: 'NumNeighbors',10
Типы данных: single | double
'KernelScale' - Масштабный коэффициент1 (по умолчанию) | 'auto' | положительный скалярМасштабный коэффициент для ядра, определяемый как разделенная запятыми пара, состоящая из 'KernelScale' и 'auto' или положительный скаляр. Программа использует масштабный коэффициент для преобразования расстояний в измерения подобия. Дополнительные сведения см. в разделе График подобия.
'auto' поддерживается только для 'euclidean' и 'seuclidean' метрики расстояния.
При указании 'auto'затем программное обеспечение выбирает соответствующий масштабный коэффициент с использованием эвристической процедуры. Эта эвристическая процедура использует субдискретизацию, поэтому оценки могут варьироваться от одного вызова к другому. Чтобы воспроизвести результаты, задайте начальное число случайного числа с помощью rng перед вызовом fsulaplacian.
Пример: 'KernelScale','auto'
idx - Индексы признаков, упорядоченные по важности признаковИндексы элементов в X упорядочен по важности элемента, возвращен как числовой вектор. Например, если idx(3) является 5, то третья по значимости особенность - пятая колонка в X.
scores - Оценки функцийОценки элементов, возвращаемые в виде числового вектора. Большое значение балла в scores указывает на важность соответствующей функции. Значения в scores имеют тот же порядок, что и элементы в X.
График подобия моделирует локальные отношения окрестности между точками данных в X как неориентированный граф. Узлы на графике представляют точки данных, а ребра, которые не направлены, представляют связи между точками данных.
Если попарное расстояние Disti, j между любыми двумя узлами i и j положительное (или больше определенного порога), то граф подобия соединяет два узла с помощью ребра [2]. Ребро между двумя узлами взвешивается по попарному подобию Si, j, Disti, jλ) 2), для заданного значения шкалы ядер λ.
fsulaplacian строит график подобия с использованием метода ближайшего соседа. Функция соединяет точки в X это ближайшие соседи. Использовать 'NumNeighbors' для указания числа ближайших соседей.
Матрица подобия является матричным представлением графа подобия. Матрица n-на-n 1,..., n содержит попарные значения подобия между связными узлами в графе подобия. Матрица подобия графа также называется матрицей смежности.
Матрица подобия симметрична, потому что рёбра графа подобия не направлены. Значение Si,j = 0 означает, что узлы i и j графа подобия не связаны.
Матрица степени Dg представляет собой диагональную матрицу n-на-n, полученную суммированием строк матрицы подобия S. То есть i-й диагональный элемент Dg представляет собой Dg (i, i
Матрица Лапласа, которая является одним из способов представления графа подобия, определяется как разность между матрицей степени Dg и матрицей подобия S.
− S.
fsulaplacian функция ранжирует признаки, используя оценки Лапласа [1], полученные из ближайшего соседнего графа подобия.
fsulaplacian вычисляет значения в scores следующим образом:
Для каждой точки данных в X, определите локальную окрестность, используя метод ближайшего соседа, и найдите попарные расстояния j для всех точек i и j в окрестности.
Преобразуйте расстояния до матрицы подобия
S использование ядерного преобразования Сай, j=exp (− (- коэффициент пропорциональности для ядра, как определено 'KernelScale' аргумент пары имя-значение.
Центрируйте каждый элемент, удалив его среднее значение.
где xr - элемент rth, Dg - матрица степеней и .
Вычислите оценку sr для каждой функции.
Обратите внимание, что [1] определяет оценку Лапласа как
где L - матрица Лапласа, определяемая как разность между Dg и S. fsulaplacian функция использует только второй член этого уравнения для значения оценки scores чтобы большое значение оценки указывало на важный признак.
Выбор элементов с помощью оценки Лапласа согласуется с минимизацией значения
(xr),
где xir представляет i-е наблюдение признака rth. Минимизация этого значения подразумевает, что алгоритм предпочитает функции с большой дисперсией. Также алгоритм предполагает, что две точки данных важного элемента близки тогда и только тогда, когда граф подобия имеет ребро между двумя точками данных.
[1] Он, Х., Д. Кай и П. Нийоги. «Лапласианская оценка для выбора элементов». Процедуры NIPS. 2005.
[2] Фон Луксбург, У. «Учебное пособие по спектральной кластеризации». Статистика и вычислительный журнал. Vol.17, номер 4, 2007, стр. 395-416.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.