www.machinelearningmastery.ru

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

Home

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

Дата публикации Jan 5, 2019

https://www.jpl.nasa.gov/images/technology/20150522/Iceberg20150522.jpg

Одна из распространенных проблем при анализе сложных данных связана с большим количеством переменных, что требует большого объема памяти и вычислительных мощностей. Именно здесь начинается анализ основных компонентов (PCA).техника для уменьшения размера пространства объектовизвлечение признаков, Например, если у нас есть 10 переменных, при извлечении признаков мы создаем новые независимые переменные, комбинируя старые десять переменных. При создании новых переменных может показаться, что вводится больше измерений, но мы выбираем только несколько переменных из вновь созданных переменных в порядке важности. Тогда количество выбранных переменных будет меньше того, с чего мы начали, и именно так мы уменьшаем размерность.

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

СПС Статистическая Перспектива

Чтобы понять PCA, мы можем начать с примера из этогоучебник по линейной алгебрев котором автор собрал набор тестовых данных из своего класса Honors Calculus из 14 студентов. Ниже приведены четыре переменные: ACT (оценка по национальному тесту с диапазоном от 1 до 36), FinalExam (итоговый балл по экзамену с диапазоном от 0 до 200), QuizAvg (среднее значение из восьми баллов по тестам, каждый с диапазоном от 0 до 100) и TestAvg (среднее значение трех тестовых баллов, каждый из которых находится в диапазоне от 0 до 100).

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

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

Стандартизация

Z-скорингявляется распространенным методом, используемым для стандартизации / нормализации данных: среднее значение данных вычитается из каждого значения и делится на стандартное отклонение.

означатьопределяется как

дисперсияиз набора данных х

После расчета среднего и квадратного корня дисперсии данных, которая являетсястандартное отклонение:

Теперь данные могут быть в конечном итоге z-скорированы / нормализованы путем вычитания среднего значения и деления на стандартное отклонение, которое является квадратным корнем из дисперсии.

Ковариации / Корреляция

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

ковариация образцавектора х и у определяется как

Однако одной из проблем использования ковариации является то, что на нее влияют единицы измерения. Например, если вектор x измеряется в килограммах, а y измеряется в футах, ковариация теперь находится в килограммах-футах. Чтобы заставить подразделения уйти,выборочная корреляция(вектор), который определяется как ковариация, деленная на стандартное отклонение:

Другим способом определения выборочной корреляции (матрицы) является использование z-скоринговых данных, которые уже делятся на стандартное отклонение.

А вот корреляционная матрица набора данных:

Мы можем видеть, что третий балл по тесту (Средний балл) и первый балл по тесту (ACT) имеют наивысшую корреляцию 0,82780343. Второе наивысшее значение корреляции отображается между первым и четвертым: ACT и Test Average. Таким образом, мы подтверждаем то, что видели ранее, что эти результаты тестов связаны друг с другом, а некоторые из них являются избыточными.

Теперь мы начнем наш анализ основных компонентов. Чтобы придумать новые измерения, мы пройдем два процесса:

  1. преобразование набора данных:определить новые переменные для замены существующих
  2. выбор набора данных:Измерьте, насколько хорошо новые переменные представляют исходные переменные.

Ниже приведены подробности каждого шага.

Шаг трансформации

Начнем с корреляционной матрицы, вычисленной выше Важно видеть, что эта матрица обязательно симметрична, потому что она получается умножением транспонирования Z и Z. С учетом сказанного здесь будет использоваться теорема о симметричных матрицах.Матрица A n x n является симметричной тогда и только тогда, когда существует ортонормированный базис, состоящий из собственных векторов A. В этом случае существует ортогональная матрица P и диагональная матрица D, такая что A = PDP_transpose,

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

Отсюда мы преобразуем наши исходные Z-скоринговые данные, выполнив умножение матриц на P:ZP

Форма этого нового набора данных не отличается от формы исходного набора данных. Теперь мы успешно преобразовали наши исходные данные в новые, и мы уменьшим размер исходного набора данных на следующем шаге.

Шаг выбора

Теперь мы выберем векторы изZPна самом деле уменьшить измерение, но как мы узнаем, какие из них оставить, а какие оставить? Решение будет принято на основе собственных значений. Мы перепишем ZP в читаемом формате, где каждый вектор-столбец ZP обозначается как y_i.

y1этопервый главный компоненти определяется как новый вектор, коэффициенты которого являются собственным вектором корреляционной матрицы с наибольшим собственным значением 2,978867. затемвторой основной компонентравен y2, поскольку его коэффициенты соответствуют второму по величине собственному значению 0,762946.

В этом случае последние два собственных значения незначительны, поскольку они недостаточно велики по сравнению с первыми двумя. Поэтому мы выберем векторы ZP, которые имеют собственные векторы в качестве коэффициентов, которые соответствуют первым двум наибольшим собственным значениям, а именноy1а такжеy2, И эти два вектора - наши новые векторы, которые мы будем использовать в результате уменьшения размерности.

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

Вот доказательство того, почему (Это самая значительная часть первого тайма):

Почему мы умножаем Z на P?

Это объясняет причину, по которой мы умножаем нормализованные данные Z на P. Тот факт, что ковариация ZP является диагональной матрицей, указывает на то, что между переменными, отличными от самой себя, нет линейной зависимости. Другими словами, нет никакой связи между новыми переменными, которые мы создали, и новые переменные не зависят друг от друга.Таким образом, мы успешно создали новый набор данных (преобразованный набор данных), который не имеет никакой корреляции между ними, и мы можем выбрать переменные на основе дисперсии, которая представлена ​​собственными значениями.

Теперь давайте поговорим подробнее о собственных значениях / дисперсии. Здесь важно то, что общая дисперсия исходного набора данных такая же, как и у преобразованного набора данных. То естьсумма записей суммы записей диагональной матрицы D представляет собой сумму дисперсии Z баллов, Поскольку ковариационная матрица ZP представляет собой D, каждый вектор ZP представляет дисперсию преобразованных данных, и при выборе векторов, которые соответствуют самым высоким собственным значениям, дисперсия максимизируется. Таким образом,выбирая векторы, которые соответствуют самым высоким собственным значениям, мы выбираем новые переменные, которые имеют большую долю дисперсии преобразованного набора данных, деленную на общую дисперсию исходного набора данных.,

Заключение СПС Статистическая Перспектива

Попытка собрать как можно больше отклонений является обычной практикой в ​​статистике при замене исходных переменных меньшим количеством новых переменных «учитывать высокий процент отклонения в исходном наборе данных.«Это имеет смысл интуитивно, потому что мы хотим отбросить аналогичные функции, но сохраняем функции с максимальным отличием только тогда, когда мы рассматриваем возможность уменьшить размерность набора данных. В этом случае мы видим, что некоторые из тестовых оценок сильно коррелируют друг с другом, поэтому некоторые из тестовых оценок являются избыточными. Но мы бы хотели математически понять, почему выгодно поддерживать как можно больше различий. Ответ на этот вопрос легче увидеть в PCA с точки зрения машинного обучения, который будет частью 2 данной статьи.

Ссылки:1.https://www.stat.cmu.edu/~cshalizi/uADA/12/lectures/ch18.pdf) 2.https://towardsdatascience.com/a-one-stop-shop-for-principal-component-analysis-5582fb7e0a9c3.https://www.amazon.com/Elementary-Algebra-Classics-Advanced-Mathematics/dp/013468947X4.http://www.cs.columbia.edu/~verma/teaching.html

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

Footer decor

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