Análise componente independente (ICA) é usado para separar um linear mistura de estatisticamente independentes e o mais importante, não-Gaussiana † componentes nos seus constituintes. O modelo padrão para uma ACI sem ruído é
x=As
onde é o vetor de observação ou de dados, s é um sinal de origem / componentes originais (não-Gaussiano) e A é um vetor de transformação que define a mistura linear dos sinais constituintes. Normalmente, A e s são desconhecidos.xsAAs
Pré-processando
Existem duas estratégias principais de pré-processamento na ACI, a saber, centralização e clareamento / esferificação. Os principais motivos do pré-processamento são:
- Simplificação de algoritmos
- Redução da dimensionalidade do problema
- Redução do número de parâmetros a serem estimados.
- Os recursos de destaque do conjunto de dados não são facilmente explicados pela média e covariância.
Desde a introdução de G. Li e J. Zhang, "Sphering e suas propriedades", The Indian Journal of Statistics, vol. 60, Série A, Parte I, pp. 119-133, 1998:
Valores extremos, aglomerados ou outros tipos de grupos e concentrações próximas a curvas ou superfícies não planas são provavelmente os recursos importantes que interessam aos analistas de dados. Em geral, eles não são obtidos pelo mero conhecimento da média da amostra e da matriz de covariância. Nessas circunstâncias, é desejável separar as informações contidas nas matrizes média e covariância e nos obriga a examinar aspectos de nossos conjuntos de dados que não sejam de natureza bem compreendida. Centrar e esferitar é uma abordagem simples e intuitiva que elimina as informações de covariância média e ajuda a destacar estruturas além da correlação linear e das formas elípticas e, portanto, é frequentemente executada antes de explorar exibições ou análises de conjuntos de dados
1. Centralização:
E{x}xc=x−x¯¯¯x¯¯¯
2. Clareamento:
E{xcxTc}=I
Σˆ=C.xcxTc
Cx
xw=Σˆ−1/2xc
I
s = RandomReal[{-1, 1}, {2000, 2}];
A = {{2, 3}, {4, 2}};
x = s.A;
whiteningMatrix = Inverse@CholeskyDecomposition[Transpose@x.x/Length@x];
y = x.whiteningMatrix;
FullGraphics@GraphicsRow[
ListPlot[#, AspectRatio -> 1, Frame -> True] & /@ {s, x, y}]
sA
xw=AwswAw
E{xwxTw}=E{Awsw(Awsw)T}=AwE{swsTw}ATw=AwATw=I
siA
Se, após a transformação, houver valores próprios próximos de zero, eles poderão ser descartados com segurança, pois são apenas ruídos e dificultam a estimativa devido ao "superaprendizado".
3. Outro pré-processamento
Pode haver outras etapas de pré-processamento envolvidas em certos aplicativos específicos que são impossíveis de abordar em uma resposta. Por exemplo, eu vi alguns artigos que usam o log da série cronológica e outros que filtram a série cronológica. Embora possa ser adequado para suas aplicações / condições específicas, os resultados não são transferidos para todos os campos.
† Acredito que seja possível usar o ICA se no máximo um dos componentes for gaussiano, embora não encontre uma referência para isso no momento.
Por que é chamado de "sphering"?
nn{-1,1}
NormalDistribution[]
O primeiro é a densidade articular de dois gaussianos não correlacionados, o segundo em transformação e o terceiro após o clareamento. Na prática, apenas os passos 2 e 3 são visíveis.