5 випадків використання машинного навчання, що оптимізують ваш досвід подорожей Airbnb

Наука, що стоїть за персоналізованим досвідом подорожей

Цікаво, як Airbnb сортує та надає свої списки, коли ви шукаєте місце для проживання у наступному відпочинку? Якщо ви щось знаєте про машинне навчання, ви, можливо, очікували, що існує безліч змінних, які впорядковуються для сортування десятків тисяч списків, які іноді доступні у певному місці. На відміну від машин, одна людина не може пройти кожен список - і якщо ви нерішучі за своєю природою, це може становити екзистенційну проблему. Ось чому алгоритми машинного навчання Airbnb справляються за вас, витягуючи сигнали з різних точок передачі даних, залежно від того, приймаєте ви гостей або гості.

Оптимізація матчів між господарями та гостями буде вирішальною для успіху Airbnb, оскільки він продовжує рости. Різноманітність типів житла Airbnb є перевагою, якщо це забезпечує гостям легко знайти господаря, який відповідає їх критеріям. І оскільки Airbnb додає до своїх 4 мільйонів поточних списків, гарантування того, що і гості, і господарі будуть задоволені, стануть більш важливими. Якщо користувачі зможуть знайти саме те приміщення, яке шукають, особливо якщо це за нижчою ціною, вони навряд чи повернуться до використання готелів.

То як Airbnb робить таку дивовижну роботу з оптимізації відповідності гостей-господарів? Провівши пару тижнів, розкопуючи технічний блог Airbnb, я виявив, що існує 5 важливих випадків використання машинного навчання, які зараз розгортаються інженерами та науковцями даних Airbnb для вирішення цієї проблеми. Ось вони у відповідному порядку подання:

  • Визначення налаштувань хоста
  • Надання прозвітів господарям
  • Прогнозування домашніх цінностей
  • Боротьба з фінансовими шахрайствами
  • Рекомендовані персоналізовані списки

1 - Визначення налаштувань хоста

Мета цієї системи машинного навчання - виявити, що впливає на рішення господарів приймати запити на проживання та як Airbnb може збільшити кількість прийомів та відповідей на платформі. Після первинного запиту даних та експериментів, Airbnb з'ясував, що хости швидше приймають запити, які добре вписуються в їх календар і мінімізують дні розривів. Крім того, господарі на великих ринках (наприклад, Сан-Франциско чи Нью-Йорк) дуже піклуються про їх кількість. тоді як для невеликих ринків господарі воліють проводити невелику кількість ночей між запитами. Таким чином, якщо Airbnb зможе просувати у своїх результатах пошуку тих господарів, які з більшою ймовірністю приймуть запит на проживання внаслідок потенційного запиту гостя, вони очікують, що вони побачать щасливіших гостей та господарів та більше матчів, які перетворилися на веселі канікули чи продуктивні справи поїздки.

На перший погляд, це здається ідеальним випадком спільної фільтрації - у нас є користувачі (хости) та елементи (поїздки), і ми хочемо зрозуміти перевагу цих елементів, поєднуючи історичні рейтинги (прийняти / відхилити) зі статистичним вивченням від подібних хостів . Однак додаток не повністю вписується в рамки спільної фільтрації з двох причин.

  • По-перше, жодна дві поїздки ніколи не є однаковою, оскільки за кожним запитом на проживання стоїть інший гість із унікальною взаємодією людини, яка впливає на рішення приймання господаря.
  • Зробивши цей крок на крок далі, господар може отримати різні запити на проживання в одній поїздці з різними гостями в різні моменти часу і надати ці запити суперечливими голосами.

Так, інженери та науковці даних Airbnb створили модель, що нагадує спільну фільтрацію. Вони використовували безліч відповідей для однієї поїздки, щоб зменшити шум, що надходить від прихованих факторів у взаємодії гость-господар. Для цього вони вважали середню реакцію господарів на певну поїздку характерною ізольовано. Замість того, щоб дивитися на поєднання тривалості поїздки, розміру вечірки, розміру розриву в календарі тощо, вони розглянули кожну з цих характеристик поїздки самостійно.

