Использование иерархической временной памяти для идентификации системы ранжирования документов

ИСПОЛЬЗОВАНИЕ ИЕРАРХИЧЕСКОЙ ВРЕМЕННОЙ ПАМЯТИ ДЛЯ ИДЕНТИФИКАЦИИ СИСТЕМЫ РАНЖИРОВАНИЯ ДОКУМЕНТОВ

O.A. Кожушко, М.С. Тарков*

Новосибирский государственный университет, 630090, Новосибирск, Россия. Институт физики полупроводников им. A.B. Ржанова СО РАН*, 630090, Новосибирск, Россия.

УДК 004.89

Предложена модель иерархической временной памяти (ИВП) для идентификации системы ранжирования текстовых документов. Предложен подход к выбору параметров модели, и дана оценка времени обучения модели. Тестирование модели проведено на данных алгоритма OkapiBm25, примененного к коллекции текстовых документов семинара РОМИП. Полученные результаты позволяют судить о перспективности модели ИВП для решения поставленной задачи.

Ключевые слова: алгоритм ранжирования, идентификация системы, иерархическая временная память.

A model of hierarchical temporal memory for text documents ranking system identification is proposed. An approach to the model's parameters evaluating is proposed and a training time evaluation is given. Tests were performed on data received by modeling OkapiBm25 algorithm applied to the ROMIP seminar text documents collection. The obtained results allow us to conclude that the model can solve the identification problems.

Key words: system identification, text document ranking algorithm, hierarchical temporal memory.

Введение. В настоящее время большое внимание уделяется задаче поиска информации в коллекциях документов (information retrieval) [1]. Современные поисковые системы постоянно модифицируют свои алгоритмы, подстраиваясь под новые особенности коллекций документов и ожидания пользователей. Одна из наиболее важных подзадач информационного поиска — это задача ранжирования найденных документов по степени их релевантности запросу пользователя. Успешное решение данной задачи позволит пользователям в первую очередь ознакомиться с документами, максимально релевантными их запросу. Поскольку объем данных непрерывно увеличивается, а сами данные видоизменяются, естественным шагом для решения данной задачи стало использование машинного обучения для построения функции релевантности [2]. С одной стороны, данный подход позволяет повысить эффективность поисковой системы, но с другой — превращает алгоритм ранжирования в „черный ящик", что приводит к проблеме идентификации системы ранжирования и поиска ее ключевых элементов.

Большинство исследователей уделяет внимание качеству поиска, оценивая его эффективность с помощью статистических метрик [1]. Идентификация алгоритма позволяет

оценить поведение алгоритма ранжирования в зависимости от разных входных данных. Примером такого анализа является работа по моделированию алгоритма ранжирования Яндекс [3] с помощью жадного алгоритма построения деревьев решений. Этот метод позволил выявить важные факторы ранжирования, но является эмпирическим и не имеет вероятностного обоснования эффективности,

В данной работе для идентификации алгоритма ранжирования используется иерархическая временная память (ИВП, hierarchical temporal memory), построенная на основе теории Дж, Хокинса [4, 5]. Модель ИВП строит иерархическое представление исследуемого объекта, обучаясь на последовательности представляемых ей образов. Для идентификации алгоритма ранжирования это означает возможность учета сложных факторов, являющихся комбинацией простых характеристик. Сходство этой модели с байесовыми сетями позволит выбрать значимые при ранжировании факторы на основе статистической информации,

1. Постановка задачи. Основной механизм работы алгоритма ранжирования поисковой системы задает функция релевантности f , которая сопоставляет паре векторов (q,d), описывающих текстовый запрос q и документ d соответственно, числовую оценку релевантности

Найденные документы сортируются по убыванию значения функции релевантности, К значению функции релевантности могут быть применены фильтры, снижающие итоговое значение релевантности документов, релевантность которых была искусственно завышена.

Алгоритм ранжирования осуществляет функцию вида

