Всем привет! В моем последнем письме, несмотря на то, что я объяснил, как мы можем найти коэффициенты b0, b1 на простых моделях линейной регрессии и лежащих в основе математических данных при вычислении значения ошибки, я сказал, что нет необходимости в этих операциях, все время. Поэтому сегодня я покажу несколько строк кода для обработки набора данных, которые помогут сократить этот процесс в программе JupyterLab.

Прежде всего, мы должны определить, над каким набором данных мы будем работать. Например, я решил работать с набором данных под названием «mpg» из библиотеки Seaborn.

Столбцы показывают переменные MPG, а переменные могут отличаться друг от друга, например, категориальные, целочисленные, с плавающей запятой и т. Д.

Мы должны сначала взглянуть на данные. Например, сколько наблюдений и переменных содержится в наборе данных, есть ли какие-либо нулевые данные и т. Д. Как видно, переменная «лошадиных сил» имеет 6 нулевых данных. Есть некоторые решения, такие как удаление или заполнение данных и т. Д., Которые могут работать в таких случаях, но сначала мы должны проверить, распределяется ли переменная «мощность» случайным образом. В этой статье я пропустил эту часть и ввел данные напрямую. Я расскажу об этой части более подробно в следующем посте.

В приведенном выше примере я не игнорировал нулевые данные и ввел новые данные вместо нулевых данных. Однако другой вопрос, какие числа мне следует заполнить вместо нулевых данных, тоже является проблемой. Например, мы можем использовать значение максимальной частоты (режим) переменной мощности для пропущенных значений.

А затем мы можем продолжить изучение нашего набора данных следующим образом:

Если мы сможем понять структуру набора данных, мы сможем перейти к следующему шагу - визуализации данных.

Визуализация данных с помощью модели линейной регрессии такая же, как указано выше. Взаимосвязь здесь пытается исследовать, как изменяются независимая переменная, которая называется «вес», и зависимая переменная, которой является «мощность в лошадиных силах».

Если мы создадим формулу регрессионной модели в соответствии с «весом», мы сможем предсказать значения «лошадиных сил». Поэтому нам нужно найти коэффициенты b0 и b1. Посчитать коэффициенты с помощью программы очень просто.

Как видите, с помощью функций intercept и coef мы посчитали намного проще. Кстати, reg_model.score (x, y) - это процент, в котором зависимая переменная может быть объяснена независимой переменной. Этот процент тоже может быть важен.

Например, если мы хотим найти значение мощности в соответствии со значением веса 4000, мы можем написать следующую строку кода:

Приступим к вычислению погрешности!

Несмотря на то, что мы объединили фактические переменные y и предсказанные переменные y в одной и той же таблице, имена столбцов оказались неверными. Мы можем это исправить:

Теперь мы готовы вычислить ошибку. Ошибка вычисляется путем вычитания фактических значений y из прогнозируемых значений y, что я и сделал. После этого я добавил в таблицу переменную error:

Пришло время исправить ошибки (почему я объяснил в предыдущем посте)!

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

Вот!

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