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