Для прогнозів вони поєднали вподобання для різних характеристик поїздки в єдиний прогноз щодо ймовірності прийняття. Вага, яку надає кожна характеристика поїздки щодо рішення про прийняття, - це коефіцієнт, що виходить з логістичної регресії. Для покращення прогнозування вони також включили до логістичної регресії ще декілька географічних особливостей та особливостей хоста.

Блок-схема підсумовує використану техніку моделювання:

2 - Подання інформації про господарів

Мета цієї системи машинного навчання - відповісти на дуже поширене запитання господарів Airbnb: Як вибрати правильну ціну? Встановити ціну може бути важко без достовірної інформації про інші списки в зоні господарів, тенденції подорожей та зацікавленість людей у ​​вигодах, які пропонують господарі.

Таким чином, команда Airbnb вирішила побудувати модель, яка може поділитися думками, які вони дізналися з господарями. Розуміння - це кампанія, яка допомагає господарям стати більш успішними в ціноутворенні. Кожне розуміння повинно бути персоналізованим, націленим та можливим.

Для подання зрозумілих даних вони створили Narad - сервіс, що дозволяє отримувати дані з набору офлайн-та онлайн-джерел даних для створення персоналізованих даних, оцінювати їх ефективність для різних списків та контекстів, а також надавати інформацію в потрібному місці та в потрібний час.

Проблема, створена Нарадом, складається з наступного:

  1. Ідентифікатори: Це включає тип інсайту, який є ідентифікатором кожної статистики, розміщення, яке вказує, до якого інструменту хоста може бути переданий цей огляд, та інша інформація про групування.
  2. Націлювання: Це перелік умов націлювання, які необхідно виконати, щоб зрозуміти, що відповідає вимогам певного списку. Існують різні виміри, такі як заповнення, минулі та майбутні бронювання, попит на ринку, географія, атрибути лістингу та ціноутворення, на які можна орієнтуватися на розуміння.
  3. Корисне навантаження: це визначає набір персоналізованої інформації, яку відображає огляд хосту. Приклад корисних навантажень варіюється від запропонованих значень для налаштувань хоста до вигоди для хоста, наприклад потенційного збільшення бронювання.
  4. Копія. Тут міститься інформація для отримання інтернаціоналізованого вмісту для інтерфейсу користувача.

Нарад несе відповідальність за надання найважливіших та найвпливовіших уявлень господареві. Перша ітерація ранжирування визначає загальне значення кожного огляду через набір термінів. Перший термін - це вага, що відноситься до властивого впливу прозріння. Другий термін - це історичний коефіцієнт перетворення конкретного розуміння. Деякі відомості можуть мати високий вплив, але привертати менше уваги господарів. Інші відомості можуть призвести до багатьох конверсій, але вони не мають суттєвого впливу. Перший і другий термін підтримують цей баланс. Останній термін - покарання за повторення, яке знижує загальну величину огляду, якщо той самий огляд був оцінений як останній огляд минулого разу. Це допомагає надати деяку дисперсію на верхній позиції, щоб однакова інформація не з’являлася вгорі і знову, хоча це найкраще розуміння для того, щоб хости більше займалися.

3 - Прогнозування вартості будинків на Airbnb

В Airbnb прогнозування домашніх значень - це конкретний випадок використання моделювання вартості життя клієнта, яке фіксує прогнозоване значення користувача на фіксований часовий горизонт. У таких компаніях, як Airbnb, знаючи, що цінність життя користувачів дає змогу ефективніше розподіляти бюджет за різними маркетинговими каналами, розраховувати більш точні ціни торгів для інтернет-маркетингу на основі ключових слів та створювати кращі сегменти лістингу.

Для моделювання цілей життя, Airbnb розробив інструменти машинного навчання, які абстрагують інженерні роботи за моделями машинного навчання, що іонізують продукти. Зокрема, у їхньому робочому процесі для ML є 4 завдання для цього завдання:

  • Особливості інженерії
  • Прототипування та навчання
  • Вибір моделі вибору
  • Взяття моделей-прототипів до виробництва