где D — рассматриваемая коллекция документов, а функция rank сопоставляет документу порядковый номер в списке документов коллекции, отсортированном по убыванию значения функции релевантности.

Задача идентификации системы ранжирования является дуальной к задаче вычисления релевантности найденных документов запросу и подразумевает построение модели, устанавливающей взаимосвязь между входными и выходными значениями данной системы, В данной статье задача идентификации ставится в виде задачи классификации.

Пусть определено M классов релевантности, а функция class(rankD(f (q,d))) задает номер класса релевантности по рангу, присвоенному алгоритмом ранжирования. Необходимо построить идентифицирующую модель Mf, такую, что на заданном множестве примеров X = {{q,d)i Е Rm,i = 1,..,N},

f : (q,d) ^ r.

Fd = (q,d) ^ ranku(f (q,d)),

1

N

E

X

I(class(FD({q,d)i)),class(Mf ({q,d)i))) < £

i=l

где E — функция ошибки, £ — заданная константа,

I

1, если xi = x2, 0, иначе.

Кожушко O.A., Тарков М. С.

49

Указанная функция ошибки определяет долю пар (д,ф, неверно классифицированных по степени релевантности. Таким образом, требуется построить модель, которая на достаточной доле тестовых примеров присваивает ту же степень релевантности парам (д,ф, что и исходный алгоритм,

2. Иерархическая временная память. Иерархическая временная память представляет собой обучающуюся модель с многослойной древовидной структурой. Она состоит из узлов, которые объединяются в слои. Все слои нумеруются в направлении от нижнего слоя к верхнему. Слои делят на три типа: входной слой, обрабатывающий входную информацию, промежуточные слои, в которых проводятся промежуточные расчеты, и выходной слой, генерирующий результат работы ИВП, Узлы каждого слоя не связаны между собой. Узел входного слоя имеет связь с одним узлом первого промежуточного слоя. Узел промежуточного слоя связан с несколькими узлами предыдущего слоя и одним узлом следующего слоя, узел выходного слоя имеет связь со всеми узлами последнего промежуточного уровня.

Функционирование каждого узла сети состоит из двух этапов, называемых пространственным объединением и временной группировкой, В ходе пространственного объединения узел разделяет входные данные на группы похожих векторов, где сходство определяется с помощью заданных функции расстояния и порогового значения, В ходе временной группировки узел находит часто встречающиеся временные последовательности во входных данных, которые указывают на исходную зависимость. Иерархическая временная память и ее узлы могут функционировать в двух режимах: обучения и тестирования,

2,1, Обучение ИВП. Слои ИВП обучаются последовательно от нижнего слоя к верхнему, при этом узлы каждого слоя обучаются параллельно. Входной сигнал промежуточного или выходного слоя формируется с помощью конкатенации выходных сигналов узлов предыдущего слоя или компонент входных векторов. Каждый узел, просматривая входную последовательность данных, проводит пространственную группировку, вычисляет матрицу смежности, затем формирует временные группы. При пространственной группировке вычисляются пространственные центры. Текущий входной вектор фиксируется как пространственный центр в том случае, если ранее не был зафиксирован достаточно близкий к нему пространственный центр. Для входного узла сходство входного вектора и центра определяется как расстояние между ними в евклидовом пространстве. Для центра промежуточного и выходного узлов входной вектор представляет собой вектор индексов временных групп предыдущего слоя, и сходство между векторами определяется функцией

где n — длина векторов x и с. Входной вектор x образует новый пространственный центр, если dist(x,c) > mdist для всех пространственных центров c, где mdist — заданный порог, В ходе временной группировки входного и промежуточного узла пространственные центры {c%,i = 1,..,nc} объединяются во временные группы {gj,j = 1,..,ng}, Временная группа строится как цепь Маркова с матрицей смежности Т. Компоненты Tj равны количеству следований центра ci за центр ом cj. Длина группы ограничена заданной величиной groupMaxSize. При завершении обучения узла формируется матрица PCG, компоненты

которой равны условной вероятности PCGij = P (c^ | gj) появления центра ci при условии gj

n

i=l

Выходной узел обучается с учителем. Вместо формирования временных групп выходной узел вычисляет условную вероятность РОШг] = Р(сг1']) появления пространственного центра с при принадлежности заданному классу Далее по теореме Байеса подечи-тываетея вероятность появления класса

Р К)

ЕП= 1 Р^гз ЕП= 1 ЕП= 1 рсшг

1]

