我是机器学习领域的新手,但我已经完成了信号处理方面的工作。如果这个问题被贴错标签,请告诉我。
我有由至少三个变量定义的二维数据,高度非线性的模型太复杂而无法模拟。
我在使用 PCA 和 ICA(来自 python 库 Scikit-Learn)等方法从数据中提取两个主要成分方面取得了不同程度的成功,但似乎这些方法(或至少,这些方法的实现)是有限的提取与数据中的维度一样多的组件,例如,从 2D 点云中提取 2 个组件。
在绘制数据时,受过训练的眼睛很清楚存在三种不同的线性趋势,三种颜色的线表示方向。
使用 PCA 时,主要组件与其中一条颜色线对齐,另一条与预期的 90° 对齐。使用 ICA 时,第一个分量与蓝线对齐,第二个分量介于红线和绿线之间。我正在寻找一种可以重现信号中所有三个分量的工具。
编辑,附加信息:我在这里工作在更大相平面的一小部分。在这个小子集中,每个输入变量都会在平面上产生线性变化,但这种变化的方向和幅度是非线性的,并且取决于我正在工作的更大平面上的确切位置。在某些地方,其中两个变量可以退化:它们产生相同方向的变化。例如,假设模型依赖于 X、Y 和 Z。变量 X 的变化将产生沿蓝线的变化;Y 引起沿绿线的变化;Z,沿着红色的那个。