16. Алгоритм уменьшения размерности для машинного обучения 1.

Python

Эта статья участвовала в "Проект «Звезда раскопок»”, чтобы выиграть творческий подарочный пакет и бросить вызов творческим поощрительным деньгам.
Мало знаний, большой вызов! Эта статья участвует в "Необходимые знания для программистов«Творческая деятельность.

I. Обзор

1.1 Что такое измерение

  • Для массивов и серий измерение — это результат, возвращаемый фигурой функции, а количество чисел, возвращаемых фигурой, — это количество измерений. Данные, отличные от индекса, называются одномерными (форма возвращает количество данных в уникальном измерении), независимо от строки и столбца, и двумерными (форма возвращает строку x столбец), также называемой таблицей. Таблица может быть не более чем двухмерной, а множественные таблицы составляют более высокие измерения. Когда в массиве есть две таблицы с 3 строками и 4 столбцами, форма возвращается (более высокое измерение, строка, столбец). Когда в массиве есть 2 группы из 2 таблиц с 3 строками и 4 столбцами, данные являются 4-мерными,
  • Каждая таблица в массиве может быть матрицей признаков или DataFrame.Эти структуры всегда имеют только одну таблицу, поэтому должны быть строки и столбцы, где строки — образцы, а столбцы — признаки. Для каждой таблицы размерность относится к количеству образцов или количеству функций, Обычно это относится к количеству функций, если не указано иное. Помимо индекса, один признак является одномерным, два признака — двумерными, а n признаков — n-мерными.
  • Для изображений размерность — это количество векторов признаков в изображении. Собственный вектор можно понимать как ось координат. Собственный вектор определяет прямую линию, которая является одномерной. Два взаимно перпендикулярных собственных вектора определяют плоскость, то есть прямоугольную систему координат, которая является двумерной. Три взаимно перпендикулярных собственных вектора определяют Пространство, то есть твердая прямоугольная система координат, трехмерно. Три или более собственных вектора перпендикулярны друг другу, определяя многомерное пространство, которое нельзя увидеть или представить человеческому глазу.
  • «Уменьшение размерности» в алгоритме уменьшения размерности относится к уменьшению количества признаков в матрице признаков. На прошлой неделе мы говорили, что цель уменьшения размерности — сделать алгоритмы более быстрыми и эффективными, но на самом деле есть еще одна потребность: визуализация данных. На приведенном выше рисунке мы видим, что размеры изображения и матрицы признаков могут соответствовать друг другу, то есть признак соответствует вектору признаков и оси координат. Следовательно, можно визуализировать матрицы признаков с тремя измерениями и ниже, что может помочь нам быстро понять распределение данных, в то время как матрицы признаков с более чем тремя измерениями визуализировать нельзя, а природу данных понять сложнее.

Во-вторых, алгоритм уменьшения размерности в sklearn

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

2.1 PCA & SVD

В процессе уменьшения размерности мы будем уменьшать количество признаков, а значит удалять данные.Чем меньше данных, тем меньше информации может получить модель, и это может повлиять на производительность модели. В то же время в многомерных данных должны быть какие-то признаки без эффективной информации (например, шум) или какие-то признаки с информацией, которая повторяется с другими признаками (например, некоторые признаки могут быть линейно связаны). Мы надеемся найти способ, который поможет нам измерить объем информации, которую несут функции, чтобы мы могли уменьшить количество функций, сохраняя при этом большую часть эффективной информации в процессе уменьшения размерности.Функции исходной функции объединяются. , а объекты с недействительной информацией удаляются и т. д. — постепенно создавайте новую матрицу признаков, которая может представлять большую часть информации исходной матрицы признаков и меньше признаков.

  • И PCA, и методы выбора признаков являются частью разработки признаков, чем они отличаются?
  • Существует три способа разработки признаков: извлечение признаков, создание признаков и выбор признаков. Если вы внимательно посмотрите на приведенный выше пример уменьшения размерности и выбор функций, который мы объяснили на прошлой неделе, заметите ли вы какую-либо разницу?
  • Выбор функций заключается в выборе функций, которые несут наибольшую информацию из существующих функций. После выбора функции по-прежнему можно интерпретировать. Мы все еще знаем, где находится функция в исходных данных и что она означает в исходных данных.
  • PCA, с другой стороны, сжимает существующие функции, и функции после уменьшения размерности не являются какими-либо функциями в исходной матрице функций, а новыми функциями, объединенными некоторым образом. Вообще говоря, до того, как будет сгенерирована новая матрица признаков, мы не можем знать, какой тип нового вектора признаков установил PCA.После того, как новая матрица признаков сгенерирована, она не читаема, и мы не можем судить о том, соответствуют ли признаки новая матрица признаков получена из исходных данных.Хотя новые признаки содержат информацию исходных данных, они больше не являются значениями, представленными исходными данными. Таким образом, алгоритм уменьшения размерности, представленный PCA, является своего рода созданием признаков (созданием признаков или построением признаков).
  • Вполне возможно, что PCA обычно не подходит для моделей, которые исследуют взаимосвязь между признаками и метками (например, линейная регрессия), потому что взаимосвязь между необъяснимыми новыми признаками и метками не имеет смысла. В моделях линейной регрессии мы используем выбор признаков.