На етапі Feature Engineering Airbnb використовував своє внутрішнє сховище функцій Zipline, яке надає функції на різних рівнях деталізації, таких як хост, гість, лістинг чи ринковий рівень. Натуральний інструмент цього внутрішнього інструменту дозволяє вченим даними використовувати широкий спектр високоякісних, перевірених функцій, які інші готували для минулих проектів. Якщо потрібна функція недоступна, користувач може створити свою власну функцію за допомогою файлу конфігурації функції.

На етапі прототипування та навчання Airbnb створив трубопроводи даних, доступні в Scikit-Learn та Spark, які дозволяють своїм науковцям задавати креслення на високому рівні, що описують, як слід трансформувати функції та в яких моделях навчати. На високому рівні вони використовували конвеєри для визначення перетворень даних для різних типів функцій, залежно від того, чи є ці функції бінарними, категоричними чи числовими. Перевага написання прототипів трубопроводами полягає в тому, що воно абстрагує стомлювальні перетворення даних за допомогою перетворень даних. Ці сукупні перетворення забезпечують послідовне перетворення даних під час навчання та підрахунку балів, що вирішує загальну проблему невідповідності трансформації даних при переведенні прототипу у виробництво.

На етапі вибору моделі Airbnb використовував свої структури AutoML, щоб прискорити процес. Досліджуючи широке розмаїття моделей, вони виявили, які типи моделей мають найкращу ефективність. Наприклад, вони дізналися, що дерева, що підсилюють градієнт eXtreme (XGBoost), значно перевершили базові моделі, такі як середні моделі реагування, моделі регресії хребта та дерева єдиного рішення.

Нарешті, для виведення моделей прототипів у виробництво, Airbnb побудував рамку під назвою ML Automator, яка автоматично переводить ноутбук Юпітера в конвеєр машинного навчання Airflow. Цей фреймворк розроблений спеціально для науковців, які вже знайомі з написанням прототипів на Python та хочуть взяти свою модель до виробництва з обмеженим досвідом в галузі інженерії даних.

4 - Боротьба з фінансовими шахрайствами

Боротьба з фінансовими шахрайствами - одне з найважливіших завдань Airbnb - забезпечити довіру до своєї платформи. Компанія використовує машинне навчання, експерименти та аналітику для виявлення та блокування шахраїв, мінімізуючи вплив на переважну більшість своїх хороших користувачів.

Як і всі інтернет-компанії, Airbnb стикається з шахраями, які намагаються використовувати викрадені кредитні картки. Коли справжній власник картки усвідомлює, що їхня карта була викрадена і помічає несанкціоновані збори на їх рахунку, компанія з кредитних карт видає те, що називається "повернення коштів", і продавець повертає гроші. Airbnb виявляє фінансові шахрайства різними способами, але їх метод робочих коней використовує моделі машинного навчання (ML), навчені на минулих прикладах підтвердженої доброї та підтвердженої шахрайської поведінки.

Щоб припинити використання викрадених кредитних карток, їх модель повернення платежів викликає ряд тертя, щоб переконатися, що гість фактично має право використовувати цю карту, включаючи мікро-авторизацію (розміщення двох невеликих дозволів на кредитній картці, які власник картки повинен ідентифікувати шляхом входу в їх виписку в режимі он-лайн), 3-D Secure (що дозволяє компаніям з кредитних карт безпосередньо посвідчувати власників карток за допомогою пароля або SMS-повідомлення) та підтвердження виписки-платежу (вимагаючи від власника картки завантажити копію платіжної заяви, пов’язаної з картка).

5 - Перелік домашніх рекомендацій

Зовсім недавно Airbnb розробив техніку вбудовування лістингу з метою вдосконалення подібних рекомендацій щодо лістингу та персоналізації в режимі реального часу в пошуковому рейтингу. Вбудовування - це векторні зображення будинків Airbnb, засвоєні з пошукових сесій, які дозволяють їм вимірювати схожість між списками. Вони ефективно кодують багато функцій лістингу, таких як місцеположення, ціна, тип лістингу, архітектура та стиль лістингу, використовуючи лише 32 плаваючі номери.

