Экспоненциальная регрессия в python (шаг за шагом)


Экспоненциальная регрессия — это тип регрессии, который можно использовать для моделирования следующих ситуаций:

1. Экспоненциальный рост. Рост начинается медленно, а затем быстро и без ограничений ускоряется.

2. Экспоненциальный распад: распад начинается быстро, а затем замедляется, приближаясь все ближе и ближе к нулю.

Уравнение модели экспоненциальной регрессии имеет следующий вид:

у = аб х

Золото:

  • y: переменная ответа
  • x: прогнозируемая переменная
  • a, b: коэффициенты регрессии, которые описывают взаимосвязь между x и y.

В следующем пошаговом примере показано, как выполнить экспоненциальную регрессию в Python.

Шаг 1. Создайте данные

Во-первых, давайте создадим поддельные данные для двух переменных: x и y :

 import numpy as np

x = np. arange (1, 21, 1)
y = np. array ([1, 3, 5, 7, 9, 12, 15, 19, 23, 28,
              33, 38, 44, 50, 56, 64, 73, 84, 97, 113])

Шаг 2. Визуализируйте данные

Далее давайте создадим быструю диаграмму рассеяния, чтобы визуализировать связь между x и y :

 import matplotlib. pyplot as plt

plt. scatter (x,y)
plt. show () 

Из графика мы видим, что между двумя переменными существует четкая экспоненциальная модель роста.

Таким образом, представляется разумным использовать уравнение экспоненциальной регрессии для описания взаимосвязи между переменными, а не модель линейной регрессии.

Шаг 3. Подберите модель экспоненциальной регрессии.

Далее мы будем использовать функцию polyfit() для подбора модели экспоненциальной регрессии, используя натуральный логарифм y в качестве переменной отклика и x в качестве переменной-предиктора:

 #fit the model
fit = np. polyfit (x, np. log (y), 1)

#view the output of the model
print(fit)

[0.2041002 0.98165772]

На основании результата подобранное уравнение экспоненциальной регрессии можно записать следующим образом:

ln(y) = 0,9817 + 0,2041(x)

Применяя e к обеим частям, мы можем переписать уравнение следующим образом:

у = 2,6689 * 1,2264x

Мы можем использовать это уравнение для прогнозирования переменной ответа y на основе значения переменной-предиктора x . Например, если x = 12, мы прогнозируем, что y будет 30,897 :

у = 2,6689 * 1,2264 12 = 30,897

Бонус: не стесняйтесь использовать этот онлайн-калькулятор экспоненциальной регрессии для автоматического расчета уравнения экспоненциальной регрессии для заданного предиктора и переменной отклика.

Дополнительные ресурсы

Как выполнить простую линейную регрессию в Python
Как выполнить полиномиальную регрессию в Python
Как выполнить квантильную регрессию в Python

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *