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

Экспоненциальная регрессия в 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(у) = 0,9817 + 0,2041(х)

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

у = 2,6689 * 1,2264 х

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

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

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

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

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

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.