www.machinelearningmastery.ru

Машинное обучение, нейронные сети, искусственный интеллект
Header decor

Home

Анализ основных компонентов с точки зрения машинного обучения (часть 2)

Дата публикации Apr 27, 2019

https://3c1703fe8d.site.internapcdn.net/newman/gfx/news/hires/2017/sixwaysandco.jpg

Вмоя предыдущая статьяЯ рассмотрел анализ основных компонентов со статистической точки зрения. В этой статье я расскажу об аспекте машинного обучения в той же теме. Обратите внимание, что охват, который я рассмотрю, является элементарным и не охватывает такие варианты PCA, как вероятностный PCA и PCA ядра. Как и в моей предыдущей статье, содержание довольно техническое, поэтому знакомство с некоторыми из следующего облегчит понимание этой статьи:линейная алгебра (матрицы, собственные векторы / собственные значения, диагонализация, ортогональность) и статистика / машинное обучение (стандартизация, дисперсия, ковариация, независимость, линейная регрессия)).

Начнем с поиска одномерной проекции из двумерного пространства данных. Ниже приведен наш набор данных.

У нас есть бесконечное количество возможных одномерных проекций:

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

Причина, по которой ортогональная проекция из всех возможных проекций отвечает нашим интересам, заключается в свойстве ближайшего вектора. СогласноСвойство ближайшего вектора,среди всех векторов в пространстве W вектор, ближайший кUэто ортогональная проекцияUна W. Другими словами, мы хотим получить проекцию, наиболее близкую к исходному набору данных, чтобы сохранить как можно больше информации после уменьшения измерения. Вот доказательство ближайшего векторного свойства:

Теперь, когда мы знаем, в каком направлении следует двигаться, давайте математически сформулируем эту проекцию. Для этого мы начнем с определения ортогональной проекции.

Вышеприведенное уравнение - это линейное преобразование, которое наши данные должны пройти для ортогонализации Последнее выражение показывает, чего мы в конечном итоге хотим: ортогонально спроецированные данные в новом, более низком измерении. Следовательно,мы хотим найти линейный оператор, который отображает наши данные на подпространство с минимальной ортогональной проекцией,

Важно видеть, что ортогональная проекция, которая является k-мерным подпространством исходного d-мерного пространства, представлена ​​исходными d-мерными координатами. Например, если k = 1, q транспонировать q равно (d x k * k x d = d x d). Кажется, что уменьшение размерности еще не сделано, но это потому, что мы ссылаемся на проекцию с исходными координатами. Как показано на диаграмме ниже, одномерные проекционные данные обозначаются двумерными координатами.

Имея это в виду, мы можем сформулировать проблему, чтобы найти наилучшее линейное преобразование Pi (линейный оператор для преобразования наших данных для проецирования в более низкое измерение), которое минимизирует ошибку восстановления:

Не путайте PCA с линейной регрессией. PCA должен минимизировать расстояниеортогональная проекцияв то время как линейная регрессия должна минимизироватьрасстояние по оси Y,

https://wikidocs.net/4870

ВКподпространство, естьКчисло ортонормированных базисных векторов. Базисные векторы не обязательно должны быть ортонормированными, но каждый базисный вектор в подпространстве можно заменить ортогональным базисом, используяПроцесс Грам-Шмидтаи мы можем легко изменить длину базисного вектора на 1. Следовательно, наши ограничения этой задачи оптимизации состоят в том, что длина базисных векторов должна быть 1. Мы можем переформулировать нашу задачу:

Преобразование минимизации в максимизацию (случай K = 1)

Мы начнем со случая, когда проще всего иметь дело, когда проецируемое измерение k = 1. Преимущество работы со случаем k = 1 состоит в том, что мы можем удалить внутреннее суммирование числа Pi или базисных векторов q, потому что здесь есть только один вектор.

Вместо того, чтобы работать над проблемой минимизации, мы можем преобразовать эту проблему в задачу максимизации, выполнив некоторую линейную алгебру. Вместо того, чтобы начинать с выражения, которое мы остановили в предыдущем абзаце, мы начнем с выражения ортогональной проекции, с которого мы изначально начали.

