предоставляя вам зоны, полные мест по вашему выбору

Вы когда-нибудь задумывались, с чего начать свое путешествие? Были ли у вас случаи, когда вы тонули из-за огромного количества путешествующей информации?

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

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

Как работает рекомендатель?

Короче говоря, он полагается на данные о местах проведения и алгоритмы машинного обучения.

Какие данные?

Информация о местах проведения была получена из онлайн-платформ, таких как Four Square, и правительственной базы данных, такой как Data.gov.sg. Взяв в качестве примера Сингапур, он начинается с создания ряда кандидатов области (некоторые из них потенциально могут стать предложениями), где радиус каждой области составляет всего 500 метров (так что вы можете легко исследовать это пешком!).

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

Какой алгоритм?

Многие алгоритмы машинного обучения основаны на изучении подобия между выборками или на обобщении на основе выборок для получения наилучших (схожих с истиной) прогнозов.

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

Немного технических подробностей о K-средних

K-среднее предназначено для группировки похожих объектов. Буква K обозначает количество желаемых групп. Например, если вы дадите алгоритму K равное 4, он попытается сгруппировать все объекты в 4 группы настолько хорошо, насколько это возможно.

Давайте продолжим со случаем K = 4. Процесс группировки итеративен. В начале каждого раунда у него есть 4 предопределенных положения групповых центров. Затем, объект за объектом, они назначаются одной группе, находящейся ближе всего к ним. Наконец, для каждой группы он вычисляет новые центры групп, используя средние значения позиций своих групповых объектов. Это вызывает конец итерации, и следующий раунд начинается с нового набора из 4 предопределенных позиций центров групп.

Такая итерация продолжается до тех пор, пока не будет найдено лучшего способа группировки. Наилучший способ группировки достигается, когда сумма расстояний между каждым объектом и его центром группы минимальна (минимальная сумма расстояний - это математический способ выражения наилучшего сходства).

Вернуться к рекомендациям

Теперь мы знаем, как работает K-Means. Он группирует похожие объекты. В приведенной выше анимации он группирует объекты со схожими положениями. Используя аналогию со случаем рекомендателя, мы просим K-Means вместо этого сгруппировать области с похожими свойствами. Если переход от позиций к свойствам сбивает вас с толку, позвольте нам обсудить эти две вещи, и я скажу вам, что они имеют одну и ту же природу. Они оба являются просто числами (мы можем выражать свойства только в числовых формах для использования K-средних), и, кроме того, position действительно является своего рода свойством (свойством местоположения! ). Следовательно, переход от позиций к свойствам - это просто переход от примера свойств (то есть позиций) к более общей форме свойств (в нашем случае, количеству разные виды площадок, которые есть на территории).

Надеюсь, вы согласились с тем, что мы можем измерить сходство свойств.

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

Ниже приведен пример того, как пользователь выбрал значения предпочтений (эти горизонтальные полосы прокрутки), и предложения были отображены на карте.

Другая полезная информация отображается, чтобы дать пользователю больше идей о том, что его / ее ждет в предложенной области!

Ну наконец то

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

Эксперимент был прост. У нас был общий бюджет в 30 пунктов преференции. И у нас было пять аспектов предпочтений (резюмируя, это еда, гостиница, жизнь, отдых и достопримечательности) для тестирования. Давайте сначала протестируем Food. Мы начали с того, что дали Food 1 балл в первом тесте, затем мы добавили к нему 1 балл в следующем тесте и продолжали добавлять новый тест, пока он не достигнет 9 баллов, что является максимально возможным. В каждом тесте остальные четыре аспекта делят оставшиеся баллы поровну. Следующая таблица иллюстрирует эту идею.

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

Вывод

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