HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>Теги: python, машинное обучение, machine learning, алгоритм, линейная регрессия</p>
1 <p>Теги: python, машинное обучение, machine learning, алгоритм, линейная регрессия</p>
2 <p>Не так давно мы рассказывали про<a>основные алгоритмы</a>для машинного обучения. Сегодня попробуем реализовать что-нибудь на Python 3. Начнём с<strong>линейной регрессии</strong>. Перед началом работы следует импортировать нужные библиотеки:</p>
2 <p>Не так давно мы рассказывали про<a>основные алгоритмы</a>для машинного обучения. Сегодня попробуем реализовать что-нибудь на Python 3. Начнём с<strong>линейной регрессии</strong>. Перед началом работы следует импортировать нужные библиотеки:</p>
3 import pandas as pd import matplotlib.pyplot as plt import numpy as np import seaborn as sns %matplotlib inline<p>Идём дальше. На сегодняшний день линейная регрессия - не только один из самых популярных алгоритмов машинного обучения, но и один из самых недооценённых. А всё потому, что, к сожалению, многие инженеры забывают, что из 2 алгоритмов с одинаковой производительностью более разумно выбирать тот, который проще. И именно таковым является линейная регрессия - алгоритм контролируемого машинного обучения, прогнозирующий результаты, которые основаны на непрерывных функциях.</p>
3 import pandas as pd import matplotlib.pyplot as plt import numpy as np import seaborn as sns %matplotlib inline<p>Идём дальше. На сегодняшний день линейная регрессия - не только один из самых популярных алгоритмов машинного обучения, но и один из самых недооценённых. А всё потому, что, к сожалению, многие инженеры забывают, что из 2 алгоритмов с одинаковой производительностью более разумно выбирать тот, который проще. И именно таковым является линейная регрессия - алгоритм контролируемого машинного обучения, прогнозирующий результаты, которые основаны на непрерывных функциях.</p>
4 <p>Алгоритм универсален, т. к. может запускаться как с одной входной переменной (это будет простая линейная регрессия), так и с зависимостью от нескольких (так называемая множественная регрессия). И суть регрессии заключается в том, чтобы назначить оптимальные веса для переменных с последующим созданием линии (ax + b), которая, в дальнейшем, сможет применяться для прогнозирования вывода. Если хотите углубиться в тему,<a>смотрите видео</a>с более подробным объяснением. Мы же перейдём от теории к реализации.</p>
4 <p>Алгоритм универсален, т. к. может запускаться как с одной входной переменной (это будет простая линейная регрессия), так и с зависимостью от нескольких (так называемая множественная регрессия). И суть регрессии заключается в том, чтобы назначить оптимальные веса для переменных с последующим созданием линии (ax + b), которая, в дальнейшем, сможет применяться для прогнозирования вывода. Если хотите углубиться в тему,<a>смотрите видео</a>с более подробным объяснением. Мы же перейдём от теории к реализации.</p>
5 <p><strong>Начало работы</strong>:</p>
5 <p><strong>Начало работы</strong>:</p>
6 from sklearn import linear_model df = pd.read_csv('linear_regression_df.csv') df.columns = ['X', 'Y'] df.head()<p>А теперь давайте посмотрим на<strong>визуализацию</strong>:</p>
6 from sklearn import linear_model df = pd.read_csv('linear_regression_df.csv') df.columns = ['X', 'Y'] df.head()<p>А теперь давайте посмотрим на<strong>визуализацию</strong>:</p>
7 sns.set_context("notebook", font_scale=1.1) sns.set_style("ticks") sns.lmplot('X','Y', data=df) plt.ylabel('Response') plt.xlabel('Explanatory')<p>Что же, осталось<strong>реализовать</strong>алгоритм линейной регрессии:</p>
7 sns.set_context("notebook", font_scale=1.1) sns.set_style("ticks") sns.lmplot('X','Y', data=df) plt.ylabel('Response') plt.xlabel('Explanatory')<p>Что же, осталось<strong>реализовать</strong>алгоритм линейной регрессии:</p>
8 linear = linear_model.LinearRegression() trainX = np.asarray(df.X[20:len(df.X)]).reshape(-1, 1) trainY = np.asarray(df.Y[20:len(df.Y)]).reshape(-1, 1) testX = np.asarray(df.X[:20]).reshape(-1, 1) testY = np.asarray(df.Y[:20]).reshape(-1, 1) linear.fit(trainX, trainY) linear.score(trainX, trainY) print('Coefficient: \n', linear.coef_) print('Intercept: \n', linear.intercept_) print('R² Value: \n', linear.score(trainX, trainY)) predicted = linear.predict(testX)<p><em>По материалам статьи "<a>The Hitchhiker’s Guide to Machine Learning in Python</a>".</em></p>
8 linear = linear_model.LinearRegression() trainX = np.asarray(df.X[20:len(df.X)]).reshape(-1, 1) trainY = np.asarray(df.Y[20:len(df.Y)]).reshape(-1, 1) testX = np.asarray(df.X[:20]).reshape(-1, 1) testY = np.asarray(df.Y[:20]).reshape(-1, 1) linear.fit(trainX, trainY) linear.score(trainX, trainY) print('Coefficient: \n', linear.coef_) print('Intercept: \n', linear.intercept_) print('R² Value: \n', linear.score(trainX, trainY)) predicted = linear.predict(testX)<p><em>По материалам статьи "<a>The Hitchhiker’s Guide to Machine Learning in Python</a>".</em></p>
9  
9