From bea977d84ccd8226d3cd2ca08568d8fc611f86d0 Mon Sep 17 00:00:00 2001 From: Mamoru777 Date: Thu, 19 Oct 2023 23:39:38 +0400 Subject: [PATCH] Lab1 --- .idea/IIS_2023_1.iml | 6 +- .idea/misc.xml | 5 +- .idea/workspace.xml | 42 +++++++++++- senkin_alexander_lab_1/Linear.png | Bin 0 -> 37280 bytes senkin_alexander_lab_1/Polynomial.png | Bin 0 -> 37838 bytes senkin_alexander_lab_1/README.md | 38 +++++++++++ senkin_alexander_lab_1/Ridge.png | Bin 0 -> 38993 bytes .../senkin_alexander_lab_1.py | 60 ++++++++++++++++++ 8 files changed, 145 insertions(+), 6 deletions(-) create mode 100644 senkin_alexander_lab_1/Linear.png create mode 100644 senkin_alexander_lab_1/Polynomial.png create mode 100644 senkin_alexander_lab_1/README.md create mode 100644 senkin_alexander_lab_1/Ridge.png create mode 100644 senkin_alexander_lab_1/senkin_alexander_lab_1.py diff --git a/.idea/IIS_2023_1.iml b/.idea/IIS_2023_1.iml index 4e6ce24..f2c30eb 100644 --- a/.idea/IIS_2023_1.iml +++ b/.idea/IIS_2023_1.iml @@ -1,8 +1,10 @@ - - + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index b6db721..fde0489 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,9 @@ - + + + diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 42c41de..95c3327 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -5,6 +5,8 @@ + + + + + @@ -52,7 +65,7 @@ - + + + + + + \ No newline at end of file diff --git a/senkin_alexander_lab_1/Linear.png b/senkin_alexander_lab_1/Linear.png new file mode 100644 index 0000000000000000000000000000000000000000..d877b57da624c870b25bac5d2917f6dea0bcd630 GIT binary patch literal 37280 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 ua3Q=zBoV{EU0

6sD$0|NrgpeJaCf=dZlj47TVf_JNq}y$sREul^6oS+9@) literal 0 HcmV?d00001 diff --git a/senkin_alexander_lab_1/README.md b/senkin_alexander_lab_1/README.md new file mode 100644 index 0000000..24ef0d1 --- /dev/null +++ b/senkin_alexander_lab_1/README.md @@ -0,0 +1,38 @@ +Вариант 2 + +Задание на лабораторную работу: + +По данным построить графики 3 моделей: + +- Линейную регрессию +- Полиномиальную регрессию (со степенью 3) +- Гребневую полиномиальную регрессию (со степенью 3, alpha = 1.0) + +Данные: make_circles (noise=0.2, factor=0.5, random_state=rs) + +Как запустить лабораторную работу: + +Чтобы увидеть работу программы, нужно запустить исполняемый питон файл senkin_alexander_lab_1.py, после чего будут отрисованы 3 графика, которые также можно увидеть в формате png в папке проекта. + +Библиотеки + +Matplotlib. Используется для создания графиков. + +Sklearn. Предоставляет инструменты и алгоритмы, которые упрощают задачи, связанные с машинным обучением. + +Описание программы: + +- Генерируем набор данных из 100 точек данных используя функцию make_circles +- С помощью функции train_test_split разделяем данные на тестовые и обучающие в соотношении 20 к 80 +- Создаем 3 модели: +- Линейную регрессию +- Полиномиальную регрессию (со степенью 3) +- Гребневую полиномиальную регрессию (со степенью 3, alpha = 1.0) +- Модели используем для предсказания классов с помощью метода predict +- Оцениваем точность каждой модели +- Строим графики для визуального представления и оценивая работ моделей +- Сравниваем точности моделей и выбираем наиболее точную + +![Linear.png](Linear.png)![Polynomial.png](Polynomial.png)![Ridge.png](Ridge.png) + +Изходя из результатов: Линейная - 0.30, Полиномиальная - 0.45, Гребневая полиномиальная - 0.47, делаем вывод, что наиболее точная модель - Гребневая полиномиальная. \ No newline at end of file diff --git a/senkin_alexander_lab_1/Ridge.png b/senkin_alexander_lab_1/Ridge.png new file mode 100644 index 0000000000000000000000000000000000000000..2994edac2f0d3d3f871b83b94b4341a53c965ded GIT binary patch literal 38993 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 literal 0 HcmV?d00001 diff --git a/senkin_alexander_lab_1/senkin_alexander_lab_1.py b/senkin_alexander_lab_1/senkin_alexander_lab_1.py new file mode 100644 index 0000000..2a18a03 --- /dev/null +++ b/senkin_alexander_lab_1/senkin_alexander_lab_1.py @@ -0,0 +1,60 @@ +import matplotlib.pyplot as plt +from sklearn.datasets import make_circles +from sklearn.linear_model import LinearRegression +from sklearn.linear_model import Ridge +from sklearn.metrics import r2_score +from sklearn.model_selection import train_test_split +from sklearn.preprocessing import PolynomialFeatures + +# Создаем данные +rs = 42 #желаемый random_state +X, y = make_circles(n_samples=100, noise=0.2, factor=0.5, random_state=rs) + +# Разделяем данные на обучающий и тестовый наборы +X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=rs) + +# Обучаем модели +# Линейная регрессия +lr = LinearRegression() +lr.fit(X_train, y_train) +y_lr_pred = lr.predict(X_test) +r2_lr = r2_score(y_test, y_lr_pred) + +# Полиномиальная регрессия с полиномом 3-й степени +poly = PolynomialFeatures(degree=3) +X_poly = poly.fit_transform(X_train) +lr_poly = LinearRegression() +lr_poly.fit(X_poly, y_train) +X_test_poly = poly.transform(X_test) +y_poly_pred = lr_poly.predict(X_test_poly) +r2_poly = r2_score(y_test, y_poly_pred) + +# Гребневая полиномиальная регрессия с полиномом 3-й степени и alpha = 1.0 +ridge = Ridge(alpha=1.0) +ridge.fit(X_poly, y_train) +y_ridge_pred = ridge.predict(X_test_poly) +r2_ridge = r2_score(y_test, y_ridge_pred) + +# Функция для отображения точек на графике +def plot_with_labels(X, y, title, xlabel, ylabel): + plt.figure(figsize=(12, 6)) + plt.scatter(X[:, 0], X[:, 1], c=y, cmap='viridis', marker='.', label='Тестовые данные') + plt.scatter(X_train[:, 0], X_train[:, 1], c=y_train, cmap='viridis', marker='o', edgecolors='black', linewidths=0.5, label='Обучающие данные') + plt.title(title) + plt.xlabel(xlabel) + plt.ylabel(ylabel) + plt.legend() + plt.show() + + +# График для линейной регрессии +plot_with_labels(X_test, y_lr_pred, 'Линейная регрессия', 'Признак 1', 'Признак 2') +print(f'Линейная регрессия - Точность: {r2_lr:.2f}') + +# График для полиномиальной регрессии +plot_with_labels(X_test, y_poly_pred, 'Полиномиальная регрессия', 'Признак 1', 'Признак 2') +print(f'Полиномиальная регрессия - Точность: {r2_poly:.2f}') + +# График для гребневой полиномиальной регрессии +plot_with_labels(X_test, y_ridge_pred, 'Гребневая полиномиальная регрессия', 'Признак 1', 'Признак 2') +print(f'Гребневая полиномиальная регрессия - Точность: {r2_ridge:.2f}') \ No newline at end of file