Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
gascount
7 лет назад

Элементы регрессионного анализа в прикладном программировании

  Это про рояль в кустах для прикладных программистов. 

Некоторое время назад в категории opensource-проектов появился написанный на Object Pascal математический модуль DMath (автор: Dr Jean DEBORD, Laboratoire de Pharmacologie, Faculte de Medecine 2 Rue du Docteur Marcland, 87025 Limoges, France). В этом модуле имеется много чего интересного (решение нелинейных уравнений, численный расчет определенных интегралов и пр.), но самый-самый писк - реализованные в нем методы регрессионного анализа. Без которых – натурально - как без рук, если необходимо найти математическую зависимость в слабо упорядоченном ворохе статистических данных или промоделировать сложный физический процесс. 

  Таскать из проекта в проект сто четырнадцать файлов, из которых состоит модуль, как-то не комильфо. Да и область применения изначально ограничена, по сути, IDE Delphi, Lazarus и CodeTyphon. Однако, часть процедур достаточно легко адаптируется к автономному использованию, после чего портирование исходного кода на любой другой язык программирования не вызывает затруднений. 

В результате некоторых телодвижений был сформирован представленный ниже джентльменский набор для использования в прикладном софте (в том числе и для web-реализации). 

 Самое элементарное – линейная регрессия (здесь и далее на картинках расчетное выражение плюс конкретный пример расчета): 

  Листинг (PHP) можно взять здесь. Онлайн-расчет можно выполнить здесь

Полиномиальная регрессия (по факту это наиболее часто используемый метод регрессионного анализа): 

  Листинг (PHP + Object Pascal) можно взять здесь. Онлайн-расчет можно выполнить здесь

Степенная регрессия: 

  Листинг (PHP) можно взять здесь. Онлайн-расчет можно выполнить здесь

Гамма-регрессия (наверное, единственный корректный вариант аппроксимации при очень резком перепаде значений функции): 

  Листинг (PHP) можно взять здесь. Онлайн-расчет можно выполнить здесь

Я не силен в экономике, торговле или социологии, но для моделирования физических процессов представленный набор методов регрессионного анализа является достаточным. И комфортным в использовании. 

Кстати, имеется реализация этих методов отдельным калькулятором на «чистом» JavaScript (за исключением гамма-регрессии) – здесь. Это прикол, конечно, но работает полноценно. 

PS. Заставка: DAZ 3D Studio + Bryce + PaintShop. 


1
0.000 GOLOS
На Golos с July 2017
Комментарии (0)
Сортировать по:
Сначала старые