Диссертация (1137159), страница 23
Текст из файла (страница 23)
Для этого необходимо, во-первых, провеститестирование алгоритмов определения типа, объектов интереса запроса ипостроениямножествапреобразованныхзапросовExtSet.Во-вторых,необходимо проанализировать работу комплекса AOS Engine с точки зрениявозвращаемых результатов поиска, тем самым определив работоспособностьразработанного метода и комплекса программ, реализующего данный метод.Следует отметить, что исходный код комплекса прошел интеграционноетестирование, и все компоненты и подсистемы комплекса взаимодействуюткорректно.Для тестирования алгоритмов определения типа и объектов интересапоисковых запросов было выбрано множество запросов, которые принадлежатформальному языку входных запросов Linput.Тестированиеалгоритмовопределениятипаиобъектовинтересапоисковых запросов производилось методом белого ящика в автоматическомрежиме при помощи библиотеки тестирования JUnit.
Было сформированомножество из более чем 300 уникальных поисковых запросов различных типов,элементы которого последовательно подавались на вход алгоритмам, затемсредствами фреймворка JUnit производился анализ соответствия результатовработы алгоритма ожидаемым.
Из соображений компактности листингрезультатов не приводится, однако множество запросов и логика тестированиядоступны в исходном коде комплекса. В таблице 4.8 приведены классы, вкоторых производится тестирование, и их назначение.138Таблица 4.8. Ссылки на исходный код классов автоматизированноготестированияНазначениеСсылкаТестированиеопределенияалгоритмов http://code.google.com/p/aosengine/source/типаинтересаиобъектов browse/core/src/test/java/ru/agiledev/aos/anдляаспектно- alyzer/QueryAnalyzerTest.javaориентированных запросов.Тестированиеопределенияалгоритмов http://code.google.com/p/aosengine/source/типаиобъектов browse/core/src/test/java/ru/agiledev/aos/anинтереса для запросов о достижении alyzer/QueryParserTest.javaцелей и запросов об изменениисостава множеств.Примеры результатов работы алгоритмов определения типа и объектовинтереса запросов приведены в таблице 4.9.Таблица 4.9. Примеры результатов работы алгоритмов определения типа иобъектов интереса поисковых запросов.ЗапросРезультат работы алгоритмаКаких успехов добилось Query type: GOALS_DESCRIPTIONVimeo к 2008?Distinctive object: успеховObject of interest 1: vimeoObject of interest 2: не определенAdditional object: не определенDate object: 2008Каковынеудачиосновные Query type: GOALS_DESCRIPTIONGoogleпрошедшем году?в Distinctive object: неудачиObject of interest 1: googleObject of interest 2: не определенAdditional object: не определен139Date object: 2011 годКакиеизменения Query type: SETS_CHANGES_DESCRIPTIONсостав Distinctive object: изменениязатронуликомпании Object of interest 1: руководстворуководстваНеоторг в 2009 году ?Object of interest 2: компания неоторгAdditional object: не определенDate object: 2009 годКакиеструктурные Query type: SETS_CHANGES_DESCRIPTIONкоснулись Distinctive object: измененияизменениядепартаментаObject of interest 1: департамент проектирования ии разработкипроектированияразработкикомпании Object of interest 2: компания luxoftв позапрошлом Additional object: не определенLuxoftгоду?Date object: 2010Какойосновнойхимическихкласс Query type: CORRESPONDS_TO_DESCRIPTIONэлементов Distinctive object: класспредставляет хром?Object of interest 1: хромObject of interest 2: не определенAdditional object: химических элементовDate object: не определенКаквметаллургииосновномв Query type: USAGE_DESCRIPTIONприменяется Distinctive object: применяетсяуглерод?Object of interest 1: углеродObject of interest 2: не определенAdditional object: металлургииDate object: не определенКакиежевсе-таки Query type: DIFFERENCES_DESCRIPTIONразличия есть у сервера и Distinctive object: несоответствия140мейнфрейма?Object of interest 1: сервераObject of interest 2: мейнфреймаAdditional object: не определенDate object: не определенРезультаты тестирования алгоритмов определения типа и объектовинтересапоисковыхзапросовпоказалиихвысокуюустойчивостькизмененному порядку слов в запросах и возможность манипулироватьрезультатами работы алгоритмов без внесения изменений в их логику.
Так каканализ запросов происходит на основании словарей, содержащих стоп-слова, торезультаты работы можно корректировать, внося изменения в базу данных ибез вмешательства в логику работы алгоритма. Алгоритмы используютбольшое количество подалгоритмов, покрывающих различные ситуации,связанные с особенностями структуры и порядком слов первоначальныхзапросов.Для проведения исследования в аспектно-ориентированную базу знанийбыла внесена информация, позволяющая проводить расширение поисковыхзапросов для понятий «компьютер», «телефон» и «телевизор».
В базу целейбыла внесена информация о достижении успехов и неудач для понятия«компания»,атакжевнесеныразличныешаблонысемантическихтрансформаций. В базу множеств была внесена информация для понятий«компания», «руководство» и «департамент». Листинг внесенных данныхдоступен в приложении 8.Алгоритмы построения множества сфокусированных запросов извлекаютданные из баз знаний и комбинируют их с полученными на этапе анализарезультатами.Тестированиеданныхалгоритмовпроводилосьвполу-автоматическом режиме методом белого ящика. В силу большого объемарезультаты не приводятся, однако исходный код класса, в котором реализованотестирование, доступен по адресуhttp://code.google.com/p/aosengine/source/browse/core/src/test/java/ru/agiledev/aos/141analyzer/QueryExtenderTest.java.Анализработоспособностипрограммногокомплексапроводилсяследующим образом: были выбраны наиболее типичные представителипоисковых запросов различных типов и поданы на вход разработанногокомплекса. Первые 10 возвращенных документов анализируются на предметналичия в них детализаций, выполненных в соответствии с разработаннымметодом преобразования.
Если в документе содержится какое-либо количестводетализаций, то он признается условно релевантным. В таблице 4.10 приведенпример результатов по запросу каждого из типов.Таблица 4.10. Количество условно релевантных документов по различнымзапросам№ ЗапросДокументы1Как работает телефон Samsung Galaxy S?52Каковы характеристики компьютера Lenovo W500?53Какая структура у телевизора Philips?44функции телефона Google Nexus S?65для чего предназначены компьютеры IBM?56Как применяется телефон Motorola Razr?77К какому классу принадлежит компьютер Lenovo T61?88Чем отличаются телефоны Samsung и IPhone?49Что общего у телевизора Philips и Sony?510 особенности телефона Nokia N800711 Каковы возможности компьютера HP Proliant?812 Какие неудачи были у компании Google два года назад?913 какие изменения были в составе компании Аэрофлот?6Представим данные результаты в виде гистограммы (Рис.
4.8).142В СЕ ГО13121110987654651098754487652153121086420Рисунок 4.8. Результаты поиска документов с преобразованием.Как видно из результатов, в большинстве случаев количество найденныхдокументов, содержащих детализации, построенные на основании заполненныхбаз знаний, в среднем превышает 50%. Однако, если по каким-либо частнымслучаям показатели будут неудовлетворительные, то данная ситуация можетбыть лекго исправлена, а показатели улучшены путем внесения изменений вбазуцелей.Поискпроисходитнаоснованиибазызнаний,котораянастраивается для конкретной предметной области.В качестве дальнейшего развития предложенного метода представляетсянеобходимым проведение исследование точности поиска на основе коллекцийдокументов с целью изучения влияния преобразований запросов на точностьпоиска. Также необходимо исследовать результаты работы предложенногометода, используя в качестве системы, выполняющей непосредственно поиск,систему, в которой отсутствует компонент ранжирования по внешнимфакторам,этопозволитразвитьалгоритмыпостроениямножестварасширенных запросов и ранжирования, потому что использование оценки наоснове векторно-пространственной модели позволит более точно осуществлятьпоиск документов, содержащих детализации запросов.4.4 Выводы по главе 4В данной главе были получены следующие основные научные результаты:1.
Разработана логическая архитектура, основанная на описанных впредлагаемом методе шагах преобразования запроса. Определены основныетребования к архитектуре программного комплекса и разработана компонентная архитектура программного комплекса, включающая в себя три основных143подсистемы: лингвистическую базу знаний, аспектно-ориентированную базузнаний и подсистему анализа и расширения запросов – AOS Engine.2.