Холодный старт — потенциальная проблема в компьютерных информационных системах , которая подразумевает определенную степень автоматизированного моделирования данных . В частности, это касается проблемы, когда система не может делать никаких выводов для пользователей или элементов, о которых она еще не собрала достаточно информации.
Проблема холодного старта — хорошо известная и хорошо изученная проблема для рекомендательных систем . Рекомендательные системы формируют определенный тип техники фильтрации информации (IF), которая пытается представить элементы информации ( электронная коммерция , фильмы , музыка , книги , новости , изображения , веб-страницы ), которые, вероятно, представляют интерес для пользователя. Обычно рекомендательная система сравнивает профиль пользователя с некоторыми справочными характеристиками. Эти характеристики могут быть связаны с характеристиками элемента ( фильтрация на основе контента ) или с социальной средой пользователя и прошлым поведением ( совместная фильтрация ). В зависимости от системы пользователь может быть связан с различными видами взаимодействий: рейтингами, закладками, покупками, лайками, количеством посещений страниц и т. д.
Существует три случая холодного запуска: [1]
Проблема нового сообщества, или системная самонастройка, относится к запуску системы, когда практически нет информации, на которую мог бы положиться рекомендатель. [2] Этот случай демонстрирует недостатки как случая Нового пользователя, так и случая Нового элемента, поскольку все элементы и пользователи являются новыми. В связи с этим некоторые из методов, разработанных для решения этих двух случаев, неприменимы к самонастройке системы.
Проблема холодного старта элемента относится к случаям, когда элементы, добавленные в каталог, не имеют вообще никаких взаимодействий или имеют очень мало взаимодействий. Это представляет проблему в основном для алгоритмов совместной фильтрации из-за того, что они полагаются на взаимодействия элемента для выдачи рекомендаций. Если взаимодействия недоступны, то чистый совместный алгоритм не может рекомендовать элемент. В случае, если доступно только несколько взаимодействий, хотя совместный алгоритм и сможет рекомендовать его, качество этих рекомендаций будет низким. [3] Это поднимает другую проблему, которая больше не связана с новыми элементами, а скорее с непопулярными элементами . В некоторых случаях (например, рекомендации фильмов) может случиться, что несколько элементов получат чрезвычайно большое количество взаимодействий, в то время как большинство элементов получат только часть из них. Это называется смещением популярности . [4]
В контексте товаров с холодным стартом смещение популярности важно, поскольку может случиться так, что многие товары, даже если они были в каталоге в течение нескольких месяцев, получили лишь несколько взаимодействий. Это создает негативный цикл, в котором непопулярные товары будут плохо рекомендованы, поэтому получат гораздо меньшую видимость, чем популярные, и будут испытывать трудности с получением взаимодействий. [5] Хотя ожидается, что некоторые товары будут менее популярны, чем другие, эта проблема конкретно относится к тому факту, что у рекомендателя недостаточно совместной информации, чтобы рекомендовать их осмысленным и надежным образом. [6]
С другой стороны, алгоритмы фильтрации на основе контента в теории гораздо менее подвержены проблеме новых элементов. Поскольку рекомендатели на основе контента выбирают, какие элементы рекомендовать, на основе свойств, которыми обладают элементы, даже если для нового элемента не существует взаимодействия, его свойства все равно позволят сделать рекомендацию. [7] Это, конечно, предполагает, что новый элемент уже будет описан своими атрибутами, что не всегда так. Рассмотрим случай так называемых редакционных характеристик (например, режиссер, актерский состав, название, год), они всегда известны, когда элемент, в данном случае фильм, добавляется в каталог. Однако другие виды атрибутов могут быть не известны, например, характеристики, извлеченные из пользовательских обзоров и тегов. [8] Алгоритмы на основе контента, полагающиеся на предоставленные пользователем характеристики, также страдают от проблемы элемента холодного запуска, поскольку для новых элементов, если нет (или очень мало) взаимодействий, также не будут доступны (или очень мало) пользовательских обзоров и тегов.
Новый случай пользователя относится к случаю, когда новый пользователь регистрируется в системе, и в течение определенного периода времени рекомендатель должен предоставлять рекомендации, не полагаясь на прошлые взаимодействия пользователя, поскольку ни одно из них еще не произошло. [1] Эта проблема имеет особое значение, когда рекомендатель является частью сервиса, предлагаемого пользователям, поскольку пользователь, который сталкивается с рекомендациями низкого качества, может вскоре решить прекратить использование системы, прежде чем предоставить достаточно взаимодействия, чтобы рекомендатель мог понять его/ее интересы. Основная стратегия работы с новыми пользователями заключается в том, чтобы попросить их предоставить некоторые предпочтения для создания первоначального профиля пользователя. Необходимо найти порог между продолжительностью процесса регистрации пользователя, который, если он будет слишком долгим, может побудить слишком много пользователей отказаться от него, и объемом начальных данных, необходимых для правильной работы рекомендателя. [2]
Аналогично случаю с новыми элементами, не все алгоритмы рекомендаций затронуты одинаково. Будут затронуты рекомендатели «элемент-элемент» , поскольку они полагаются на профиль пользователя, чтобы оценить, насколько релевантны предпочтения других пользователей. Больше всего затронуты алгоритмы совместной фильтрации , поскольку без взаимодействия невозможно сделать вывод о предпочтениях пользователя. Алгоритмы рекомендаций «пользователь-пользователь» [9] ведут себя немного иначе. Алгоритм, основанный на контенте «пользователь-пользователь», будет полагаться на характеристики пользователя (например, возраст, пол, страна), чтобы находить похожих пользователей и рекомендовать элементы, с которыми они взаимодействовали в позитивном ключе, поэтому он надежен для случая нового пользователя. Обратите внимание, что вся эта информация собирается во время процесса регистрации, либо путем просьбы к пользователю ввести данные самостоятельно, либо путем использования уже имеющихся данных, например, в его учетных записях в социальных сетях. [10]
Из-за большого количества доступных алгоритмов рекомендаций, а также типа и характеристик системы было разработано много стратегий для смягчения проблемы холодного старта. Основной подход заключается в использовании гибридных рекомендаций, чтобы смягчить недостатки одной категории или модели путем ее объединения с другой. [11] [12] [13]
Все три категории холодного запуска (новое сообщество, новый элемент и новый пользователь) имеют общую черту — отсутствие взаимодействия с пользователем и демонстрируют некоторую схожесть в стратегиях, доступных для решения этой проблемы.
Распространенной стратегией при работе с новыми элементами является объединение совместного фильтрующего рекомендателя для теплых элементов с рекомендателем на основе контента для холодных элементов. Хотя эти два алгоритма можно комбинировать по-разному, главный недостаток этого метода связан с низким качеством рекомендаций, часто демонстрируемым рекомендателями на основе контента в сценариях, где сложно предоставить исчерпывающее описание характеристик элемента. [14] В случае новых пользователей, если демографическая характеристика отсутствует или их качество слишком низкое, распространенной стратегией является предложение им неперсонализированных рекомендаций. Это означает, что им могут быть рекомендованы просто самые популярные элементы либо в глобальном масштабе, либо для их конкретного географического региона или языка.
Одним из доступных вариантов при работе с холодными пользователями или элементами является быстрое получение некоторых данных о предпочтениях. Существуют различные способы сделать это в зависимости от объема требуемой информации. Эти методы называются стратегиями выявления предпочтений . [15] [16] Это может быть сделано либо явно (путем опроса пользователя), либо неявно (путем наблюдения за поведением пользователя). В обоих случаях проблема холодного старта будет означать, что пользователь должен приложить определенное количество усилий, используя систему в ее «немом» состоянии — способствуя построению своего профиля пользователя — прежде чем система сможет начать предоставлять какие-либо интеллектуальные рекомендации. [17]
Например, MovieLens , веб- система рекомендаций для фильмов, просит пользователя оценить некоторые фильмы в рамках регистрации. Хотя стратегия выявления предпочтений является простым и эффективным способом работы с новыми пользователями, дополнительные требования во время регистрации сделают процесс более трудоемким для пользователя. Более того, качество полученных предпочтений может быть не идеальным, поскольку пользователь может оценивать элементы, которые он видел месяцы или годы назад, или предоставленные оценки могут быть почти случайными, если пользователь предоставил их невнимательно, просто чтобы быстро завершить регистрацию.
Создание профиля пользователя также может быть автоматизировано путем интеграции информации из других действий пользователя, таких как истории просмотра или платформы социальных сетей. Если, например, пользователь читал информацию о конкретном музыкальном исполнителе с медиа-портала, то соответствующая система рекомендаций автоматически предложит релизы этого исполнителя, когда пользователь посетит музыкальный магазин. [18]
Разновидностью предыдущего подхода является автоматическое присвоение рейтингов новым элементам на основе рейтингов, присвоенных сообществом другим похожим элементам. Сходство элементов будет определяться в соответствии с характеристиками, основанными на содержании элементов. [17]
Также возможно создать начальный профиль пользователя на основе характеристик личности пользователя и использовать такой профиль для генерации персонализированных рекомендаций. [19] [20] Характеристики личности пользователя можно определить с помощью модели личности, например, пятифакторной модели (FFM).
Другой из возможных методов — применение активного обучения (машинного обучения) . Основная цель активного обучения — направлять пользователя в процессе выявления предпочтений, чтобы попросить его оценить только те элементы, которые с точки зрения рекомендующего будут наиболее информативными. Это делается путем анализа имеющихся данных и оценки полезности точек данных (например, рейтингов, взаимодействий). [21] В качестве примера предположим, что мы хотим построить два кластера из определенного облака точек. Как только мы определили две точки, каждая из которых принадлежит разным кластерам, какая точка является следующей наиболее информативной? Если мы возьмем точку, близкую к одной, мы уже знаем, что можем ожидать, что она, скорее всего, будет принадлежать к тому же кластеру. Если мы выберем точку, которая находится между двумя кластерами, знание того, к какому кластеру она принадлежит, поможет нам найти, где находится граница, что позволит классифицировать множество других точек всего с помощью нескольких наблюдений.
Проблема холодного старта также проявляется в интерфейсных агентах . Поскольку такой агент обычно изучает предпочтения пользователя неявно, наблюдая за моделями поведения пользователя – «наблюдая через плечо», – потребуется время, прежде чем агент сможет выполнить какие-либо адаптации, персонализированные для пользователя. Даже в этом случае его помощь будет ограничена действиями, которые он ранее наблюдал за участием пользователя. [22] Проблема холодного старта может быть преодолена путем введения элемента сотрудничества между агентами, помогающими различным пользователям. Таким образом, новые ситуации могут быть обработаны путем запроса других агентов поделиться тем, что они уже узнали от своих соответствующих пользователей. [22]
В последние годы были предложены более продвинутые стратегии, все они основаны на машинном обучении и пытаются объединить контент и совместную информацию в одной модели. Одним из примеров такого подхода является сопоставление атрибутов и признаков [23] , которое адаптировано к алгоритмам матричной факторизации. [24] Основная идея заключается в следующем. Модель матричной факторизации представляет взаимодействия пользователя и элемента как произведение двух прямоугольных матриц, содержание которых изучается с использованием известных взаимодействий посредством машинного обучения. Каждый пользователь будет связан со строкой первой матрицы, а каждый элемент — со столбцом второй матрицы. Строка или столбец, связанные с определенным пользователем или элементом, называются скрытыми факторами . [25] Когда добавляется новый элемент, он не имеет связанных с ним скрытых факторов, и отсутствие взаимодействий не позволяет изучить их, как это было сделано с другими элементами. Если каждый элемент связан с некоторыми признаками (например, автор, год, издатель, актеры), можно определить функцию встраивания, которая, учитывая признаки элемента, оценивает соответствующие скрытые факторы элемента. Функция встраивания может быть разработана многими способами и обучена с использованием данных, уже доступных из теплых элементов. В качестве альтернативы можно применить метод, специфичный для группы. [26] [27] Метод, специфичный для группы, далее разлагает каждый скрытый фактор на две аддитивные части: одна часть соответствует каждому элементу (и/или каждому пользователю), в то время как другая часть распределяется между элементами в пределах каждой группы элементов (например, группа фильмов может быть фильмами одного жанра). Затем, как только поступает новый элемент, мы можем назначить ему групповую метку и аппроксимировать его скрытый фактор с помощью части, специфичной для группы (соответствующей группы элементов). Таким образом, хотя индивидуальная часть нового элемента недоступна, часть, специфичная для группы, обеспечивает немедленное и эффективное решение. То же самое относится к новому пользователю, так как если некоторая информация для него доступна (например, возраст, национальность, пол), то его/ее скрытые факторы можно оценить с помощью функции встраивания или скрытого фактора, специфичного для группы.
Другой недавний подход, который имеет сходство с отображением признаков, заключается в создании гибридного фильтрующего рекомендателя на основе контента , в котором признаки, либо элементов, либо пользователей, взвешиваются в соответствии с восприятием важности пользователем. Чтобы определить фильм, который может понравиться пользователю, различные атрибуты (например, актеры, режиссер, страна, название) будут иметь разную важность. В качестве примера рассмотрим серию фильмов о Джеймсе Бонде , где главный актер менялся много раз в течение многих лет, в то время как некоторые не менялись, как Лоис Максвелл . Поэтому ее присутствие, вероятно, будет лучшим идентификатором такого рода фильма, чем присутствие одного из различных главных актеров. [14] [28] Хотя существуют различные методы применения взвешивания признаков к признакам пользователя или элемента в системах рекомендаций , большинство из них взяты из области поиска информации , такой как tf–idf , Okapi BM25 , только несколько были разработаны специально для рекомендателей. [29]
Гибридные методы взвешивания признаков, в частности, адаптированы для домена рекомендательной системы. Некоторые из них изучают вес признаков, используя непосредственно взаимодействие пользователя с элементами, как FBSM. [28] Другие полагаются на промежуточную совместную модель, обученную на теплых элементах, и пытаются изучить веса признаков контента, которые будут лучше приближаться к совместной модели. [14]
Многие из гибридных методов можно считать частными случаями факторизационных машин. [30] [31]
Вышеуказанные методы полагаются на аффилированную информацию от пользователей или элементов. Недавно другой подход смягчает проблему холодного старта, назначая более низкие ограничения скрытым факторам, связанным с элементами или пользователями, которые раскрывают больше информации (например, популярные элементы и активные пользователи), и устанавливая более высокие ограничения для других (например, менее популярные элементы и неактивные пользователи). [32] Показано, что различные модели рекомендаций выигрывают от этой стратегии. Дифференциация весов регуляризации может быть интегрирована с другими стратегиями смягчения холодного старта.