В курсе машинного обучения я узнал, что одним из распространенных применений PCA ( анализ основных компонентов ) является ускорение других алгоритмов машинного обучения. Например, представьте, что вы тренируете модель логистической регрессии. Если у вас есть обучающий набор для i от 1 до n, и оказывается, что размер вашего вектора x очень велик (скажем, размерности), вы можете использовать PCA, чтобы получить меньший размер (скажем, k измерений) вектор признаков z. Затем вы можете тренировать свою модель логистической регрессии на тренировочном наборе ( z ( i ) , y ( i ) для меня от 1 до п. Обучение этой модели будет быстрее, потому что ваш вектор характеристик имеет меньшие размеры.
Однако я не понимаю, почему вы не можете просто уменьшить размер вашего векторного элемента до k размеров, просто выбрав k из ваших элементов случайным образом и исключив все остальное.
Векторы z - это линейные комбинации ваших векторов объектов. Поскольку векторы z ограничены k-мерной поверхностью, вы можете записать значения исключенных элементов ak как линейную функцию от k оставшихся значений признаков, и, таким образом, все значения z могут быть сформированы линейными комбинациями ваших k элементов. Так не должна ли модель, обученная на обучающем наборе с исключенными функциями, иметь такую же мощность, как и модель, обученная на обучающем наборе, размер которого был уменьшен PCA? Зависит ли это от типа модели и зависит ли она от какой-либо линейной комбинации?