Размер шрифта
-
+

Искусственный интеллект. Машинное обучение - стр. 27

Ход решения:

1. Подготовка данных: Загрузим и предобработаем данные, разделим их на обучающий и тестовый наборы.

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

3. Обучение модели: Применим метод градиентного спуска для обучения модели линейной регрессии. Мы будем минимизировать среднеквадратичную ошибку (MSE) между фактическими и предсказанными значениями цен.

4. Оценка модели: Оценим качество модели на тестовом наборе данных с помощью различных метрик, таких как средняя абсолютная ошибка (MAE), средняя квадратичная ошибка (MSE) и коэффициент детерминации (R^2).

Пример кода:

```python

# Шаг 1: Подготовка данных

import pandas as pd

from sklearn.model_selection import train_test_split

from sklearn.preprocessing import StandardScaler

# Загрузка данных

data = pd.read_csv('real_estate_data.csv')

# Предобработка данных

X = data.drop(columns=['price'])

y = data['price']

# Разделение на обучающий и тестовый наборы

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Масштабирование признаков

scaler = StandardScaler()

X_train_scaled = scaler.fit_transform(X_train)

X_test_scaled = scaler.transform(X_test)

# Шаг 2 и 3: Выбор и обучение модели

from sklearn.linear_model import LinearRegression

from sklearn.metrics import mean_squared_error

from sklearn.metrics import mean_absolute_error

# Создание и обучение модели линейной регрессии

model = LinearRegression()

model.fit(X_train_scaled, y_train)

# Оценка качества модели на тестовом наборе данных

y_pred = model.predict(X_test_scaled)

mse = mean_squared_error(y_test, y_pred)

mae = mean_absolute_error(y_test, y_pred)

r2 = model.score(X_test_scaled, y_test)

print("Mean Squared Error:", mse)

print("Mean Absolute Error:", mae)

print("R^2 Score:", r2)

```

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


Пример 2

Давайте рассмотрим пример прогнозирования цен на недвижимость с использованием метода наименьших квадратов (OLS) в линейной регрессии.

Описание задачи:

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

Ход решения:

1. Подготовка данных: Загрузим и предобработаем данные, например, удалим пропущенные значения и масштабируем признаки при необходимости.

2. Выбор модели: В данном случае мы выберем модель линейной регрессии, и для обучения этой модели будем использовать метод наименьших квадратов.

3. Обучение модели: Обучим модель на обучающем наборе данных.

4. Оценка модели: Оценим качество модели на тестовом наборе данных с использованием метрик качества, таких как средняя абсолютная ошибка (MAE) и коэффициент детерминации (R^2).

Пример кода:

```python

# Шаг 1: Подготовка данных (аналогично предыдущему примеру)

# Шаг 2 и 3: Выбор и обучение модели

from sklearn.linear_model import LinearRegression

# Создание и обучение модели линейной регрессии с использованием метода наименьших квадратов

Страница 27