где щ — количество распознаваемых классов,

2,2, Тестирование ИБП. В режиме тестирования ИВП входной сигнал Л- идет от нижнего уровня к верхнему. Функционирование каждого узла сводится к сопоставлению сигналу Л- максимально правдоподобной времен ной группы д] или клае еа шг. Входной узел генерирует вектор у вероятности совпадения Л- с пространственными центрами:

Ус1 - Л"

Уг = ехр |--

Промежуточный и выходной узлы генерируют вектор у как уг = Пк=1 Л" [с] ], где Л" [с]] — вероятность совпадения входного сигнала с наиболее вероятной временной группой ^'-го дочернего узла, а к — количество дочерних узлов. Входной и промежуточный

узлы вычисляют апостериорную вероятность появления сигнала Л" при условии появле-д]

N

Л+ = Р(Л"|д]) = £ у  РСОгз.

1=1

В качестве выходного сигнала выбирается группа д]тах с максимальным значением

Л+ .

]тах

Для выходного узла аналогичным образом подечитываютея

к

Уг = П Л"[С]]' ]=1

п

Р(Л-') = ^ Уг  РСШг].

г=1

Наконец, выходной сигнал формируется как

I = р

и равен вероятности класса ш] при поступлении входного сигнала Л-,

3. Построение модели идентификации. Разработка модели ИВП производится с помощью априори известных данных об исследуемом алгоритме ранжирования, В качестве тестового алгоритма ранжирования в работе рассмотрен классический алгоритм Окар1ВМ25 [6]. Алгоритм имеет аддитивную функцию релевантности:

Кожушко О. А., Тарное М. С.

51

Рис. 1. Модель ИВП для идоитификащш алгоритма ранжирования документов

БЫ 25(д,С) = ^ БЫ 25^м, гея

где

(кг + Ш,*

БМ25^м = гсСЦ •- * ,

М1 - Ь + Ь£п)+ ¿к*

где С — документ, д — запрос, Ь — леммы запроса, С1 — длина документа, аьС1 — средняя длина документов в коллекции, ¿Д* — частота леммы Ь в документе С, гсЦг — обратная частота встречаемости леммы ¿. Коэффициенты обычно принимаются равными следующим значениям: кг = 2, Ь = 0,75,

На вход ИВП поступают данные о запросах и документах, ранжируемых по данным запросам, па выход — результат ранжирования. Результат ранжирования рассматривается как степень релевантности запроса документу, В данной работе различается три степени релевантности: „высокая", „средняя", „низкая". Далее описывается модель идентификации алгоритма ранжирования Окар1Вт25,

Предлагаемая модель (рис, 1) имеет 2 слоя: входной и выходной. Входной слой содержит 2 узла, один из которых работает с параметрами, описывающими запрос, а второй — с параметрами, описывающими документ, В данном случае входной вектор разбивается на вектор запроса д и вектор документа С, каждый вектор обрабатывается своим узлом. Входные узлы ИойеС} и МоёеБ обрабатывают входные векторы д и С: выделяют центры кластеров схожих между собой векторов и строят устойчивые группы центров. Выходной узел МоёеН получает на вход вектор из двух компонент (х,у), х — номер группы вектора-запроса д, у — номер группы вектора-документа С.

Первым этапом в обучении ИВП является подготовка обучающей последовательности, состоящей из троек векторов [дг, сСг, гг). Вектор дг характеризует г-й запрос, сСг — г-й документ, значение гг = с1авв(гапк(БМ25(д,С))) соответствует степени релевантности документа сСг, полученного по за просу дг. Узлы первого уровня обрабатывают данные разного объема и с различными статистическими характеристиками (такими как выборочное среднее и выборочная дисперсия). При построении обучающей последовательности необходимо "

