Я новичок в области машинного обучения, но сделал свою долю обработки сигналов. Пожалуйста, дайте мне знать, если этот вопрос был неправильно маркирован.
У меня есть двумерные данные, которые определяются как минимум тремя переменными, а модель с сильно нелинейной моделью слишком сложна для моделирования.
У меня был разный уровень успеха при извлечении двух основных компонентов из данных с использованием таких методов, как PCA и ICA (из библиотеки Python Scikit-Learn), но кажется, что эти методы (или, по крайней мере, эти реализации методов) ограничены для извлечения столько данных, сколько имеется измерений в данных, например, 2 компонента из облака точек 2D.
При построении данных обученному глазу ясно, что есть три различных линейных тренда, три цветных линии показывают направления.
При использовании PCA основной компонент выравнивается по одной из цветных линий, а другой находится под углом 90 °, как и ожидалось. При использовании ICA первый компонент выравнивается по синей линии, а второй находится где-то между красной и зеленой. Я ищу инструмент, который мог бы воспроизвести все три компонента в моем сигнале.
РЕДАКТИРОВАТЬ, Дополнительная информация: я здесь работаю в небольшом подмножестве большей фазовой плоскости. В этом небольшом подмножестве каждая входная переменная производит линейное изменение на плоскости, но направление и амплитуда этого изменения нелинейны и зависят от того, где именно на большей плоскости, с которой я работаю. В некоторых местах две переменные могут быть вырожденными: они вызывают изменения в одном и том же направлении. например, скажем, модель зависит от X, Y и Z. Изменение переменной X приведет к изменению вдоль синей линии; Y вызывает изменение вдоль зеленой линии; Z, вдоль красного.