📊 PCA, t-SNE или UMAP: что внутри «волшебных» алгоритмов?
📊 PCA, t-SNE или UMAP: что внутри «волшебных» алгоритмов? Представьте, что вам нужно нарисовать 100-мерный куб на листе бумаги. Как быть? Именно это делают алгоритмы снижения размерности — превращают многомерные данные в понятную картинку. Без них нейросети, кластеризация и визуализация данных были бы слепыми. 🧮 PCA (Principal Component Analysis) Самый старший и простой. Работает как проектор: берёт данные и поворачивает их так, чтобы в новом «плоском» виде было видно самое главное (оси с максимальным разбросом). Минус — видит только прямые линии (линейно). Сложные узоры вроде спиралей или колец не распознаёт. Зато работает за секунды даже на миллионах строк. 🌀 t-SNE Хитрее. Он смотрит на каждую точку и спрашивает: «Кто мои соседи?» Близкие точки в исходном пространстве остаются рядом на картинке. Главный «рычажок» — perplexity (обычно 5–50): он решает, сколько соседей учитывать при оценке расстояний. Минус — тормозит на больших данных (часы вместо минут) и каждый запуск даёт чуть разную картинку. 🚀 UMAP Новичок, объединивший лучшее. Строит «карту друзей» (граф ближайших соседей) и аккуратно сжимает её на плоскость. Работает в 10–100 раз быстрее t-SNE, сохраняя и общую структуру данных, и мелкие детали. Именно UMAP сегодня используют в анализе генома, изображений и текстов. Итог: PCA — для быстрого разведочного взгляда, t-SNE — для красивых и аккуратных визуализаций на небольших данных, UMAP — для скорости и работы с реальными датасетами на миллионы строк. А вы какой алгоритм используете для визуализации данных? Может, пробовали UMAP на своих проектах? 👇 #DataScience #МашинноеОбучение #ML