Для Герасимова 2. Разработка модели потребительских предпочтений на основе данных рекомендательной сети epinions com
Скачать 2.87 Mb.
|
Аналитические методыРазделение пользователей на группы по интересам и выявление их предпочтений на основе отзывов требует применения нескольких методов анализа данных. Об этих методах и причинах их выбора для решения поставленных задач пойдет речь в этом разделе. Для классификации пользователей по интересам на основе их отзывов было решено использовать методы, разработанные для кластеризации текстовых документов по темам. В этом разделе обосновывается такое решение и рассказывается о принципах и методах кластеризации текста. Использование методов кластеризации текстовых документовДокумент при кластеризации обычно представляют в виде вектора (tfi,1, …, tfi,n) , где tfi,j – количество повторений слова j в i-ом документе. При этом набор рассматриваемых слов определяется исследователем заранее. Вместо слов иногда используют смысловые группы и подсчитывают количество слов, относящихся к каждой смысловой группе. Кластеризация документов по темам основана на том, что тема документа определяется набором слов, относящихся к этой теме. Перед кластеризацией векторы, соответствующие документам, обычно особым образом подготавливают: Определяют набор используемых слов. При этом из набора всегда исключаются слова, не несущие никакой смысловой нагрузки (союзы, предлоги и т.п.). Полученные вектора подвергаются преобразованиям, которые продиктованы следующими соображениями: Большое количество повторений слова в документе не должно слишком сильно повышать его значимость Слова, редко встречающиеся в коллекции документов, лучше характеризуют смысл текста, чем общеупотребительные слова. Так, в разнородном наборе научных статей, медицинские термины позволяют выявить статьи по медицине. Нужно иметь возможность сравнивать документы разной длины. Для этого векторы, соответствующие документам, нормируются. Легко видеть, что задачу классификации пользователей по интересам на основе отзывов можно решать аналогично задаче кластеризации текстовых документов. Для этого нужно выделить набор товарных категорий и представить каждого пользователя в виде вектора (tf1, …, tfn), где – tfi количество отзывов на товары i-ой категории. Преобразования, применяемые к текстовым документам, можно применить и к векторам, составленным для пользователей при подсчете отзывов. Эти преобразования будут иметь такой же смысл, что и для текстовых документов. Наконец, интересы пользователя можно определить набором категорий, на товары из которых он оставляет отзывы, что полностью аналогично принципу, по которому определяют тему документа при кластеризации. Ниже более подробно рассказано о принципах кластеризации документов. Векторная модель документаВекторная модель (vector space model) — представление коллекции текстовых документов векторами из одного общего для всей коллекции векторного пространства. Используется в лингвистике, машинном обучении, информационном поиске и других областях. Векторная модель является основой для решения многих задач, например: поиск документа по запросу, классификация документов, кластеризация документов. Документ в векторной модели рассматривается как неупорядоченное множество термов. Термами в информационном поиске называют слова, из которых состоит текст, а также такие элементы текста, как, например, 2010, II-5 или Тянь-Шань. Различными способами можно определить вес терма в документе ("важность" слова для идентификации данного текста). Например, можно просто подсчитать количество употреблений терма в документе, так называемую частоту терма, — чем чаще слово встречается в документе, тем больший у него будет вес. Если терм не встречается в документе, то его вес в этом документе равен нулю. Все термы, которые встречаются в документах обрабатываемой коллекции, можно упорядочить. Если теперь для некоторого документа выписать в некотором порядке (общем для всей коллекции) веса всех термов, включая те, которых нет в этом документе, получится вектор, который и будет представлением данного документа в векторном пространстве. Размерность этого вектора, как и размерность пространства, равна количеству различных термов во всей коллекции, и является одинаковой для всех документов. Формально:dj = (tf1j, tf1j, …, tfnj), где dj– векторное представление j-го документа, wij — вес i-го терма в j-м документе, n — общее количество различных термов во всех документах коллекции. Методы взвешивания термов Для полного определения векторной модели необходимо указать, каким именно образом будет отыскиваться вес терма в документе. Существует множество стандартных способов задания функции взвешивания, назовем некоторые их разновидности: булевский вес — равен 1, если терм встречается в документе и 0 в противном случае; tf (term frequency) — вес определяется как функция от количества вхождений терма в документе; tf-idf (term frequency - inverse document frequency) — вес определяется как произведение функции от количества вхождений терма, при этом учитывается частота терма во всей коллекции в целом. Наиболее общей функцией взвешивания является tf-idf. Дадим ее определение, предварительно введя некоторые дополнительные понятия. TF (term frequency — частота слова) —оценка важности слова ti в пределах отдельного документа. В самом простом случае это отношение числа вхождения некоторого слова к общему количеству слов документа. где есть число вхождений слова в документ, а в знаменателе — общее число слов в данном документе. IDF (inverse document frequency — обратная частота документа) — оценка частоты, с которой некоторое слово встречается в документах коллекции. IDF включают в весовые функции, чтобы уменьшить вес широкоупотребительных слов. Для каждого уникального слова в пределах конкретной коллекции документов существует только одно значение IDF. Наиболее распространенный вариант функции IDF выглядит так: , где N – общее количество документов в наборе, dft–количество документов, в которых хотя бы один раз встречается слово t. Мера TF-IDF является произведением двух сомножителей: tf-ift(t ,d) =tf(t,d)idf(t) Большой вес в TF-IDF получат слова с высокой частотой в пределах конкретного документа и с низкой частотой употреблений в других документах. После всех преобразований векторное представление документа обычно нормируют. Меры TF, IDF и нормировочные функции могут иметь различные формы. Приведем таблицу из книги [], в которой приведены некоторые распространенные варианты функций TF и IDF. Таблица 1.3.1 – Наиболее распространенные варианты функций TF, IDF и нормировочных функций В учебном онлайн-курсе [11], который проводили одни из ведущих специалистов по обработке текста и речи, рекомендовалось использовать набор функций из второй строки таблицы. Меры близостиДля кластеризации документов используются различные меры близости, однако самой распространенной мерой является косинус угла между векторами. где d1 и d1 – векторы, соответствующие документам. В случае векторной модели документа эта величина будет изменяться от 0 до 1. Чем ближе косинус к единице, тем меньше угол между векторами, а значит, документы будут считаться более близкими по смыслу. Мера косинуса считается более «естественной», чем другие меры, для оценки близости документов. Угол между текстами разной длины и одного словарного состава (в векторном виде могут быть представлены как (1,2,3) и (2,4,6) в случае трех слов) равен нулю. В рамках векторной модели эти документы действительно считаются идентичными. Этот простейший аргумент обычно приводят для иллюстрации преимуществ метрики косинуса. Алгоритмы кластеризацииДля кластеризации документов чаще всего применяются иерархические алгоритмы и метод К-средних. Некоторые исследования [4], [8] показывают, что иерархические методы дают более качественные результаты по сравнению с методом К-средних. Однако иерархические алгоритмы имеют квадратичную вычислительную сложность, что несколько ограничивает область их применения. Метод К-средних более эффективен, так как в большинстве практических случаев имеет линейную сложность. Предложены различные модификации указанных алгоритмов, чтобы соединить качество кластеризации и производительность. В этой работе мы проходим полный цикл аналитического процесса: от сбора неструктурированных данных до интерпретации результата, поэтому для кластеризации будем использовать простой и быстрый метод К-средних. Метод К-средних (K-means) предполагает, что кластер характеризуется одной точкой, называемой центроидом. Центроид определяют как среднее значение или медиану группы векторов. Входными данными алгоритма служат векторы для кластеризации, а также количество кластеров. Описание алгоритма: Выбрать К точек из исходных данных в качестве начальных центроидов. Приписать каждую точку в кластер, соответствующий ближайшему центроиду Пересчитать центроиды для всех кластеры Повторять шаги 2 и 3 пока центроиды перестанут меняться (решение сойдется) Алгоритм минимизирует суммарное квадратичное отклонение точек кластеров от центров этих кластеров. где — число кластеров, — полученные кластеры, и — центры масс векторов . Недостатки K-means: Не гарантируется достижение глобального минимума суммарного квадратичного отклонения V, а только одного из локальных минимумов. Результат зависит от выбора исходных центров кластеров, способ их оптимального выбор неизвестен. Число кластеров надо знать заранее. Более подробно об алгоритмах кластеризации и мерах близости можно узнать в пособии [1]. Модель потребительских предпочтенийКаждая товарная категория на сайте epinions.com имеет набор свойств, которыми характеризуются товары данной категории. Для фотокамер такими свойствами являются: надежность, простота использования, качество снимков, время работы от аккумулятора. В каждом отзыве пользователь обязательно ставит товару общую оценку, а также может поставить оценки по всем или некоторым из его свойств. Детальными оценками можно воспользоваться для построения модели потребительских предпочтений. Одним из вариантов может послужить линейная регрессионная модель, где общая оценка – зависимая переменная, а оценки по свойствам товара – объясняющие переменные. Предпочтения потребителей для свойств товара в этой модели выражаются коэффициентами при соответствующих переменных. Так, например, если коэффициент при переменной, выражающей оценки за надежность, равен 0.5, это означает, что каждый балл за надежность увеличивает общую оценку на 0.5. Аргументы в пользу применения линейной регрессионной модели в данной задаче – широкая распространенность метода и простота интерпретации результата. Помешать успешному применению модели может близость исходных данных к категориальным. Область значений переменных – целые числа от 1 до 5, в то время как регрессионная модель предполагает, что переменные непрерывны. Несмотря на эту особенность исходных данных, линейная регрессионная модель может быть полезна в качестве прототипа. К тому же в некоторых источниках, например, [6] утверждается, что применять обыкновенную линейную регрессию к категориальным данным все же допустимо, если количество возможных значений переменных не менее пяти. |