Шрифт:
Интервал:
Закладка:
Те же сложности возникают и с новым товаром: его невозможно рекомендовать до тех пор, пока он не наберет достаточного количества оценок[346].
Есть и еще одна препона – так называемая разреженность оценок. Спрос на рекомендации обычно превышает наличие оценок в системе. Люди предпочитают не давать оценки, а получать их, не вкладываться в формирование базы данных, а пользоваться ею. Отсюда, в частности, проблема «первого оценщика» и вообще «холодного старта». Как побудить человека к этому действию, ведь поначалу он не приобретает ничего взамен и может подождать, пока эти хлопоты возьмет на себя кто-то другой?[347] Хотя если судить по высочайшей спонтанной активности веблоггеров, не стоит переоценивать трудности. И все же так или иначе критическая масса пользователей необходима. Например, в рекомендательных системах по кино часть фильмов оценивается лишь малым числом зрителей, поэтому эти ленты будут рекомендоваться редко, даже если им поставили высокие баллы. В общем, если в базе данных число «экспертов» относительно мало по сравнению с количеством объектов, прогнозы будут неточны. Проблему можно частично купировать, если включить в профиль пользователя дополнительную информацию, к примеру, учитывать социально-демографические данные (это так называемая демографическая фильтрация). Так, рекомендательные системы для ресторанов предлагается пополнять сведениями о возрасте, месте проживания, образовании и работе[348].
Часть проблем коллаборативной фильтрации носит сугубо технический характер и связана со сложностями вычислений при работе с большими базами данных. Как указывают разработчики конкурирующих друг с другом систем, «почти все современные алгоритмы коллаборативной фильтрации были разработаны на небольших базах данных. Например, MovieLens работает с 35000 клиентов и 3000 товаров, а EachMovie работает с базой из 4000 пользователей и 1600 товаров»[349]. Дорогостоящие вычисления целесообразно выполнять только в офф-лайне, но традиционная поклиентсткая корпоративная фильтрация в таком режиме практически не функционирует, а делать все вычисления в режиме реального времени трудно. Это возможно только если количество измерений невелико, что уменьшает качество рекомендаций. В противном случае обслуживание рекомендательной системы оказывается неоправданно затратным.
Еще одна проблема, характерная для коллаборативной фильтрации – это рекомендации чего-то принципиально иного. Многие действующие системы дают сбой на этом месте[350]. Например, если при работе с Amazon.com. указать, что у вас в библиотеке есть «Макбет» Шекспира, то в ответ последует поток «услужливых» подсказок других пьес Шекспира[351]. Так же банальны и советы в сфере музыки. В рамках контентных систем идет поиск товаров, связанных общими характеристиками (того же автора, актера, режиссера) либо имеющих те же ключевые слова. Пообъектная коллаборативная фильтрация тоже базируется на сходстве товаров. Поэтому клиенту, купившему DVD с фильмом «Крестный отец», компьютер выдаст список других криминальных драм, фильмов с Марлоном Брандо и картин, снятых Ф. Копполой. Рекомендации часто будут либо слишком общими (все DVD того же жанра), либо чрезмерно зауженными (все книги того же автора), в то время как человек надеется на помощь в нахождении новых, стоящих внимания продуктов. Пытаясь решить эту проблему, некоторые системы, например Daily-Learner, отклоняют объекты на основании слишком большого сходства с тем, что уже известно клиенту[352].
Субъект-субъектная версия коллаборативной фильтрации лишена этого недостатка. Клиент может запросить набор произведений, высоко оцененных его кругом рекомендателей, и обнаружить что-то совершенно новое.
Сотрудники Amazon сообщают, что справились с рядом недочетов пообъектной коллаборативной фильтрации, разработав собственную оригинальную схему (хотя, как показывает опыт с Шекспиром, с внедрением ноу-хау еще не все гладко)[353]. Ими разработан алгоритм коллаборативной фильтрации для работы с громадными базами данных (что актуально для Amazon.com[354]), способный выдавать качественные, по мнению авторов, рекомендации в режиме реального времени. Смысл в том, что система соотносит каждый из приобретенных пользователем товаров с близкими товарами, купленными другими клиентами, и формирует рекомендательный список[355].
Создав (в оффлайновом режиме) таблицу сходных товаров, программа находит среди них те, что перекликаются с покупками и оценками конкретного пользователя. Затем ему подсказывают самые популярные из продуктов, сходных с теми, что он еще не покупал или близких к уже купленным. (При этом, какие именно ему нужны рекомендации, никто не спрашивает!) Вычисление занимает мало времени, поскольку основная работа делается в режиме оффлайн, и в этом секрет масштабируемости пообъектной схемы. На выходе предлагаются только в большой степени сходные и, как уверяют авторы, желанные товары, хотя не ясно, откуда при высоком сходстве возьмутся рекомендации нового, оригинального произведения искусства.
2.7.4. Гибридные методы производства рекомендаций