следующим жадным алгоритмом |7|:

х

2) Пока есть векторы, не вошедшие в упорядоченную последовательность, повторять: выбрать вектор у, ближайший к x; включить y в последовательность; x присвоить у.

Использование жадного алгоритма также показывает способ определения временных разрывов (temporal gap) [5]. Разрывы обозначают резкие скачки в последовательности данных. Фиксация разрывов необходима для того, чтобы ИБП не запоминала ложные временные группы, В данном случае разрыв возникает при добавлении в последовательность вектора, значительно удаленного от предыдущего.

Таким образом, алгоритм построения обучающей последовательности имеет следующий вид,

1) Входные векторы узла отсортировать жадным алгоритмом, начав с вектора минимальной длины,

2) Обозначить временной разрыв между векторами, если расстояние между ними в последовательности превышает порог gap.

Обучение ИВП по построенной последовательности происходит в три этапа:

1) Параллельное обучение узлов входного уровня,

2) Подготовка обучающей последовательности для выходного узла в виде (q,d,r), где q — номер группы-запроса, d — номер группы-доку мента, r — степень релевантности. Обозначение разрывов не требуется, поскольку выходной узел обучается с учителем,

3) Обучение выходного узла.

Для успешного обучения необходимо правильно выбрать значения параметров

ИВП, Для каждого узла необходимо подобрать значения параметров mdist, gap а2,

groupMaxSize. Исходя го условий задачи, параметр groupMaxSize равен максимальной

длине последовательности документов, имеющих одинаковую оценку релевантности по

а2

тра в зависимости от удаленности входного вектора и может быть оценен как квадрат средней дисперсии компонент входных векторов [7]. Подбор остальных параметров можно осуществлять с помощью генетического алгоритма, обучая на каждом шаге популяцию систем ИВП [8] или подбирая экспериментально.

После обучения ИВП работает в режиме тестирования, сопоставляя входным векто-q d d q

позволяет получить информацию о векторах документов, которые с наибольшей вероятностью получат определенную оценку релевантности. Для этого необходимо:

1) Вычислить временную группу gq вектор a q.

2) Выбрать все пространственные центры выходного узла cqd. = (gq,gdi), содержащие

gq- ' г

gd

PCW в столбце, соответствующем заданному классу высшей степени релевантности, Век-

gd

4. Результаты экспериментов. Обучающая выборка построена на основе текстовой коллекции РОМИП-2003 и запросов из задания РОМИП-2006 [9]. Отобраны запросы, количество слов в которых варьируется от 2 до 5, при этом запросы не включают в себя цифры, слова с опечатками, неизвестные слова. Всего в задачник вошло 435 запросов, в тестовую выборку — 75 запросов. Для каждого запроса в обучающую и тестовую выборку включено три документа — высоко-, средне- и низкорелевантных. Степень релевантности определялась по рангу: высокорелевантные документы имеют ранг 1, среднерелевант-

Кожушко О. А., Тарков М. С.

53

Таблица 1

Параметры и результаты обучения ИВП

mdist Количество Количество Точность распознавания

центров групп

NodeQ NodeD NodeQ NodeD NodeQ NodeD Обучающие данные Тестовые данные

0,27400 0,38140 8 21 4 6 29,70 % 26,22 %

0,03420 0,09540 367 19 122 9 37,60 % 34,67 %

0,00850 0,00595 422 351 141 120 92,65 % 64,00 %

0,00210 0,00149 428 845 143 284 98,50 % 68,00 %

ные — ранг 11, низкорелевантные — 21, Таким образом, выделено три класса релевантности, принадлежность к которым указывается в качестве выходных значений,

а2

