0
$\begingroup$

My problem is essentially a 'blind source separation' problem. I have 3 non-orthogonal sources (or basis functions) and N random linear combinations (mixes) of said sources. My problem is to obtain the sources from the mixes.

Figure A shows the sources, B shows the mixes.

Approaches taken: 1) PCA- I tried PCA on the mixes (fig.C), but the issue is that PCA will only give orthogonal bases, while my sources/bases are non-orthogonal. This issue with PCA is shown in figure D, where the data is clearly described by 2 non-orthogonal basis, but PCA (the solid lines) cant reconstruct them!

2) Factor Rotation - I tried applying some solutions form Factor Analysis (not my forte). The promax rotation (matlab: nw = rotatefactors(cov,'method','promax') ) is shown in fig. D with the dashed lines. As far as I can tell, factor rotation works with the principal components, not the original matrix and thus I have no idea how it could reconstruct the right basis. I think this only works with factor matrices, not with generic ones...

3) ICA - I tried overdetermined ICA with the fastICA algorithm (also not my forte, but I think I understand it better). I was hoping this would work since independent components (ICs) are non orthogonal. The solution is shown in fig.E. While the ICs are indeed nonorthogonal, they are NOT my original sources :-(

Any other potential tips or leads or solutions would be greatly appreciated.

figure

Thanks!

$\endgroup$
1
$\begingroup$

Is E truly showing the ICA activity, rather than the reconstructed signal (activity * component weights)? I think your ICA is actually fairly good, it's just that fastICA returned filters giving some of your component activations the "wrong" polarity. IC activities are sign ambiguous, as the sign of the reconstructed sources depends on both the sign of the activations and their corresponding maps. (I hope this is clear, or do I need to give an example?)

Plot the reconstructed signal (activity * component weights) and see if it checks out. If I'm right, in the reconstructed signal, the blue line will look like the blue line in the original sources, and the plot should look quite like the original sources in general.

$\endgroup$
0
$\begingroup$

Have you tried Varimax rotation? https://en.wikipedia.org/wiki/Varimax_rotation

It will show the makeup of each of the factors.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.