Как сделать бронирование на Airbnb частью своей жизни: история о данных.

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

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

Эта история поможет ответить на эти вопросы, используя науку о данных. Он использует данные Airbnb, чтобы помочь вам спланировать свое следующее пребывание в Мюнхене — столице Баварии в Германии. Однако этот подход можно применить к любому городу, для которого Airbnb предоставляет аналогичный набор данных. Проверьте InsideAirbnb, чтобы получить данные для вашего города. А теперь… посмотрим, что и когда бронировать в Мюнхене!

Набор данных Airbnb содержит более 5000 доступных для бронирования объектов, разбросанных по всему городу и разделенных на 25 городских районов.

Помимо самих свойств, набор данных предоставляет данные о ценах в день в течение всего года, наличии свойств и отзывах. Глядя на цены за год, вы видите четкую закономерность чрезвычайно высоких цен с середины сентября до начала октября — добро пожаловать на Октоберфест! Если вы не предпочитаете такие развлечения, вам лучше попытаться найти другую часть года, чтобы забронировать поездку. Похоже, что цены довольно хорошие в апреле или в декабре.

Вы, вероятно, наблюдали пики в течение каждого месяца. Это вызвано разными ценами на каждый день недели. Как видно из следующего графика, пятница и суббота самые дорогие. Вывод: если вы не хотите устраивать вечеринки на выходных, вы знаете, что делать…

Следующий вопрос, где именно бронировать жилье. Этот выбор может быть сделан на основе различных критериев. Я считаю, что лучшее расположение — это сочетание хорошей цены и хорошего качества. Если посмотреть средние цены по районам города, то самые дорогие в центре города:

Altstadt-Lehel, Ludwigvorstadt-Isarvorstadtили Schwanthalerhöhe — самые дорогие районы города. Они действительно стоят своих денег? Объективно измерить Качество размещения действительно сложно, поскольку у каждого человека могут быть разные критерии для этого. Один из возможных способов — использовать оценки по отзывам для оцененных свойств. Предположим, что хорошие рейтинги предлагают хорошее качество жилья. В этом случае средние оценки округа по округу дают несколько иной рейтинг округа, чем на графике выше:

Очевидно, что самые дорогие районы — не самые рейтинговые. Если вы хотите получить жилье с хорошим рейтингом, но не слишком дорогое, лучше всего бронировать недвижимость в центре города, но не прямо в его центре. Районы на севере города (Moosach, Milbertshofen) довольно дешевы, но рейтинги не очень высоки. Если вы совершенно нетребовательный посетитель с низкими требованиями к качеству и/или хотите оптимизировать свою поездку, основываясь только на бюджете, это может быть хорошим выбором для вас. В противном случае я бы выбрал Лайм или Сендлинг-Вестпарк, которые являются двумя районами города с самым высоким рейтингом. Оба они находятся в середине ценового рейтинга.

Теперь вопрос в том, какие типы недвижимости лучше всего бронировать. Чтобы сделать эту оценку, была рассчитана средняя цена для 20 наиболее распространенных типов недвижимости. Эта цена сравнивалась со средней ценой на все объекты недвижимости в том же районе (во избежание смещения по местоположению). Отклонение от средней цены по каждому типу недвижимости показано на следующем графике:

Как видите, отдельные комнаты в кондоминиуме стоят примерно на 45 % меньше, чем средняя цена всех объектов в том же районе. С другой стороны, целый дом стоит довольно дорого. Вы видите оценку для всех типов недвижимости, и теперь это ваш выбор!

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

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

Я использовал модель линейной регрессии для прогнозирования цен на недвижимость. После первого выбора функций я остановился на модели, использующей 63 функции. Он получил оценку r2 по обучающим данным (оценка обучения) ~0,38 и оценку r2 по тестовым данным (оценка теста) ~0,37. Включая более 63 функций, оценка поезда продолжала улучшаться, но оценка теста снижалась. Модель начала склоняться к переоснащению. Это не очень полезно. В конце концов, нам нужна модель, которая работает хорошо на данных, которых раньше не было. Вы можете ясно увидеть это развитие производительности на следующем графике:

Что помогло добиться дальнейших улучшений, так это удаление выбросов в некоторых важных функциях, коррелирующих с ценой. На графике ниже вы можете увидеть 20 лучших из этих функций. Они ранжированы, и корреляция с ценой показана в первом столбце слева. Красный цвет означает положительную корреляцию (увеличение значения коррелированного признака увеличивает значение цены). Синий цвет означает обратное. Тем не менее, как положительные, так и отрицательные коррелированные функции важны для прогнозирования цены.

После уменьшения выбросов для количества помещений, кроватей и спален производительность модели увеличилась примерно на 10 % (оценка поезда составила ~0,43, а оценка теста составила ~0,43). сильный>~0,40). Эти значения уже довольно хороши, но определенно есть место для дальнейших улучшений.

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

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