Прогноз цен на недвижимость методом линейной регрессии
Линейная регрессия является одним из наиболее часто используемых алгоритмов в машинном обучении. Этот алгоритм в большинстве случаев дает хороший результат даже на небольших наборах данных.
Широкое применение линейной регрессии обусловлено тем, что большое количество реальных процессов в науке, экономике и бизнесе можно описать линейными моделями. Так, с помощью линейной регрессии можно оценивать изменение стоимости в зависимости от имеющейся информации.
В демопримере разбирается построение модели линейной регрессии в Loginom для прогноза цен на рынке недвижимости.
Примечание: Демопример имеет ограничение демонстрации всех возможностей при запуске на демостенде (Запустить демо). Рекомендуем установить пример локально.
Описание алгоритма
1. Импорт данных
Исходные данные
Таблица Исторические данные:
Имя | Метка |
---|---|
Цена за кв. м | |
Название комплекса | |
Тип помещения | |
Количество комнат | |
Общая площадь | |
Площадь кухни | |
Ремонт | |
Количество балконов | |
Этаж | |
Регион | |
Город | |
Район | |
ID клиента |
Данные из таблицы применяются для обучения прогнозирующей модели.
Таблица Новые данные имеет аналогичный набор полей. Данные из этой таблицы используются для построения прогноза.
В сценарии для обучения модели применяются уже подготовленные данные.
При работе с «сырыми данными» необходима их предварительная подготовка: очистка, редактирование выбросов, корреляционный анализ и т.д. Для этого можно использовать компоненты из групп Исследование и Предобработка.
2. Обучение модели
В узле Линейная регрессия (обучение) (на основе компонента Линейная регрессия из группы Data Mining) произведены настройки для обучения модели. На первой странице мастера настройки для поля Цена за кв. м установлено назначение Выходное, для поля ID клиента назначение Не задано, для всех остальных полей — Входное.
Важно:
- Входные данные никогда не должны содержать пропусков, выходные данные не должны содержать пропусков во время обучения.
- Назначение Выходное можно задать только для поля с Вещественным типом данных и Непрерывным видом данных. Вид данных Входных полей не регламентируется.
На странице Разбиение на множества установлены следующие настройки:
- Обучающее множество —
90%
- Тестовое множество —
10%
- Метод валидации — K-fold кросс-валидация
- Random seed —
355542273
После обучения узла требуется оценить качество модели. Критерии для оценки качества модели отображаются в выходном порте «Сводка» узла Линейная регрессия (обучение) . В нём выводится ряд критериев, с помощью которых можно оценить качество модели. В данной задаче качество модели определяется коэфициентом детерминации. Будем считать, что он должен быть больше 0,7. Для построенной модели коэфициент детерминации равен 0,76. Чем ближе его значение к 1, тем выше степень соответствия модели данным.
Для оценки качества модели могут быть использованы различные критерии в зависимости от условия задачи. В том случае, если модель не удовлетворяет желаемым критериям, требуется переобучить узел, задав новые условия.
3. Прогнозирование стоимости недвижимости
Для получения прогноза на предварительно обученной модели линейной регрессии используется узел Линейная регрессия (прогноз) на основе компонента Выполнение узла. Для него выполнены следующие настройки:
- В качестве выполняемого узла выбран узел Линейная регрессия (обучение).
- На вход узла поданы данные таблицы Новые данные.
Оценка стоимости недвижимости (Нейросеть)
Отбор переменных в моделях линейной регрессии
Метрики качества линейных регрессионных моделей
Скачайте и откройте файл в программе Loginom, которую при необходимости можно скачать бесплатно
Минимальные требования к системе:
- Операционная система: Windows 10 и выше
- CPU x64: 2 core 1
- Оперативная память: 4 GB
- Жесткий диск: 10 GB
1 Поддерживается работа на x64 процессорах Intel Core, AMD FX и более новых, содержащих инструкции SSE4.2, POPCNT.