Sono nuovo nel campo dell'apprendimento automatico, ma ho fatto la mia parte di elaborazione del segnale. Per favore fatemi sapere se questa domanda è stata etichettata erroneamente.
Ho dati bidimensionali che sono definiti da almeno tre variabili, con un modello altamente non lineare troppo complicato per simulare.
Ho avuto vari livelli di successo nell'estrarre i due componenti principali dai dati usando metodi come PCA e ICA (dalla libreria Python Scikit-Learn), ma sembra che questi metodi (o almeno, questa implementazione dei metodi) siano limitati per estrarre tanti componenti quante sono le dimensioni nei dati, ad esempio 2 componenti da una nuvola di punti 2D.
Quando si tracciano i dati, è chiaro all'occhio allenato che ci sono tre diverse tendenze lineari, le tre linee di colore mostrano le direzioni.
Quando si utilizza PCA, il componente principale è allineato a una delle linee di colore e l'altro è a 90 °, come previsto. Quando si utilizza ICA, il primo componente è allineato con la linea blu e il secondo è da qualche parte tra il rosso e il verde. Sto cercando uno strumento in grado di riprodurre tutti e tre i componenti nel mio segnale.
EDIT, Ulteriori informazioni: sto lavorando in un piccolo sottoinsieme di un piano di fase più grande. In questo piccolo sottoinsieme, ogni variabile di input produce un cambiamento lineare sul piano, ma la direzione e l'ampiezza di questo cambiamento non è lineare e dipende da dove esattamente sto lavorando sul piano più grande. In alcuni punti, due delle variabili possono essere degenerate: producono un cambiamento nella stessa direzione. per esempio, supponiamo che il modello dipenda da X, Y e Z. Una variazione nella variabile X produrrà una variazione lungo la linea blu; Y provoca una variazione lungo la linea verde; Z, lungo quello rosso.