Решение линейной и нелинейной регрессии для векторов

У меня есть проблема в виде Ab = c, где A — неизвестная матрица M x M, а b — вектор M x 1, а c — вектор M x 1. У меня есть много образцов b и c (переопределенная проблема), и я хочу найти «лучший» A. Какие-нибудь предложения библиотек, которые могут легко решить эту регрессию?

Как насчет нелинейной, но полиномиальной модели? То есть какое-то уравнение в виде:

[c_0 c_1 … c_M] = [1 b_0 b_1 … b_M … b_0 ^ k b_1 ^ k .. b_M ^ k] A

Где k — полиномиальный порядок, A — теперь матрица M x k.

2

Решение

Нашел хорошее решение: DLIB решает эту проблему довольно хорошо. Здесь есть пример:
http://dlib.net/least_squares_ex.cpp.html

Примечание: если вам нужно использовать матрицы, DLIB по-прежнему требует, чтобы данные сохранялись как векторы. То есть, если вы решаете Ab = c и A является матрицей 3×3, параметр_vector в приведенном выше примере должен быть typedef matrix<double,9,1> parameter_vector; или это не скомпилируется.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]