Эта статья написана "Передовая линия ИИ"Оригинал, оригинальная ссылка:Глубокое обучение популярно, как персонализированные рекомендации идут в ногу со временем?
Автор|Ctrip Basic Business R&D Department
Редактор | Эмили
Руководство по передовой ИИ:”Являясь ведущей OTA в Китае, Ctrip ежедневно предоставляет полный спектр туристических услуг десяткам миллионов пользователей.Как найти подходящие туристические продукты и услуги для такого количества пользователей, выявить потенциальные интересы, уменьшить информационную перегрузку, персонализированные системы рекомендаций и алгоритмы. в котором играет незаменимую роль. Персональные рекомендации OTA всегда были трудным моментом, и у нас не так много успешного опыта, чтобы учиться В этой статье рассказывается о некоторых попытках и исследованиях Ctrip в практике персонализированных рекомендаций. "
Процесс рекомендации можно условно разделить на три части: отзыв, сортировка и генерация результатов рекомендаций.Общая архитектура показана на рисунке ниже.
На этапе отзыва в основном используется инженерия данных и алгоритм.От продуктов тысячного уровня до блокировки конкретных кандидатов, полной предварительной проверки продуктов, которая в определенной степени определяет эффективность и рекомендации этапа сортировки. В отрасли более традиционный алгоритм, в основном CF [1] [2], основанный на статистических контекстных рекомендациях и LBS, но в последнее время широко внедряется глубокое обучение, алгоритм добился большего продвижения, например, Netflix и Gravity R&D Inc. Предлагаемая СЕССИЯ Рекомендация BASED [5], 2016 г. ReCsys, связывание CNN и PMF, предложенное в Context-Aware, рекомендовано [10], 2016 г. Google предложила DNN в качестве продвижения MF, можно легко добавить в модель любую функцию непрерывности и классификации [9], 2017 г. Последовательность IJCAI, предложенная рекомендацией по последовательности LSTM [6]. В 2017 году модель глубины ASDAE, предложенная на собрании AAAI, может улучшить проблему разреженности данных и холодного запуска за счет интеграции дополнительной дополнительной информации во входные данные [4].
Для набора кандидатов, полученного на этапе отзыва, он будет оцениваться и переупорядочиваться более сложно и точно, а затем будет получен меньший список продуктов, которые могут заинтересовать пользователей. Рейтинг рекомендаций Ctrip основан не только на рейтинге кликов или коэффициенте конверсии, но также должен учитывать такие факторы, как дистанционный контроль и контроль качества продукта. По сравнению с парными и списочными методами, которые подходят для ранжирования поиска, извлечения релевантности текста и других полей, поточечный метод может вмешиваться, накладывая другие элементы управления, и подходит для многокритериальных задач оптимизации. Рекомендуемые методы в отрасли испытали разработку линейных моделей + большое количество искусственных признаков [11] -> сложные нелинейные модели -> глубокое обучение. Microsoft впервые предложила использовать логистическую регрессию для оценки кликабельности поисковых рекламных объявлений в 2007 г. [12], и в том же году предложила алгоритм оптимизации OWLQN для решения задачи LR с регулярностью L1 [13], а затем в 2010 г. предложил алгоритм на основе регулярности L2, версия для онлайн-обучения Ad Predictor [14]. Google предложил алгоритм оптимизации LR FTRL-Proximal, основанный на регуляризации L1 в 2013 году [15]. Алгоритм факторизационной машины [17], предложенный в 2010 году, и файловая машина факторизации [18], предложенная в 2014 году, предназначены для решения проблемы комбинирования признаков при разреженных данных, что позволяет избежать большого количества ручной работы по комбинированию признаков, необходимой при использовании LR. Али предложил Mixture of Logistic Regression в 2011 году для изучения нелинейных отношений между функциями непосредственно в исходном пространстве [19]. В 2014 году Facebook предложил использовать GBDT для автоматического объединения функций и интегрировать логистическую регрессию [20]. В последние годы глубокое обучение также успешно применяется в области ранжирования рекомендаций. В 2016 году Google предложил метод широкого и глубокого обучения [21], который объединил возможности памяти и обобщения модели. Далее Huawei предложила модель DeepFM [15] для замены части искусственного сочетания функций в wdl. Али представил механизм внимания в 2017 году и предложил Deep Interest Network [23]. Ctrip накопил некоторый опыт применения на практике соответствующих моделей, будь то наиболее часто используемая модель логистической регрессии (Logistic Regression), древовидная модель (GBDT, Random Forest) [16], машина факторизации (Factorization Machine) и недавно предложенная wdl модель. В то же время мы считаем, что даже в нынешнюю эпоху глубокого обучения усовершенствованная разработка признаков по-прежнему необходима.
На основе отсортированного списка окончательный результат рекомендации генерируется после всестороннего рассмотрения таких факторов, как разнообразие, новизна, использование и исследование. Затем в этой статье основное внимание будет уделено работе и практике, связанным с отзывом и сортировкой.
данные
Машинное обучение = данные + функции + модели
Прежде чем представить отзыв и сортировку, давайте кратко разберемся с используемыми данными. Как крупную OTA-компанию, Ctrip ежедневно посещает большое количество пользователей, накапливая большое количество данных о продуктах и данных, связанных с поведением пользователей. На самом деле в процессе припоминания и сортировки примерно используются следующие данные:
- Атрибуты продукта: некоторые неотъемлемые атрибуты продукта, такие как расположение отеля, рейтинг, тип номера и т. д.
- Статистика продукта: например, объем заказов, объем просмотров страниц, объем поиска, рейтинг кликов и т. д. продукта за определенный период времени.
- Портрет пользователя: основные атрибуты пользователей, такие как возраст, пол, предпочтения и т. д.
- Поведение пользователя: комментарии пользователя, рейтинги, просмотр, поиск, заказ и другое поведение.
Стоит отметить, что для статистической информации может потребоваться некоторое сглаживание. Например, для исторической обратной связи CTR для предварительной обработки используется байесовское сглаживание.
отзывать
Этап отзыва является основным этапом рекомендательного процесса.Из тысяч элементов генерируется ограниченное количество наборов кандидатов, что в определенной степени определяет эффективность этапа сортировки и качество результатов рекомендации. Однако из-за свойств OTA поведение пользователей при доступе в основном низкочастотное. Это делает данные взаимодействия пользователя с элементом чрезвычайно разреженными, что создает серьезную проблему для припоминания. В деловой практике мы объединили существующие методы общих рекомендаций и бизнес-сценариев, чтобы отобрать и изучить несколько эффективных методов:
Real-time Intention
Наша система намерений в реальном времени может рекомендовать или перекрестно рекомендовать продукты на основе модели предсказания Маркова в соответствии с недавним поведением пользователя при просмотре и заказе. Эти продукты-кандидаты могут более точно отражать последние пожелания пользователей.
Business Rules
Бизнес-правила — это правила, которые считаются установленными и используются для ограничения объема рекомендуемого содержимого. Например, в сценарии, когда билет на самолет подталкивает отель, необходимо использовать бизнес-правила, чтобы ограничить рекомендуемые продукты только отелями, а не рекомендовать другие туристические продукты.
Context-Based
Сценарии рекомендаций на основе контекста тесно связаны с самим контекстом, например, туристические продукты, связанные с сезонами (катание на лыжах зимой, Новый год и канун Нового года и т. д.).
LBS
Основываясь на информации о текущем местоположении пользователя, выбранные близлежащие отели, живописные места, еда и т. д. больше подходят для рекомендации в сцене в строке. Географическое расстояние рассчитывается с помощью алгоритма GeoHash, который рекурсивно делит область на правильные прямоугольники, кодирует каждый прямоугольник, фильтрует POI с одинаковыми кодами GeoHash, а затем вычисляет фактическое расстояние.
Collaborative Filtering
Алгоритм совместной фильтрации — метод, широко используемый в рекомендательных системах для решения практических задач. Команда персонализации Ctrip провела соответствующие исследования и приложения в области систем глубокого обучения и рекомендаций.Путем улучшения существующей глубокой модели предлагается глубокая модель aSDAE. Эта гибридная модель совместной фильтрации является вариантом SDAE, который может улучшить разреженность данных и решить проблемы холодного старта за счет интеграции дополнительной дополнительной информации во входные данные, подробности можно найти в [4].
Sequential Model
Существующие методы матричной факторизации изучают долгосрочные предпочтения пользователей на основе исторических взаимодействий пользователя и элемента, а цепь Маркова моделирует последовательное поведение пользователей, изучая граф переходов между элементами [3]. Фактически, в сценарии путешествия добавление порядка поведения пользователя может лучше отражать процесс принятия решения пользователем. Мы объединяем матричную факторизацию и цепь Маркова, чтобы построить персонализированную матрицу переходов для каждого пользователя, чтобы предсказать следующее поведение пользователя на основе исторического поведения пользователя. В сценариях путешествий его можно использовать для прогнозирования следующего пункта назначения или POI пользователя.
Кроме того, RNN также можно использовать для рекомендаций по последовательности, таких как рекомендация на основе сеанса [5], использование LSTM с учетом информации о временном интервале для рекомендации следующего элемента и т. д. [6].
Кроме того, некоторые распространенные глубинные модели (DNN, AE, CNN и др.) [7][8][9][10] могут быть применены к рекомендательным системам, но для рекомендаций в разных областях необходимы более эффективные модели. Считается, что с развитием технологии глубокого обучения глубокое обучение станет очень важным техническим средством в области рекомендательных систем. Вышеупомянутые типы методов отзыва имеют свои преимущества.На практике для разных сценариев используется комбинация методов, чтобы предоставить пользователям наилучшие рекомендации, тем самым улучшая пользовательский опыт и повышая лояльность пользователей.
Сортировать
Основываясь на практическом опыте отрасли в области рекламы, поиска, рекомендаций и т. д., в условиях предоставленных данных, она пережила эволюцию от простой линейной модели + большое количество инженерных искусственных признаков к сложной нелинейной модели + автоматическое изучение признаков. В практическом процессе создания системы персонализированных рекомендаций Ctrip у меня есть некоторые мысли и выводы относительно конкретной проблемы ранжирования рекомендаций, и я начну с двух аспектов функций и моделей.
Model
Персонализированная модель ранжирования направлена на использование набора исторических данных о поведении каждого пользователя для построения собственной модели ранжирования, что по сути можно рассматривать как многозадачное обучение. Фактически, конкретные многозадачные задачи могут быть сведены к однозадачной модели путем добавления функций сопряжения, то есть добавления перекрестных функций пользователя и продукта. Чтобы разобраться в модели сортировки промышленных приложений, она примерно проходит три этапа, как показано на следующем рисунке:
В этой статье мы не собираемся подробно представлять детали алгоритма на приведенном выше рисунке.Заинтересованные читатели могут проверить соответствующие статьи.Следующие пункты являются частью нашего практического опыта и опыта.
- На практике выбирается модель на основе LR, и LR используется после нелинейной обработки, такой как дискретизация данных и преобразование распределения. Как правило, регуляризация L1 используется для обеспечения разреженности весов модели. При выборе алгоритмов оптимизации для пакетного обучения используется OWL-QN, а для онлайн-обучения — FTRL.
- На практике с использованием машины факторизации кросс-коэффициентов признаков (Factorization Machine) полученная композиция корма охарактеризована при выборе кросс-LR модели, что позволяет избежать сложной работы по выбору признаков. Как правило, сложность модели ограничена только расширением второго порядка. Для вышеуказанных комбинаций признаков можно использовать обработку третьего порядка и т.п. на основе взаимной информации. Исследования по факторинговой машине высокого порядка (High Order FM) см. в литературе [24].
- Для широкого и глубокого обучения замена широкой части комбинированной функцией gbdt дала хорошие результаты в эксперименте и будет запущена в ближайшем будущем. Последующая работа будет сосредоточена на том, как выполнять попеременную тренировку широкой части и глубокой части.
Feature Engineering
На самом деле, несмотря на то, что глубокое обучение и другие методы в определенной степени сократили сложную работу по разработке признаков, мы считаем, что хорошо спроектированная разработка признаков по-прежнему необходима, и проблема объединения функций — это проблема, на которой мы сосредоточимся на практике. Как правило, его можно разделить на явную комбинацию функций и полуявную комбинацию функций.
Явные комбинации функций
Функции дискретизируются, а затем перемножаются с использованием декартова произведения, внутреннего произведения и т. д.
В процессе построения перекрестных признаков требуется дискретизация признаков, для разных типов признаков существуют разные методы обработки.
numerical feature
- Неконтролируемая дискретизация: разделяйте интервалы в соответствии с простой статистикой, такой как одинаковая частота, одинаковая ширина и квантиль.
- Контролируемая дискретизация: методы 1R, дискретизация на основе энтропии (например, D2, MDLP)
порядковый признак
Кодировки представляют собой последовательные отношения между значениями. Например, по признаку санитарно-гигиенических условий выделяют три степени плохая, средняя и хорошая, тогда их можно закодировать как (1,0,0), (1,1,0), (1,1,1) соответственно.
категорический признак
- Она дискретизируется на фиктивные переменные, а одномерная информация встраивается в смещение модели, что играет роль упрощения модели логистической регрессии и снижает риск переобучения модели.
- После того, как дискретные функции проходят через OHE, каждое значение каждой категориальной переменной можно рассматривать как независимую переменную в модели, что повышает возможность подбора. В общем, когда модель регуляризована и степени свободы модели ограничены, мы думаем, что OHE лучше.
- Использование технологии хэширования объектов для сопоставления разреженных объектов высокой размерности с пространством фиксированной размерности.
Полуявная комбинация функций
В отличие от явного комбинирования признаков, которое имеет четкую информацию объяснения комбинации, полуявное комбинирование признаков обычно основано на древовидном методе для формирования разделения признаков и предоставления соответствующих путей комбинирования.
Общая практика состоит в том, чтобы вводить непрерывные признаки выборок в дерево ансамбля, и каждое дерево решений в конечном итоге попадет в определенный конечный узел на определенном пути ветвления, чтобы получить его номер, который, по сути, представляет собой комбинацию этих признаков внутри. определенный диапазон значений. Дерево ансамбля может быть реализовано с использованием Gbdt или случайного леса. Каждый раунд итерации генерирует новое дерево, которое в конечном итоге преобразуется в двоичный вектор посредством горячего кодирования, как показано на следующем рисунке.
Следующие пункты являются некоторыми из наших выводов и размышлений на практике.
- В ходе эксперимента было обнаружено, что если функция непрерывного значения дискретизирована и введена в gbdt, эффект gbdt будет плохим, а AUC будет относительно низким. Это связано с тем, что сам gbdt может очень хорошо обрабатывать нелинейные функции, и использование дискретных функций не дает никакого эффекта. Древовидные модели, такие как xgboost, не могут эффективно обрабатывать многомерные разреженные функции, такие как функции класса идентификатора пользователя.Альтернативный метод, который можно использовать, состоит в том, чтобы преобразовать такие идентификаторы в одну или несколько новых непрерывных функций одним способом, а затем использовать их для обучения модели. .
- Следует отметить, что при использовании индекса конечного узла в качестве вывода функции необходимо учитывать, что листовые узлы каждого дерева не находятся точно на одной глубине.
- На практике поиск Монте-Карло используется для подбора гиперпараметров для многих параметров xgboost.
- На этапе автономного обучения используется распределенное обучение xgboost на основе кластера Spark, а файл модели анализируется непосредственно во время онлайн-прогнозирования, что может удовлетворить потребности онлайн-реагирования в режиме реального времени. Кроме того, на практике было обнаружено, что простое использование комбинированных функций высокого порядка, автоматически изученных Xgboost, для ввода модели LR не может полностью заменить роль ручного проектирования функций; исходные функции и некоторые искусственно объединенные кросс-функции высокого уровня можно комбинировать с функциями, изученными xgboost. Объедините их в последующих моделях для достижения лучших результатов.
Суммировать
Полная рекомендательная система — это огромная система, включающая множество аспектов, помимо отзыва, сортировки, создания списков и других шагов, есть подготовка и обработка данных, инженерная архитектура и реализация, интерфейсное отображение и так далее. На практике, путем интеграции этих модулей вместе, формируется система общих рекомендаций группы, которая предоставляет внешние push-услуги и применяется в более чем 10 областях и более чем 60 сценариях, и достигла хороших результатов. В этом документе основное внимание уделяется некоторым существующим работам и практикам, связанным с алгоритмами отзыва и сортировки.На следующем этапе мы планируем представить более глубокие модели для решения проблем отзыва и сортировки и объединить прогресс онлайн-обучения, обучения с подкреплением, обучения передачи, д., чтобы оптимизировать общее качество рекомендаций.
об авторе
Отдел исследований и разработок Ctrip Basic Business — группа продуктов и услуг данных, занимающаяся исследованием приложений и внедрением передовых технологий в области искусственного интеллекта, таких как персонализированные рекомендации, обработка естественного языка, распознавание изображений и т. д., в индустрии туризма для создания ценности. В настоящее время команда предоставила Ctrip ряд зрелых продуктов и услуг, таких как обобщенная система персонализированных рекомендаций, интеллектуальная система обслуживания клиентов и платформа искусственного интеллекта.
References[1] Koren, Yehuda, Robert Bell, and Chris Volinsky. "Matrix factorization techniques for recommender systems." Computer 42.8 (2009).
[2] Sedhain, Suvash, et al. "Autorec: Autoencoders meet collaborative filtering." Proceedings of the 24th International Conference on World Wide Web. ACM, 2015.
[3] Rendle, Steffen, Christoph Freudenthaler, and Lars Schmidt-Thieme. "Factorizing personalized markov chains for next-basket recommendation." Proceedings of the 19th international conference on World wide web. ACM, 2010.
[4] Dong, Xin, et al. "A Hybrid Collaborative Filtering Model with Deep Structure for Recommender Systems." AAAI. 2017.
[5] Hidasi, Balázs, et al. "Session-based recommendations with recurrent neural networks." arXiv preprint arXiv:1511.06939 (2015).
[6] Zhu, Yu, et al. "What to Do Next: Modeling User Behaviors by Time-LSTM." Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence, IJCAI-17. 2017.
[7] Barkan, Oren, and Noam Koenigstein. "Item2vec: neural item embedding for collaborative filtering." Machine Learning for Signal Processing (MLSP), 2016 IEEE 26th International Workshop on. IEEE, 2016.
[8] Wang, Hao, Naiyan Wang, and Dit-Yan Yeung. "Collaborative deep learning for recommender systems." Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 2015.
[9] Covington, Paul, Jay Adams, and Emre Sargin. "Deep neural networks for youtube recommendations." Proceedings of the 10th ACM Conference on Recommender Systems. ACM, 2016.
[10] Kim, Donghyun, et al. "Convolutional matrix factorization for document context-aware recommendation." Proceedings of the 10th ACM Conference on Recommender Systems. ACM, 2016.
[11] Beautiful.GitHub.IO/2013/03/24/…
[12] Richardson, Matthew, Ewa Dominowska, and Robert Ragno. "Predicting clicks: estimating the click-through rate for new ads." Proceedings of the 16th international conference on World Wide Web. ACM, 2007
[13] Andrew, Galen, and Jianfeng Gao. "Scalable training of L 1-regularized log-linear models." Proceedings of the 24th international conference on Machine learning. ACM, 2007.
[14] Graepel, Thore, et al. "Web-scale bayesian click-through rate prediction for sponsored search advertising in microsoft's bing search engine." Omnipress, 2010.
[15] McMahan, H. Brendan, et al. "Ad click prediction: a view from the trenches." Proceedings of the 19th ACM SIGKDD international conference on Knowledge discovery and data mining. ACM, 2013.
[16] Chen, Tianqi, and Carlos Guestrin. "Xgboost: A scalable tree boosting system." Proceedings of the 22nd acm sigkdd international conference on knowledge discovery and data mining. ACM, 2016.
[17] Rendle, Steffen. "Factorization machines." Data Mining (ICDM), 2010 IEEE 10th International Conference on. IEEE, 2010.
[18] Juan, Yuchin, et al. "Field-aware factorization machines for CTR prediction." Proceedings of the 10th ACM Conference on Recommender Systems. ACM, 2016.
[19] Gai, Kun, et al. "Learning Piece-wise Linear Models from Large Scale Data for Ad Click Prediction." arXiv preprint arXiv:1704.05194 (2017).
[20] He, Xinran, et al. "Practical lessons from predicting clicks on ads at facebook." Proceedings of the Eighth International Workshop on Data Mining for Online Advertising. ACM, 2014.
[21] Cheng, Heng-Tze, et al. "Wide & deep learning for recommender systems." Proceedings of the 1st Workshop on Deep Learning for Recommender Systems. ACM, 2016.
[22] Guo, Huifeng, et al. "DeepFM: A Factorization-Machine based Neural Network for CTR Prediction." arXiv preprint arXiv:1703.04247 (2017).
[23] Zhou, Guorui, et al. "Deep Interest Network for Click-Through Rate Prediction." arXiv preprint arXiv:1706.06978 (2017).
[24] Blondel, Mathieu, et al. "Higher-order factorization machines." Advances in Neural Information Processing Systems. 2016.
[25] бриз US.GitHub.IO/2014/11/20/…
[26] En. Wikipedia.org/wiki/cat ego…
[27] Ууху. Call.com/question/48…
Чтобы узнать больше о галантерее, вы можете обратить внимание на AI frontline, ID: ai-front, ответ за кулисами "AI, TF и большие данныеПолучите серию мини-книг и карт навыков «AI Frontline» в формате PDF.