математиканаука за даннилинейна алгебрамашинно обучение
Главни компоненти срещу сингулярни стойности
Въпреки че специалистите по данни често срещат и двата термина при намаляване на размерността, главните компоненти описват посоките на максимална дисперсия в набор от данни, докато сингулярните стойности измерват величината на мащабиране по тези геометрични оси по време на матричното разлагане. Разбирането на техния математически мост е от съществено значение за овладяване на алгоритми като PCA и SVD.
Акценти
Главните компоненти определят пространствената ориентация на дисперсията на данните, докато сингулярните стойности диктуват мащаба.
Директен математически мост ги свързва само когато основната матрица от данни е правилно центрирана по средните стойности.
SVD изчислява сингулярни стойности директно, осигурявайки много по-числово стабилен път за намиране на главните компоненти.
Главните компоненти трябва да са ортогонални една на друга, докато сингулярните стойности са строго неотрицателни реални числа.
Какво е Основни компоненти?
Ортогоналните вектори, които сочат в посоките на максимална дисперсия, помагат за опростяване и кондензиране на високомерни данни.
Те съответстват директно на собствените вектори на ковариационната матрица на набора от данни.
Първият главен компонент отчита възможно най-голямата дисперсия в данните.
Всеки следващ компонент е строго ортогонален на предходните, което осигурява нулева корелация.
Те зависят силно от мащабирането на данните, което прави центрирането на средните стойности критична стъпка от предварителната обработка.
Инженерите ги използват, за да проектират високомерни пространства надолу към по-ниски измерения, като същевременно запазват информацията.
Какво е Сингулярни стойности?
Диагоналните елементи на матрица със сингулярни стойности, представляващи абсолютните коефициенти на мащабиране на линейна трансформация.
Те се изчисляват като положителни квадратни корени от собствените стойности на матрица, умножени по нейната транспонирана стойност.
Всяка реална матрица, независимо дали е квадратна или правоъгълна, притежава уникален набор от сингулярни стойности.
Те са конвенционално подредени в низходящ ред по диагонала на матрицата Сигма в SVD.
Единична стойност нула показва, че матрицата е с дефицит на ранг или е единична.
Те количествено определят геометричното разтягане или изкривяване, причинено от линейна трансформация върху единична сфера.
Сравнителна таблица
Функция
Основни компоненти
Сингулярни стойности
Математически произход
Собствени вектори на ковариационната матрица
Фактори на матрично разлагане (SVD)
Геометрична интерпретация
Посоки на максимална дисперсия
Мащабиране на дължини на главните оси
Изискване за данни
Изисква данни, центрирани около средната стойност, за статистическа значимост
Отнася се за всяка произволна правоъгълна или квадратна матрица
Връзка със собствените стойности
Равно на собствените стойности на ковариационната матрица
Равно на квадратните корени от собствените стойности на матричното произведение
Основно приложение
Намаляване на размерността и извличане на характеристики
Матрична инверсия, псевдоинверсно изчисление и нискорангова апроксимация
Зависимост от мащаба
Значително променени чрез изместване или мащабиране на данни
Присъщо свойство на специфичната матрица, която се разлага
Физическа интерпретация
Оси на елипсоид от облак от данни
Фактори на разтягане на трансформирана единична сфера
Подробно сравнение
Основна дефиниция и концепция
Главните компоненти представляват специфичните посоки, където данните се променят най-много, действайки като нови оси за оптимизирана координатна система. За разлика от тях, сингулярните стойности са скаларни величини, които показват колко една матрица разтяга или компресира пространството по тези оси. Докато едната ви дава ориентацията на облака от данни, другата измерва величината на самата трансформация.
Математическо изчисление
За да намерите главните компоненти традиционно, трябва да изчислите собствените вектори на ковариационната матрица на набор от данни. Сингулярните стойности се получават от разлагане на сингулярни стойности, където всяка матрица се разделя на три отделни компонентни матрици. Когато центрирате данните си чрез изваждане на средната стойност, квадратът на сингулярна стойност, разделен на размера на извадката минус едно, е идеално равен на дисперсията на тази главна компонента.
Чувствителност към предварителната обработка на данни
Главните компоненти се променят драстично, ако забравите да центрирате или стандартизирате данните си, тъй като статистическата дисперсия зависи до голяма степен от началната точка и скалите на променливите. Сингулярните стойности обаче са фундаментално алгебрично свойство на предоставената сурова матрица. Те не се интересуват от статистически допускания, освен ако потребителят умишлено първо не изгради центрирана ковариационна матрица.
Практически приложения в индустрията
Анализаторите на данни разчитат на главни компоненти, за да визуализират сложни, многомерни набори от данни върху прости двумерни графики. От друга страна, инженерите по компютърно зрение използват сингулярни стойности за компресиране на изображения и системи за препоръки чрез нискорангови матрични апроксимации. SVD всъщност е предпочитаният числен двигател зад PCA, защото изчисляването на сингулярни стойности избягва загубата на точност, която възниква при изграждането на ковариационна матрица.
Предимства и Недостатъци
Основни компоненти
Предимства
+Отличен за визуализация на данни
+Елиминира мултиколинеарността
+Ефективно намалява шума
+Опростява моделите за машинно обучение
Потребителски профил
−Липсва пряко физическо значение
−Силно чувствителен към отклонения
−Изисква строга предварителна обработка
−Възниква загуба на информация
Сингулярни стойности
Предимства
+Работи с всяка матрица
+Числено силно стабилен
+Идеален за нискорангова апроксимация
+Разкрива ранга на матрицата мигновено
Потребителски профил
−Абстрактна математическа концепция
−Изчислително скъпо за огромни матрици
−Липсва присъщ статистически контекст
−Интерпретацията изисква линейна алгебра
Често срещани заблуди
Миф
Главните компоненти и сингулярните стойности са напълно независими понятия.
Реалност
Те са дълбоко преплетени чрез центрирането на данните. Когато от матрица с данни се извади средната стойност, нейните сингулярни стойности са право пропорционални на квадратните корени от дисперсиите по главните компоненти.
Миф
Винаги трябва да изчислявате ковариационната матрица, за да намерите главните компоненти.
Реалност
Съвременният софтуер рядко изчислява ковариационната матрица, защото това въвежда числени грешки при закръгляване. Вместо това, алгоритмите изпълняват SVD директно върху матрицата с данни, извличайки главните компоненти много по-безопасно и ефективно.
Миф
Единичните стойности могат да бъдат отрицателни, ако данните показват отрицателна корелация.
Реалност
Сингулярните стойности по дефиниция са положителните квадратни корени от собствени стойности на симетрична матрица. Те винаги са неотрицателни реални числа, представляващи дължини или коефициенти на разтягане, независимо от корелациите в оригиналните данни.
Миф
Добавянето на константна стойност към всички точки от данни променя еднакво сингулярните стойности и главните компоненти.
Реалност
Изместването на данните с константа променя сингулярните стойности, защото суровите записи в матрицата се променят. Тъй като обаче главните компоненти разчитат на ковариационната матрица, която по своята същност изважда средната стойност, изместването на данните оставя главните компоненти напълно непроменени.
Миф
Първият главен компонент винаги улавя цялата ценна информация.
Реалност
Първият компонент улавя само максималната дисперсия по една ос. Ако данните ви са разпределени сферично или съдържат критични нелинейни модели, един линеен компонент може да пропусне най-важните структури изцяло.
Често задавани въпроси
Как се преобразува сингулярна стойност в дисперсия на главния компонент?
Ако имате матрица от данни със средно-центрирана стойност и даден брой извадки, повдигате на квадрат сингулярната стойност и я делите на размера на извадката минус едно. Тази математическа операция дава точната собствена стойност на ковариационната матрица, която представлява дисперсията, обхваната от този специфичен главен компонент.
Можете ли да извършите PCA без да използвате SVD?
Да, можете да намерите главните компоненти, като изрично изчислите ковариационната матрица и след това намерите нейните собствени вектори чрез класическо разлагане на собствени числа. Този подход обаче е числено по-малко стабилен и по-податлив на грешки с плаваща запетая от метода SVD, поради което SVD е индустриалният стандарт.
Защо центрирането на данни е толкова важно за главните компоненти?
PCA има за цел да максимизира дисперсията около центъра на облака от данни. Ако не изместите средната стойност на данните към началото на координатната система, първата главна компонента просто ще сочи от началото към центъра на клъстера от данни, като не успява да улови вътрешната геометрична структура на дисперсията.
Какво се случва, ако една матрица има сингулярна стойност нула?
Нулева сингулярна стойност означава, че матрицата е с дефицит на ранг и не може да бъде инвертирана. Геометрично това означава, че линейната трансформация свива поне едно измерение напълно, свивайки обема в равнина или линия.
Главните компоненти същите ли са като собствените вектори?
Те са тясно свързани, но се различават по терминология. Главните компоненти са действителните проектирани точки от данни по новите оси, въпреки че много специалисти разговорно използват термина, за да обозначат главните посоки, които всъщност са собствените вектори на ковариационната матрица.
Кое е по-добро за компресия на изображения, PCA или SVD?
SVD обикновено е предпочитан и по-директен метод за компресиране на изображения чрез техника, наречена нискорангова апроксимация. Тъй като изображението вече е структурирана матрица от пиксели, а не статистическа извадка от независими наблюдения, SVD отрязва най-малко значимите сингулярни стойности, за да намали размера на файла безпроблемно.
Колко главни компонента трябва да запазя в един модел?
Често срещан подход е да се разгледа графика на сипея или да се изчисли кумулативната обяснена дисперсия, използвайки сингулярните стойности. Повечето специалисти по обработка на данни се стремят да запазят достатъчно компоненти, за да обхванат от 80% до 95% от общата дисперсия, в зависимост от нивата на шум на конкретния проект.
Променят ли се сингулярните стойности, ако транспонирате матрицата?
Не, транспонирането на матрица не променя нейните сингулярни стойности. Ненулевите сингулярни стойности на матрицата и нейната транспонирана матрица остават напълно идентични, защото собствените стойности на съответните им векторни произведения са абсолютно еднакви.
Каква е разликата между собствена стойност и сингулярна стойност?
Собствените стойности са дефинирани само за квадратни матрици и могат да бъдат комплексни числа, представляващи как един вектор се мащабира, без да променя посоката си. Сингулярните стойности се отнасят за всяка матрица, винаги са реални и неотрицателни и представляват максималното разтягане на единична сфера при трансформация.
Решение
Изберете главни компоненти, когато основната ви цел е да интерпретирате, визуализирате или редуцирате характеристиките на статистически набор от данни въз основа на дисперсията. Изберете сингулярни стойности, когато трябва да решавате линейни системи, да компресирате матрици или да извършвате стабилни числени изчисления, без да се притеснявате за предварителна статистическа обработка.