Статья подготовлена для студентов курса «Data Scientist» в образовательном проекте OTUS. Как известно, уменьшение размерности применяется в машинном обучении в двух целях: для визуализации (чтобы данные с большим количеством признаков можно было отобразить в двух- или трёхмерном пространстве) и для уменьшения количества переменных. Второе применение является более фундаментальным, базовым и основным. Здесь уместно вспомнить курс школьной математики, а точнее, систему уравнений, в которой переменных было больше, чем самих уравнений. И решить его в школьные годы мы, разумеется, не могли. Похожую аналогию можно провести и с задачами по Machine Learning, когда в количественном отношении данных меньше, чем признаков. Обучить такую модель достаточно сложно, да и хорошо работать она, скорее всего, не будет. Вдобавок ко всему, при увеличении размерности задачи данные приобретают сложно анализируемый для модели характер. Продолжая говорить о базовых вещах, нельзя не вспомнить о понятии м