Страница 45 из 116
Значение рейтингов для экономики колоссально и однозначно положительно. Благодаря им бизнес обрел почву под ногами: столь необходимая ему обратная связь предложения со спросом установилась наилучшим из всех возможных способом, поскольку ранжирование не порождает для предпринимателей никаких отрицательных внешних эффектов. Для культуры же значение рейтингов неоднозначно. Ей как воздух необходима обратная связь, но более содержательная. Создавая иллюзию потребительской рефлексии, рейтинги скорее сбивают культуру с правильного пути, нежели указывают на него. Они в минимальной степени служат культурной навигации, скорее – это буйки на пути ухудшающего отбора, обозначающие фарватер.
Глава 2.7. Обзор рекомендательных систем[317]
В самом общем виде рекомендация – это прогнозирование оценки до того момента, как человек сам опробовал объект. Прогноз составляется на основе анализа предшествующих предпочтений покупателя или любой другой информации о нем[318]. Услуга состоит в следующем: из всего разнообразия книг, CD, фильмов, ресторанов и т. п. для конкретного потребителя выбирается продукт с наивысшей ожидаемой полезностью[319].
На каждого клиента рекомендательной системы[320] составляется индивидуальный профиль, в котором учитываются его потребительские предпочтения, а также (при необходимости) возраст, пол, доход, семейное положение и т. д. Точно так же по определенным правилам описываются и товары. Например, в сервисе по фильмам каждая картина может быть представлена названием ленты, жанром, режиссером, годом выпуска, главными актерами и т. д. Первоначально в базу заносятся оценки потребителей, выставленные уже известным им товарам. Например, в системе MovieLens[321] пользователи начинают с того, что проставляют баллы определенному количеству фильмов, которые они уже посмотрели. Системы способны выдавать рекомендации либо в виде перечня товаров наиболее подходящих данному потребителю, либо в виде списка потребителей, для которых предпочтительны определенные продукты (как подчеркивалось в первой главе, это различие на практике оказывается принципиальным). Рекомендации могут генерироваться тремя способами:
1. Контентным: человеку рекомендуют товары, сходные с теми, которые он выбрал ранее.
2. Методом коллаборативной фильтрации: потребителю рекомендуют товары, которые вычисляются по оценкам людей со схожими вкусами, уже опробовавших данный продукт и поделившихся своими суждениями.
3. Гибридным методом, сочетающим в себе два предыдущих.
Кроме перечисленных существуют вспомогательные системы (кратко упоминаются ниже), а также системы социальной навигации, которые не являются рекомендательными и здесь не рассматриваются. В последнем случае предпочтения людей выявляют на основании прямых и косвенных данных: интернет-сообщений, историй пользования системой, гиперссылок и т. д. Они визуализируют взаимодействие человека с компьютером и помогают путешествующим по сети[322].
2.7.1. Контентные методы выработки рекомендаций
В рекомендательных системах контентного типа полезность товара выводится из потребительской оценки сходных продуктов. Например, для того чтобы посоветовать человеку фильмы, контентная система пытается найти сходство между различными картинами, которые прежде получили у него высокую оценку (одни и те же актеры, режиссеры, жанры и т. д.). Подобные рекомендации основаны на принципе «найдите для меня вещи, подобные тем, что мне нравились в прошлом». В основе контентой рекомендательной системы лежат методы поиска информации[323], ее сопоставления и фильтрации[324]. Этот подход чаще всего используют для текстов – документов, веб-сайтов, блогов и т. п. Профиль предпочтений клиента формируется на основе информации, которую получают от него либо напрямую, анкетированием, либо косвенно. Контент обычно описывается при помощи ключевых слов[325]. Профиль потребителя, указывающий на его предпочтения, создается путем выявления ключевых слов в контенте, которому данный человек ранее уже вынес оценку. Профиль потребителя и профиль контента могут быть представлены как векторы, а полезность данного контента для данного потребителя определяется величиной угла между ними[326]. В частности, человеку, интересующемуся определенной темой, будут рекомендованы статьи, в которых использовано много терминов (ключевых слов) из его пользовательского профиля.
2.7.1.1. Недостатки
Их в контентном методе несколько. Во-первых, машинный анализ годится не для всяких объектов. Так, сильно осложнена работа с мультимедийными приложениями, графикой, аудио- и видеоматериалами. (Хотя в последнее время в этой области наблюдается бурный прогресс.) Другая проблема данного метода в том, что два разных предмета, представленных одинаковыми профилями, неразличимы. В частности, с помощью контентных систем невозможно отличить хорошую статью от плохой, если их лексикон близок. Это касается и потребительских профилей, поэтому рекомендации, основанные на выборе якобы схожих людей, могут быть низкого качества. На деле оказывается, что профили близки, а люди, стоящие за ними, разные. Еще один очевидный недостаток – узость рекомендаций. Потребителю не могут рекомендовать товары, отличные от тех, которые ему уже знакомы. С другой стороны, ему могут настойчиво предлагать объекты, слишком похожие на те, что ему хорошо известны.
2.7.2. Вспомогательные системы
Эти системы не вычисляют рекомендации. Их смысл в другом: служить инструментом обмена рекомендациями. Первая в мире рекомендательная система Tapestry, разработанная в Xerox PARC, относилась к вспомогательному типу[327]. Популярные ныне веблоги (weblog) – пример такой системы.
Узкое место вспомогательных систем в том, что они эффективны только при наличии некоторого числа добровольцев, готовых генерировать информацию, полезную для сообщества[328]. В большинстве случаев эта работа не оплачивается, хотя вот-вот она превратится в статью дохода благодаря усилиям коммерческих поисковых сервисов[329]. Пока же рекомендателями движут немеркантильные интересы, возможно, потребность в расширении знаний или в выстраивании обратной связи с пользователями, или стремление обрести статус эксперта. Часто все, чего они ждут – это благодарность за разъяснение, советы или провокационные реакции.
2.7.3. Коллаборативные методы производства рекомендаций
Системы коллаборативной фильтрации основываются на двух принципах и, соответственно, бывают двух типов: анамнестические (memory-based) и модельные (model-based)[330].
Анамнестические алгоритмы строят прогноз, исходя из предшествующих оценок клиента [331] и совокупности оценок, данных товару другими пользователями. Это типичная поклиентская, или, иначе, субъект-субъектная схема коллаборативной фильтрации. Чтобы подсказки были точны, нужно решить две задачи: отфильтровать качественных рекомендателей и резюмировать их оценки. Вкусовая близость между клиентами устанавливается на основании того, какие оценки они дали одним и тем же товарам[332]. А вот вычисляться подобие может корреляционным методом (используется коэффициент корреляции Пирсона), методом линейного сходства, и рядом других способов. Простейший способ измерения сходства между пользователями – по среднеквадратичному отклонению.
317
В разделе частично использованы материалы обзорной работы: Adomavicius G., Tuzhilin А. Toward the next generation of recommender systems: a survey of the state-of-the-art and possible extensions // IEEE Transactions on Knowledge and Data Engineering, Vol. 17, № 6, June 2005.
318
С середины 1990-х гг. рекомендательные системы выделились в самостоятельную область научных исследований, которые опираются на достижения когнитивных наук, наработки информационно-поисковых систем, теорию прогнозирования и проч.
319
Это можно записать следующим образом: где С – это множество пользователей (вплоть до многих миллионов), S – группа предлагаемых товаров (тоже миллионы единиц), U – функция полезности, описывающая полезность предмета S для пользователя С.
320
Дополнительно о рекомендательных системах см. приложение 1, глава 11.
321
См. приложение 1, раздел 11.8.
322
См.: Terveen L., Hill W. Beyond Recommender Systems: Helping People Help Each Other // Carroll J. (ed.) HCI in The New Mille
323
Baeza-Yates R., Ribeiro-Neto B. Modern Information Retrieval. Addison-Wesley, 1999; Salton G. Automatic Text Processing. Addison-Wesley, 1989.
324
Belkin N., Croft B. Information Filtering and Information Retrieval // Comm. ACM, Vol. 35, № 12, 1992. P. 29–37.
325
Например, система Fab, специализирующаяся на рекомендациях веб-страниц, представляет их контент в виде 100 наиболее важных слов. Система Syskill & Webert описывает документы с помощью 128 самых информативных слов. Существуют различные методы вычисления «важности» и «информативности» слов в документах. Например, метод частотности / обратной частотности. Суть его такова: пусть N – некоторое количество документов, которые могут быть рекомендованы пользователям. В части этих документов (ni) встречается ключевое слово kj. Кроме того, предположим, что fij – это количество раз, которое ключевое слово kj встречается в неком конкретном документе dj. Тогда TFij – частота употребления ключевого слова kj в документе dj – определяется как где максимум вычисляется из частотности fz,j всех ключевых слов kz, встречающихся в документе dj. Однако если ключевые слова широко распространены во многих документах, то система не в состоянии корректно выбрать необходимый текст. Поэтому измерение обратной частотности слова (IDFi) часто используется наряду с измерением обычной частотности (Tfij). Обратная частотность для ключевого слова ki обычно определяется как Тогда вес ключевого слова ki в документе dj определяется как а контент документа dj определяется как (Adomavicius G., Tuzhilin A. Toward the next generation of recommender systems…)
326
Это можно записать так: Существуют другие контентные методы, такие как байесов классификатор, машинное самообучение, включающие кластеризацию дерева решений, искусственные нейронные сети.
327
Tapestry помогала пользователю оценивать электронные сообщения как «плохие» или «хорошие», ориентируясь по оценкам других людей. Например, некто мог обратить внимание на документы, которые отметил конкретный человек, или мог воспользоваться документами, аннотации которых содержат ключевые слова. (См.: Terveen L., Hill W. Beyond Recommender Systems…)
328
Тут возникает задача суммирования рецензий, рассмотренная, например, в работе: Hu M., Liu B. Mining and Summarizing Customer Review // Proc. of the 10th ACM SIGKDD, 2004. P. 168–177.
329
Поисковик Google сообщал о намерении платить внештатным экспертам за присланные аналитические материалы о продуктах.
330
Breese J. S., Heckerman D., Kadie C. Empirical Analysis of Predictive Algorithms for Collaborative Filtering //Proc. 14th Conf. Uncertainty in Artificial Intelligence, July 1998; Billsus D., Pazzani M. Learning Collaborative Information Filters // Proc. Intl Conf. Machine Learning, 1998.
331
Nakamura A., Abe N. Collaborative Filtering Using Weighted Majority Prediction Algorithms // Proc. 15th Intl Conf. Machine Learning, 1998; Delgado J., Ishii N. Memory-Based Weighted-Majority Prediction for Recommender Systems // Proc. ACM SIGIR’99 Workshop Recommender Systems: Algorithms and Evaluation, 1999; Resnick P., Iakovou N., Sushak M., Bergstrom P., Riedl J. GroupLens: An Open Architecture for Collaborative Filtering of Netnews // Proc. 1994 Computer Supported Cooperative Work Conf., 1994; Shardanand U., Maes P. Social Information Filtering: Algorithms for Automating «Word of Mouth» // Proc. Conf. Human Factors in Computing Systems, 1995.
332
В методе линейного сходства клиент и потенциальный рекомендатель представляются как два вектора m-мерного пространства, а сходство между ними определяется по косинусу угла между двумя соответствующими векторами: где – скалярное произведение двух векторов. Примем для простоты, что в нашем распоряжении для тестирования вкусов только три произведения. Тогда каждого рекомендателя можно схематически обозначить в виде точки в прямоугольной декартовой трехмерной системе координат (х, у, z), а ее положение полностью определится оценками данных произведений. Вкус клиента тоже можно охарактеризовать точкой, в соответствии с высказанными предпочтениями. Если из начала координат в эти две точки провести векторы, то угол между ними будет характеризовать степень близости вкусов клиента и рекомендателя.