тому, что более 96 % тестовых примеров распознаются как принадлежащие классу под номером 1, независимо от интерпретации данного класса. Это связано с тем, что компоненты выходных векторов Л++ = P(A-|gj) принимают значения порядка 10-40 и меньше, соответственно, выходной узел на большинстве примеров вычисляет нулевой вектор вероятности

принадлежности входного вектора классам релевантности и выбирает первый класс, Зна-

а2

отклонению обучающей выборки для данного узла. Дальнейшая настройка параметров

а2

оценен как 0,00347 для узла NodeQ, обрабатывающего векторы запросов, и 0,00001663 для узла NodeD, обрабатывающего векторы документов,

gap mdist

gap

порядка 10-2 начинают преобладать одноэлементные группы. При уменьшении параметра mdist

лице приведено количество выделяемых в узлах пространственных центров и временных

mdist

Время обучения модели на 1305 примерах составляет 47 минут и 54 секунды при тактовой частоте процессора 1,6 Гц, Время обучения системы зависит как от количества примеров в выборке и архитектуры сети, так и от настроек параметров модели, влияющих на количество выделяемых пространственных центров. Время обучения одного узла оценивается как O(N  K + K3), где N — количество примеров в обучающей выборке, а К — количество пространственных центров узла. Данная оценка напрямую следует из алгоритма обучения.

Заключение. Сформулирована задача идентификации алгоритма ранжирования в терминах задачи классификации. Для решения данной задачи предложена модель иерархической временной памяти для идентификации алгоритма ранжирования, а также предложен подход к выбору параметров модели и дана оценка времени обучения модели. Предложенная модель может быть использована как для получения степени релевантности запросу документа, так и для выявления характеристик документов, принадлежащих к заданному классу релевантности. Полученные результаты свидетельствуют о перспективности развития данного подхода. Дальнейшее повышение точности возможно за счет увеличения обучающей выборки и увеличения количества узлов и слоев в модели ИВП,

Список литературы

1. Baeza-Yates R., Ribeiro-Neto В. Modern Information Retrieval: The Concepts and Technology Behind Search. Addison Wesley Professional, USA, 2011.

2. Гулин А., Карпович П. Жадные алгоритмы в задачах оптимизации качества ранжирования [Электронный ресурс]. 2009. Режим доступа: http://download.yandex.ru/company/experience/ GDD/Zadnie_algoritmy_Karpovich.pdf. — 21.01.2015.

3. Зябрев И., Пожар ков О., Пожаркова И. Моделирование алгоритма текстового ранжирования Яндекса при помощи MatrixNet [Электронный ресурс]. 2010. Режим доступа: http: //www.altertraider.com/publications21.htm. — 21.01.2015.

4. Хокинс Дж., Блексли С. Об интеллекте. М.: Вильяме, 2007.

5. Maltoni D. Pattern Recognition by Hierarchical Tenporal Memory // DEIS Technical Report. [Электронный ресурс]. 2011. Режим доступа: http://bias.csr.unibo.it/maltoni/HTM_TR_vl. pdf. - 21.01.2015.

6. Upstill Т. Document ranking using web evidence. PhD Thesis. The Australian National University, 2005.

7. Kostavelis I., Gasteratos A. On the optimization of hierarchical temporal memory // Pattern Recognition Letters. 2012. V. 33. N 5. P. 670-676.

8. Болотова Ю. А., Спицын В. Г., Фомин А.Э. Применение модели иерархической временной памяти в распознавании изображений // Известия Томского политехнического университета. 2011. V. 318. N 5. Р. 60-63.

9. Российский семинар по оценке методов информационного поиска [Электронный ресурс]. — Режим доступа: http://romip.ru/ — 21.01.2015

Кожушко Оюна Алексеевна — аспирант Новосибирского государственного университета, e-mail: oyuna@mail.ru, тел. 8-913-764-72-65

Тарков Михаил Сергеевич — канд. тех. наук, Институт физики полупроводников им. А. В. Ржанова СО РАН, e-mail: tarkovQisp.nsc.ru,.

Дата, поступления — 18.02.2015