Модификация схемы BM25 с помощью генетического алгоритма
Разработка схемы взвешивания BM25 как способа построения вероятностной модели, чувствительной к частоте термина и длине документа. Выбор хромосом для операции мутации, оценка приспособленности нового набора коэффициентов. Операции отбора и скрещивания.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 30.05.2017 |
Размер файла | 262,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Модификация схемы BM25 с помощью генетического алгоритма
С.П. Воробьев, М.Б. Хорошко
Быстро растущие информационное пространство объединенных вычислительных сетей порождает новые потребности в обработке, представлении и особенно в поиске данных. На первое место выходит критерий релевантности, который позволяет при его корректном использовании повысить эффективность информационного поиска. Существует достаточно большое количество схем и моделей для решения задачи поиска, одной из которых является BM25.
Схема взвешивания Okapi BM25, была разработана как способ построения вероятностной модели, чувствительной к частоте термина и длине документа, но не использующей большого количества дополнительных параметров. В соответствии с ней каждый документ получает оценку по запросу , определяемой следующей формулой:
где
Переменная -- это положительный параметр настройки, с помощью которого производится калибровка частоты термина. Переменная -- еще один параметр настройки (), определяющий нормировку по длине документа. Рекомендуемые значения - параметры, равны 1.2 и 0.75 соответственно; и - длина документа и средняя длина документа.
Для подбора параметров надстройки будем использовать следующий генетический алгоритм, который получает на вход количество коэффициентовиспользуемых в модели и возвращает подобранные коэффициенты. Общий алгоритм выглядит следующим образом:
1) Создается начальная популяция. Случайным образом из диапазона коэффициентов отдо (диапазон устанавливается для каждого алгоритма), подбираем наборов коэффициентов и переводим их в двоичный вид.
2) Вычисляем приспособленность хромосом. Оцениваем ошибку, для каждого набора коэффициентов.
3) Выбираем двух родителей с наименьшей ошибкой для операции скрещивания.
4) Выбор хромосом для операции мутации.
5) Оценка приспособленности нового набора коэффициентов.
6) Если ошибка - набора больше заданной ошибки , то переходим к пункту 3, иначе пункт 7.
7) Полученный набор коэффициентов, который минимизирует ошибку, возвращается в модель поиска.
Рассмотрены более детально основные аспекты:
· Все коэффициенты генерируются изначально случайным образом по равномерному закону при ограничении сверху и снизу. Затем переводятся в двоичный вид, чтобы можно было применять операции скрещивания и мутации.
· Ошибка оценивается по следующей формуле:
где, - средняя оценка документа экспертами, по запросу . - полученная релевантность документа , по запросу .
В ходе экспериментов получены оптимальные операции скрещивания и мутации.
Операция отбора. После проведения ряда экспериментов, было выявлено, что для более быстрого получения максимума целевой функции отбор хромосом должен осуществляться по следующему принципу. Для операции скрещивания берется два самых лучших хромосома, и случайным образом хромосом.
Для операции мутации берется два хромосома с самой низкой приспособленностью и хромосом.
Операция скрещивания. Для выбора оптимальной операции скрещивания, был проведен ряд экспериментов с различными методами. В результате определилось два оптимальных метода показанные на рисунке 1. Для проверки эффективности случайным образом делалась выборка запросов от одного до ста. В качестве параметра определяющего оптимальность, бралась средняя оценка релевантности выдачи по данным запросам. Во время эксперимента отключались другие операции. Таким образом функция достигает максимума при сращивании методом «расчески» и очень близко при скрещивании «пополам» (рисунок 2). Решено оставить оба варианта в алгоритме и эксперименты доказали эффективность выбранного способа (рисунок 1). По различным запросам метод расчески достигает максимальной точки по одному набору запросов, метод пополам по двум, а использование двух методов по четырем.
Рис. 1. Операции скрещивания
Рис. 2. Методы скрещивания
При скрещивании «расческой» биты с двух коэффициентов меняются через один. При скрещивании методом пополам, берется половину бит с первого коэффициента и вторую половину со второго коэффициента.
Операция мутации. Для определения оптимальной мутации, был проведен эксперимент, где оценивалась средняя релевантность документов выданных системой при отключенных других механизмах. В результате эксперимента выяснилось, что мутация достигает максимума при вероятности мутирования бита равной 40%. График зависимости результатов поиска от вероятности мутирования показан на рисунке 3.
Рис. 3. Зависимость результатов поиска от вероятности мутирования бита
Для проведения эксперимента, было создано две базы запросов - документов. Первая база используется для обучения алгоритма, вторая для оценки. Тестовые коллекции были предоставлены организацией РОМИП, брались две коллекции:
· псевдослучайная выборка сайтов из домена narod.ru объемом 728 000 документов.
· набор, содержащий новостные сообщения из 25 источников и охватывающий 3 временных интервала (около 31 500 документов).
Были сформированы запросы трех типов:
· информационные запросы,
· навигационные запросы,
· транзакционные запросы.
Всего сформировано около 5 000 запросов в равных соотношениях.
Эксперимент. Реализуем модельOkapiBM25 и ее модификацию, где в качестве параметров надстройки будут выступать подобранные значения с помощью генетического алгоритма. Сравниваются полученные метрики оценки для двух систем по 30 запросам.
Полнота () вычисляется как отношение найденных релевантных документов к общему количеству релевантных документов:
Полнота характеризует способность системы находить нужные пользователю документы, но не учитывает количество нерелевантных документов, выдаваемых пользователю. Полнота показана на рисунке 4.
Рис.4. Полнота
Среднее значение полноты: ВМ=0,173, ГА =0,241. ГА показывает лучшую полноту, в среднем на 40%, т.е. пользователь получит на 40% больше релевантных документов.
Точность () вычисляется как отношение найденных релевантных документов к общему количеству найденных документов.
Точность характеризует способность системы выдавать в списке результатов только релевантные документы. Точность алгоритмов показана на рисунке 5.
Рис.5. Точность
Среднее значение точности: ВМ=0,167, ГА=0,217. ГА показывает точность, выше на 30%, т.е. больше вероятность, что пользователь получит только релевантные документы на свой запрос.
Аккуратность () вычисляется как отношение правильно принятых системой решений к общему числу решений. Аккуратность алгоритмов показана на рисунке 6.
Рис.6. Аккуратность
Среднее значение аккуратности: ВМ=0,832, ГА=0,873. ГА обладает более лучшей аккуратностью на 5%, т.е. система принимает больше правильных решений.
Ошибка () вычисляется как отношение неправильно принятых системой решений к общему числу решений. Ошибка алгоритмов полказана на рисунке 7.
Рис.7. Ошибка
Среднее значение ошибки: ВМ=0,167, ГА=0,150. ГА обладает меньшей ошибкой на 10%, т.е. системой на 10% меньше принято неправильных решений.
F-мера () часто используется как единая метрика, объединяющая метрики полноты и точности в одну метрику. F-мера для данного запроса вычисляется по формуле:
Отметим основные свойства:
·
· если или , то
· если , то
·
F-мера алгоритмов полказана на рисунке 8.
Рис.8. F-мера
Среднее значение f-мера: ВМ=0,17, ГА=0,24. ГА на 40% позволяет улучшить данную метрика, т.е. в среднем ГА выдает лучше результаты на 40%.
Таким образом, модификация с генетическим алгоритмом позволяет улучшить базовую модель в среднем на 40%, т.е. пользователь получит на свой ответ больше релевантных документов на 40%, вероятность того что на запрос будут только релевантные ответы на 30%, на 5% системой принято больше правильных решений, на 10% меньше не правильных.
взвешивание вероятностный частота документ
Литература
1. Sparck Jones, Karen, S. Walker.A probalistic model of information retrieval.б.м. : IP&M, 2000.
2. Маннинг, Кристофер Д. Введение в информационный поиск. М. : Вильямс, 2011.
Размещено на Allbest.ru
...Подобные документы
Основные особенности эволюционных алгоритмов. Описание алгоритмов селекции, мутации, скрещивания, применяемых для реализации генетических алгоритмов. Вычисление функции приспособленности. Программная реализация. Тестирование и руководство пользователя.
курсовая работа [1,3 M], добавлен 11.03.2014Теоретическое изучение системы проведения арифметических операций над двоичными числами. Создание описания операций умножения и блок-схемы алгоритма её выполнения. Определение набора управляющих сигналов и синтез схемы арифметико-логического устройства.
курсовая работа [169,3 K], добавлен 25.12.2012Принципы разработки и примеры работы программы, реализующей основные операции над базами данных (выбор, добавление, модификация и удаление данных), ее функциональные модели и блок-схемы. Особенности выполнения запроса и скорость операций обновления.
курсовая работа [853,4 K], добавлен 25.01.2010Алгоритм реализации арифметической операции и разработка блок-схемы устройства. Составление и минимизация логических выражений работы блоков. Логическая схема регистра, сумматора, сдвига и мультиплексора. Анализ и синхронизация работы устройства.
курсовая работа [1,2 M], добавлен 27.02.2014Описание алгоритма и исходного кода программы формирования графовой модели заданного фрагмента принципиальной электрической схемы. Разработка схемы алгоритмов решения задачи. Результаты решения контрольных примеров, выполненные с помощью программы.
контрольная работа [47,8 K], добавлен 14.10.2012Программа реализации генетического алгоритма, использование визуальной среды программирования. Руководство пользователя, листинг программы. Возможность ввода параметров: объем популяции, число поколений, коэффициент скрещивания и мутации, число городов.
курсовая работа [2,9 M], добавлен 20.08.2009Составление схемы алгоритма и программы для построения графика временной функции, работающей как в машинном, так и в реальном времени. Выбор и обоснование методов расчета. Разработка основной программы. Блок-схемы алгоритмов. Распечатка листинга.
курсовая работа [1,5 M], добавлен 21.11.2013Построение граф-схем и матричной схемы алгоритмов. Формулы фазовых переходов. Выполнение операции "Пересечение" над заданными отношениями базы данных. Принципы взаимосвязи страниц виртуальной памяти с сегментами оперативно запоминающих устройств.
контрольная работа [239,4 K], добавлен 10.10.2015Описание принципа работы генетического алгоритма, проверка его работы на функции согласно варианту на основе готовой программы. Основные параметры генетического алгоритма, его структура и содержание. Способы реализации алгоритма и его компонентов.
лабораторная работа [20,2 K], добавлен 03.12.2014Расчет тепловой схемы с применением методов математического моделирования. Разработка алгоритма реализации модели. Составление программы для ПЭВМ, ее отладка и тестирование. Проведение численного исследования и параметрическая оптимизация системы.
курсовая работа [2,8 M], добавлен 01.03.2013Аналитический обзор принципов построения сетей. Анализ схемы информационных потоков на предприятии. Разработка структурной схемы сети. Выбор активного и пассивного оборудования. Разработка монтажной схемы прокладки сети и размещения оборудования.
дипломная работа [1,5 M], добавлен 22.03.2018Разработка алгоритма работы. Выбор и обоснование структурной схемы. Разработка функциональной схемы блока ввода и блока вывода. Проектирование принципиальной схемы блока ввода и блока вывода, расчет элементов. Разработка программного обеспечения.
курсовая работа [1,7 M], добавлен 25.12.2011Составление схемы алгоритма и программы для построения графика временной функции, работающей как в машинном, так и в реальном времени. Пример вычисления степенного ряда с помощью схемы Горнера. Описание переменных программы, листинг, процедуры и функции.
курсовая работа [67,6 K], добавлен 20.11.2012Разработка функциональной схемы операционного автомата микросхемы специализированного процессора, выполняющего заданную арифметическую операцию. Закодированная граф-схема машинного алгоритма. Таблица входов мультиплексора выбора осведомительного сигнала.
курсовая работа [669,9 K], добавлен 25.07.2013Разработка алгоритма, который может выполнить расчет определения координат точек кинематической схемы и выполнить анимацию (визуальное отображение перемещений объектов) кинематической схемы с использованием пакета MathCad. Расчет кинематической схемы.
курсовая работа [1,1 M], добавлен 10.07.2012Первые работы по симуляции эволюции. Основные понятия генетических алгоритмов. Постановка задачи и функция приспособленности. Инициализация, формирование исходной популяции. Выбор исходной популяции для генетического алгоритма, решение задач оптимизации.
курсовая работа [714,1 K], добавлен 31.03.2015Изучение существующей технологии почтовых отправлений. Составление модели технологической операции в формате "как есть". Разработка модели автоматизированной технологической операции в формате "как надо" (TO-BE). Разработка технического задания на АРМ.
контрольная работа [610,0 K], добавлен 20.12.2010Описание алгоритма работы и разработка структурной схемы МКС. Схема вывода аналогового управляющего сигнала, подключения ЖК-дисплея, клавиатуры и аварийного датчика. Разработка блок-схемы алгоритма главной программы работы МКС. Функция инициализации.
курсовая работа [5,7 M], добавлен 26.06.2016Специфика работы терапевтического отделения. Разработка имитационной модели в среде AnyLogic. Выбор средств моделирования. Описание схемы моделирующего алгоритма. Организация вычислительного эксперимента над математической моделью, анализ его результатов.
курсовая работа [1,2 M], добавлен 10.06.2015Cтpyктypнaя модель функционирования пapикмaxepcкoй: описание временной диаграммы и Q-схемы системы. Разработка машинной имитационной модели на специализированном языке GPSS: составление блок-схемы, детализированного алгоритма и листинга программы.
курсовая работа [425,1 K], добавлен 02.07.2011