Меня смущает отбеливание ZCA и нормальное отбеливание (которое получается путем деления главных компонентов на квадратные корни собственных значений PCA). Насколько мне известно,
где - собственные векторы PCA.
Каковы виды использования ZCA отбеливания? Каковы различия между нормальным отбеливанием и отбеливанием ZCA?
pca
dimensionality-reduction
image-processing
RockTheStar
источник
источник
Ответы:
Пусть ваши (центрированные) данные будут храниться в матрице с характеристиками (переменными) в столбцах и точками данных в строках. Пусть ковариационная матрица имеет собственные векторы в столбцах и собственные значения на диагонали , так что .n×d X d n C=X⊤X/n E D C=EDE⊤
Тогда то, что вы называете «обычным» преобразованием для отбеливания PCA, задается как , см., Например, мой ответ в статье Как отбеливать данные с помощью Анализ главных компонентов?WPCA=D−1/2E⊤
Однако эта отбеливающая трансформация не уникальна. Действительно, отбеленные данные останутся побеленными после любого поворота, что означает, что любое с ортогональной матрицей также будет отбеливающим преобразованием. В том, что называется отбеливание ZCA, мы принимаем (собранные вместе собственные векторы ковариационной матрицы) в качестве этой ортогональной матрицы, то естьW=RWPCA R E
Одним из определяющих свойств преобразования ZCA ( иногда также называемого «преобразованием Махаланобиса») является то, что оно приводит к тому, что отбеленные данные максимально приближены к исходным данным (в смысле наименьших квадратов). Другими словами, если вы хотите минимизировать условии отбеливания , вам следует взять . Вот 2D иллюстрация:∥X−XA⊤∥2 XA⊤ A=WZCA
Левый подпункт показывает данные и их основные оси. Обратите внимание на темную штриховку в верхнем правом углу распределения: она отмечает его ориентацию. Строки показаны на втором вспомогательном участке: это векторы, на которые проецируются данные. После отбеливания (ниже) распределение выглядит округлым, но обратите внимание, что оно также выглядит повернутым - темный угол теперь находится на восточной стороне, а не на северо-восточной стороне. Строки показаны на третьем участке (обратите внимание, что они не ортогональны!). После отбеливания (ниже) распределение выглядит округлым и ориентируется так же, как и первоначально. Конечно, можно получить от PCA отбелить данные в ZCA отбелить данные путем вращения с .WPCA WZCA E
Термин "ZCA", кажется, был введен в Bell и Sejnowski 1996в контексте анализа независимых компонентов и означает «анализ нулевой фазы компонентов». Смотрите там для более подробной информации. Скорее всего, вы столкнулись с этим термином в контексте обработки изображений. Оказывается, что при применении к группе естественных изображений (пиксели как объекты, каждое изображение как точка данных), главные оси выглядят как компоненты Фурье увеличивающихся частот, см. Первый столбец их рисунка 1 ниже. Так что они очень «глобальные». С другой стороны, строки преобразования ZCA выглядят очень «локально», см. Второй столбец. Это именно потому, что ZCA пытается преобразовать данные как можно меньше, и поэтому каждая строка должна быть лучше близка к одной исходной базисной функции (которая будет изображением с одним активным пикселем). И это возможно достичь,
Обновить
Дополнительные примеры ZCA-фильтров и изображений, преобразованных с помощью ZCA, приведены в Krizhevsky, 2009, Изучение множества слоев функций из Tiny Images , см. Также примеры в ответе @ bayerj (+1).
Я думаю, что эти примеры дают представление о том, когда отбеливание ZCA может быть более предпочтительным, чем отбеливание по методике PCA. А именно, изображения , окрашенные ZCA, все еще напоминают нормальные изображения , тогда как изображения , окрашенные PCA, не похожи на обычные изображения. Это, вероятно, важно для таких алгоритмов, как сверточные нейронные сети (например, используемые в работе Крижевского), которые обрабатывают соседние пиксели вместе и поэтому в значительной степени полагаются на локальные свойства естественных изображений. Для большинства других алгоритмов машинного обучения абсолютно не важно, отбелены ли данные с помощью PCA или ZCA.
источник
При заданном собственном разложении ковариационной матрицы где является диагональной матрицей собственных значений обычное отбеливание приводит к преобразованию данных в пространство с диагональной ковариационной матрицей: (с некоторым неправильным обозначением.) Это означает, что мы можем диагонализировать ковариацию, преобразовывая данные в соответствии с
Это обычное отбеливание с помощью PCA. Теперь ZCA делает что-то другое - он добавляет небольшой эпсилон к собственным значениям и преобразует данные обратно. Вот несколько фотографий из набора данных CIFAR до и после ZCA.
До ZCA:
После ZCA сϵ=0.0001
После ZCA сϵ=0.1
Для данных о зрении высокочастотные данные обычно находятся в пространстве, охватываемом более низкими собственными значениями. Следовательно, ZCA - это способ усилить их, приводя к более заметным краям и т. Д.
источник