Введение

Понимание потребностей клиентов и прогнозирование покупательских намерений составляют основу успеха любого бизнеса. Попросите покупателя описать дом своей мечты, и он, вероятно, не начнет с высоты потолка подвала или близости к железной дороге с востока на запад. Но этот набор данных по проекту доказывает, что на переговоры о цене влияет гораздо больше, чем количество спален или белый забор. Для чрезвычайно диверсифицированного рынка недвижимости, на котором цены на недвижимость растут экспоненциально, становится важным изучить факторы, которые прямо или косвенно влияют на то, когда покупатель решает купить дом, и спрогнозировать рыночную тенденцию. Как правило, потенциальный покупатель принимает решение о любой покупке, исходя из соотношения цены и качества. Здесь мне нужно спрогнозировать цену дома в Эймсе, США. Кроме того, эта постановка задачи позволила мне изучить расширенные методы регрессии и их реализацию на языке машинного обучения, таком как R. Понимание теории и применение ее на практике было для нас проблемой.

Набор данных

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

В общей сложности 80 переменных фокусируются на качестве и количестве многих физических атрибутов собственности. Большинство переменных - это именно та информация, которую типичный покупатель дома хотел бы знать о потенциальной собственности (например, когда она была построена? Насколько велик участок? Сколько квадратных футов жилой площади в доме? подвал закончен? Сколько ванных комнат?).

Набор данных содержал 23 номинальных переменных и 23 порядковых переменных. Номинальный Включает такие переменные, как погодные условия и материал, использованный для строительства. Для номинальных и порядковых переменных уровни находились в диапазоне от 2 до 28. Всего 14 дискретных переменных включают количество кухонь, туалетов и спален. Это также включает в себя вместимость гаража и даты строительства или реконструкции; 20 непрерывных переменных описывают размер области каждого наблюдения. Размер участка и общая площадь дома являются стандартными списками домов, доступными в Интернете. Измерения площади подвала, крыльца и основной жилой площади далее классифицируются по соответствующим классам в зависимости от качества и типа.

2. Этапы построения модели

Ø Загрузите последовательность данных и набор тестовых данных

Ø Проверить отсутствующие значения. Замените отсутствующие значения средним числовым значением и режимом категориальных данных.

Ø Проверьте выбросы, если таковые имеются, по отношению к целевой переменной

Ø Постройте модель регрессии - целевая переменная по сравнению с независимыми переменными

Ø Предсказать набор данных тестирования на построенной модели

Визуализация данных

Для каждого анализа данных требуется первоначальная очистка данных. В противном случае выбросы в наборе данных создают неверные модели прогнозирования, что может серьезно повлиять на точность модели. Изначально я решил проанализировать наши данные с помощью визуализации. Я сравнил переменные отклика (продажную цену) по нескольким важным количественным переменным, таким как «Жилая площадь гаража», «Площадь участка» и т. Д. Были построены точечные диаграммы, и сразу же было обнаружено несколько выбросов.

Кроме того, коробчатая диаграмма помогла нам визуализировать диапазон цен на жилье, с которым мы имеем дело. Большая часть продажной цены ниже 500 тысяч долларов. Все точки значений выше 500 000 долларов США (всего = 10) исключаются из модели прогнозирования. Таким образом, выбросы были удалены с помощью первоначальной проверки. Чтобы подтвердить те же выбросы, на следующем этапе была проведена проверка на нормальность.

Проверка нормальности

Все статистические методы основаны на исходном предположении о нормальном распределении данных. Следовательно, перед применением любого статистического метода необходимо подтвердить, нормально ли распределяются данные. Гистограмма была построена для определения тенденции нормальности данных. Гистограмма была искажена, поскольку выбросы присутствовали в более высоком ценовом диапазоне. Точки данных, представляющие цену продажи более 500 тысяч долларов, были исключены из анализа.

Удаление выбросов

Выброс определяется как наблюдение, которое находится далеко от большинства других наблюдений. Часто наблюдается выброс из-за ошибки измерения. Следовательно, одна из наиболее важных задач при анализе данных - это выявление и удаление выбросов, поскольку это ухудшит наши статистические результаты. Я удалил выбросы, касающиеся целевой переменной, то есть SalePrice, и ниже приводится сводка.

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

Выполните те же шаги, что и для набора обучающих данных, и получите очищенный набор данных с 0 пропущенными значениями. Этот набор тестовых данных будет готов для прогнозирования продажной цены.

RMSE

среднеквадратичное отклонение (RMSD) или среднеквадратическая ошибка (RMSE) (или иногда среднеквадратичная ошибка ) - часто используемая мера различий между значениями (значениями выборки и совокупности), предсказанными моделью или оценщиком, и фактически наблюдаемыми значениями. Я использовал rmse, чтобы предсказать лучшую модель.

4. Построение регрессионной модели

Я решил начать наш анализ после очистки и процесс разработки модели с создания линейной модели. Линейные модели - это первые модели, выбранные для изучения, поскольку они наиболее просты в установке и интуитивно понятны. Первой моделью, которую я решил создать, была обычная модель наименьших квадратов (МНК), содержащая все предикторы в наборе данных. Результаты модели можно увидеть в выходных данных регрессии ниже.

Модель линейной регрессии

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

После запуска двух линейных моделей я запустил модель SVM (ПОДДЕРЖКА ВЕКТОРНОЙ МАШИНЫ)

Машина опорных векторов (SVM)

Опорные векторы - это те точки, которые находятся рядом с гиперплоскостью. Расстояние опорного вектора от гиперплоскости должно быть максимальным, но минимальным. На SVM не влияют выбросы, преобразование в SVM известно как преобразование ядра.

После обычной модели SVM я решил запустить десятикратную перекрестную проверку или модель перекрестной проверки в k кратном размере. Здесь данные разбиваются на 10 частей, они повторяются 10 раз и принимают среднее значение точности. - проверка, функция стоимости очень важна при построении модели, функция стоимости должна быть меньше.

Мешки и случайный лес

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

После модели Бэггинга я запустил случайную модель.

Чтобы убрать предвзятость из модели мешков, я выбрал случайную модель леса. В случайном лесу переменная продолжает меняться. Каждое дерево в случайном лесу вырастает до максимально возможной степени, без обрезки. Случайный лес может легко обрабатывать большие данные и даже определять наиболее значимые переменные, поэтому он считается одним из методов уменьшения размерности.

KNN

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

5. Заключение

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

Видно, что случайный лес был самой надежной моделью. Среднеквадратичное значение модели случайного леса составляет 0,0255915. Я использовал эту модель для прогнозирования SalePrice на тестовых данных.

Https://github.com/MalihaG/Ames-Housing-Data