2015-02-28 4 views
3

При применении техники PCA на обучающем наборе мы находим матрицу коэффициентов A, которая является основным компонентом. Поэтому, когда мы находимся на стадии обучения, мы находим этих директоров и проецируем их на данные. мой вопрос заключается в том, применяем ли мы те же принципы или находим новых принципов для данных на стадии тестирования?

Я думаю, что в ответ вот так: если мы используем его для уменьшения размерности, мы должны найти новые принципы. но если мы используем его для извлечения функций (например, для извлечения данных для ЭЭГ), мы должны использовать старую (которая для данных на этапе обучения), насколько мое мышление верно?

BS: Я не прошу и ответить на вопрос, в то же время, но сказать, что я думаю, чтобы показать точки непонимания, и принять мнение от экспертовPCA в машинном обучении

+0

Непонятный вопрос. Что вы подразумеваете под «новыми принципами» и «старыми принципами»? Можете ли вы уточнить? – eigenchris

+0

Я считаю, что вопрос: вы вычисляете главные компоненты векторов на обучающем наборе, а затем * используйте их * с набором тестов (или новыми наблюдениями в реальном приложении) * или * принимаете ли вы свой набор тестов/новые наблюдения и * перечислить * главные компоненты векторов. – ely

+2

Ответ, как для уменьшения размерности, так и для извлечения элементов, заключается в том, что вы никогда не перекомпилируете новый набор базовых векторов для данных тестирования или новых наблюдений. Базовые векторы, которые вы изучаете, - это модель, которую вы изучаете, и используете эту модель для любых новых входящих данных (будь то тестовые данные или данные реального мира). – ely

ответ

0

PCA является одним из художественных векторных преобразований. Цель состоит в уменьшении размерности. Это своего рода слияние коррелированных функций. Если у вас есть функции, такие как вес и размер и большинство объектов, когда что-то тяжелое, также большой. Он заменяет эти функции одним weight_and_size. Он уменьшает шум, а также составляет e.q. нейронная сеть меньше.

Это позволяет сети решить проблему за более короткое время (уменьшая размер сети). Это также должно улучшить обобщение.

Так что, если вы обучили свою сеть с вектором объектов сжатым с помощью PCA, вам также нужно проверить его с преобразованными данными. Просто потому, что он имеет столько же входов, сколько и сжатый вектор признаков. Вы также должны использовать точно такое же преобразование. Если сеть узнала, что первый вход weight_and_size, вы не можете поместить значение e.q. warm_and_colorful и ожидать хороших результатов.

0

Как PCA, так и PCR построены на данных обучения, а преобразование применяется для проверки эффективности (ошибки) оценки. С помощью этих двух методов вы получаете лучшие результаты, когда не используете только один набор учебных материалов, но выполняете K-fold Cross Validation, где вы делаете отдельный PCA для каждой складки и применяете преобразования к наборам тестов. Надеюсь, поможет!

Смежные вопросы