Многомерная полиномиальная регрессия (предпочтительно C / C++, Java или Scala)



Учитывая набор (N+1)-мерных вещественных векторов с N независимыми и 1 зависимыми значениями, я хотел бы вычислить полином степени 1 (линейный), 2 (квадратичный) или выше, который обеспечивает достаточно хорошее соответствие (например, как определено ошибкой наименьших квадратов). Другими словами, при применении к элементам коллекции полином должен сопоставлять независимые значения каждого из них с соответствующим зависимым значением (с некоторой разумной погрешностью).



Я ожидаю, что размерность независимых переменных должна находиться в диапазоне 2..8, и работать на сборах 20..200 элементов. Я надеюсь вписать многочлен в миллисекунды, а не в секунды. :- )



Я быстро нашел алгоритмы полиномиальной регрессии для одномерных данных, но не смог придумать ничего практического для многомерных данных. Меня интересуют в первую очередь описания алгоритмов или исходный код. Есть указания?
653   2  

2 ответов:

Вы можете изучить платформуWeka data mining and machine learning - она чрезвычайно всеобъемлюща и включает в себя все виды различных алгоритмов регрессии.

Большим бонусом является то, что все это с открытым исходным кодом, так что вы также можете изучить код, если хотите.

Я искал тот же самый код и нашел два хороших примера этого.

См.net.источник-горн.openforecast

В частности, смотрите класс Regressionmodelв качестве начальной точки

И простая реализация одного класса, которая предназначена для гораздо больших наборов данных, чем вы упомянули

Http://blog.locut.us/2009/11/14/polynomial-regression-on-a-large-dataset-in-java/

Comments

    Ничего не найдено.