Embeddings - це поняття з обробки природних мов, яке використовується для представлення слів. Дослідники з доменів веб-пошуку, електронної комерції та Marketplace зрозуміли, що подібно до того, як можна тренувати вбудовування слів, обробляючи послідовність слів у реченні як контекст, те саме можна зробити для тренування вбудовування дій користувача, обробляючи послідовність користувачів дії як контекст. Приклади включають в себе представлення предметів, які були натиснуті або придбані, або запити та оголошення, які були натиснуті. Потім ці вкладення використовуються для різноманітних рекомендацій в Інтернеті.

В Airbnb вони провели навчання та оптимізували свої моделі, щоб дізнатися вбудовування лістингу для 4,5 мільйонів активних списків на Airbnb, використовуючи понад 800 мільйонів сеансів пошукових кліків, що призвело до високої якості представлення лістингу. Щоб оцінити, які характеристики списків були захоплені вкладками, вони вивчили їх декількома способами. По-перше, щоб оцінити, чи кодована географічна схожість, вони виконали k-засоби кластеризації на вивчені вбудовування. Далі вони оцінили середню косинусну схожість між списками різних типів (весь будинок, приватна кімната, спільна кімната) та діапазонами цін і підтвердили, що косинусні схожість між списками одного типу та ціновими діапазонами значно вищі порівняно з подібністю між списками різного типу та діапазони цін.

На час тестування вбудовування Airbnb існуючий алгоритм для подібних функцій подібних списків складався з виклику їх основної моделі рейтингу пошуку для того ж місця, що і вказаний список, після чого проводилася фільтрація за тим же ціновим діапазоном та типом лістингу, що і вказаний список. Тому наступною їхньою ідеєю було використання вбудовування в Пошуковому рейтингу для персоналізації в режимі реального часу, де мета - показати гостям більше списків, схожих на ті, які, на нашу думку, їм сподобалися, починаючи з сеансу пошуку та менше списків подібні до тих, які, на нашу думку, їм не сподобалися.

Data Science @ Airbnb

Окрім цього використання, Data Science, як правило, інвестував значні кошти в Airbnb. Від репортажу знань, який архівує та передає знання по всій організації, до суперсети, яка масштабує доступ до даних та візуальної інформації, від Dataportal, який надає цінні ресурси та інструменти для вирішення питань, пов'язаних із науковими даними, до автоматизованої системи ML, яка може значно збільшити кількість даних вченого продуктивність за порядком (ами) масштабів, наука про дані була демократизована на рівні особистості, команди та організації. Маючи стабільну інфраструктуру даних, складні внутрішні інструменти та надійний склад, Airbnb, безсумнівно, є однією з найкращих технологічних компаній, що керуються даними, які широко використовують ці технологічні тенденції.

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

- -

Якщо вам сподобався цей твір, мені дуже сподобається, якщо ви натиснете кнопку хлопання , щоб інші могли натрапити на нього. Ви можете знайти мій власний код на GitHub, а більше моїх текстів та проектів на https://jameskle.com/. Ви також можете піти за мною у Twitter, електронною поштою безпосередньо або знайти мене на LinkedIn.

Джерела:

-Як Airbnb використовує машинне навчання для виявлення налаштувань хоста (Bar Ifrach, директор Data Science @ Airbnb)

-Як ми надаємо інформацію про господарів (Deepank Gupta, менеджер з інженерії та Кідай Квон, інженер програмного забезпечення @ Airbnb)

-Використання машинного навчання для прогнозування вартості будинків на Airbnb (Роберт Чанг, науковець даних @ Airbnb)

-Борьба з фінансовими шахрайствами з цільовим тертям (Девід Прес, довірений науковий співробітник @ Airbnb)

  • Лістинг вкладень для подібних рекомендацій щодо лістингу та персоналізації в режимі реального часу в пошуку (Михайло Грбович, старший вчений з машинного навчання @ Airbnb)

Ця історія опублікована у найбільшому видавництві з питань підприємництва The Startup, серед якого 320,131+ людей.

Підпишіться, щоб отримувати наші основні історії тут.