Первое суммирование не зависит от базисного вектораQтак что это не влияет на нашу проблему минимизации. После избавления от константы, теперь, когда мы пытаемся минимизировать отрицательное выражение, это становится проблемой максимизации.

Делая больше алгебры,

Теперь проблема становится,

http://www.cs.columbia.edu/~verma/teaching.html

Что означает проблема максимизации?

Задача минимизации, с которой мы начали, заключалась в минимизации ортогонального расстояния от набора данных до проекции. С проблемой максимизации мы видим, что этомаксимизировать дисперсию Теперь я покажу, почему версией задачи максимизации является максимизация дисперсии прогнозируемого набора данных. Чтобы доказать это, давайте начнем с уравнения дисперсии.

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

Почему мы превратили проблему минимизации в проблему максимизации?

Тогда что транспонировать X q? Чем он отличается от оригинального X?

Другими словами, вектор столбца представляет расстояние в новом подпространстве k-измерения.

Интересно видеть одну и ту же проблему с точки зрения как минимизации, так и максимизации, потому что они оба достигают цели сокращения измерения, но это делается по-другому.Минимизация будет заключаться в минимизации остатков, которые представляют собой ортогональное расстояние между точками данных и проекцией, С другой стороны,проблема максимизации состоит в том, чтобы максимизировать дисперсию ортогонально проецируемого набора данных, Мы можем взглянуть на минимизацию и максимизацию визуально:

http://alexhwilliams.info/itsneuronalblog/2016/03/27/pca/

Дело General K

Теперь мы преобразуем выражение k = 1 в общий случай k. Исходное выражение минимизации

http://www.cs.columbia.edu/~verma/teaching.html

эквивалентно

http://www.cs.columbia.edu/~verma/teaching.html

когда у нас более одного q и q больше не вектор, а матрица.

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

http://mlwiki.org/index.php/Matrix-Matrix_Multiplication

Чтобы перевести задачу максимизации в общий случай k, нам нужно решить, что мы хотим максимизировать из матрицы. Давайте начнем с определения следа.следизN-по-Nквадратная матрицаопределяется каксумма элементов на главной диагонали (диагональ от левого верхнего до правого нижнего угла),Поскольку наша матрица Q (транспонирование Q) является симметричной, будет применена та же самая теорема о симметричных матрицах, упомянутых выше, что она может быть разложена в PD транспонирования T. И мы также будем использовать свойство trace, которое trace (AB) = след (BA).

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

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

http://www.cs.columbia.edu/~verma/teaching.html

Мы также можем внести идею трассировки в проблему минимизации следующим образом:

Максимизация следа матрицы, следовательно,

эквивалентно максимизации ковариационной матрицы, а также собственных значений, связанных с X транспонированием X. Обратите внимание, что размерность X транспонирования X равна d x d, но матрица, чьяследмаксимизируется имеет размерность к х к. Выходные данные операции трассировки представляют собой матрицу k x k суммы собственных значений, но выходные данныеArgmaxоперация - матрица (d x k) Q, где каждый столбец является собственным вектором X транспонирования X.Отсюда получаем максимум k собственных векторов.

Данные проекции

До сих пор мы работали только над получением базисных векторов для нового измерения. Однако то, что мы действительно хотим, - это проекция исходных данных на новое измерение. Последний шаг PCA - это умножение Q транспонирования Q на исходную матрицу данных, чтобы получить матрицу проекции. Мы выходим из матрицы (d x k) Q и транспонируем результаты Q в размерность d x d. Умножая матрицу (d x n) X, матрица проекции имеет вид d x n.

Вывод

Мы начали с d x d ковариационной матрицы и получили верхние k собственных векторов, минимизировав ошибку восстановления, что аналогично максимизации трассы матрицы. Поэтому мы успешно сократили размерность. Возвращаясь к статистической точке зрения, на вопрос, почему мы хотим максимизировать дисперсию, был дан ответ, потому что мы хотим минимизировать ошибку восстановления, которая имеет тот же результат, что и максимизация дисперсии.

Оригинальная статья

Footer decor

© www.machinelearningmastery.ru | Ссылки на оригиналы и авторов сохранены. | map