sklearn.random_projection#

Трансформеры случайного проецирования.

Случайные проекции — это простой и вычислительно эффективный способ уменьшения размерности данных путем обмена контролируемого количества точности (как дополнительной дисперсии) на более быстрое время обработки и меньшие размеры моделей.

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

Основной теоретический результат, лежащий в основе эффективности случайного проецирования, это Лемма Джонсона-Линденштраусса (цитата из Википедии):

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

Руководство пользователя. См. Случайная проекция раздел для дальнейших деталей.

GaussianRandomProjection

Уменьшение размерности с помощью гауссовской случайной проекции.

SparseRandomProjection

Уменьшение размерности с помощью разреженного случайного проецирования.

johnson_lindenstrauss_min_dim

Найти 'безопасное' количество компонентов для случайного проецирования.