научная исследовательская работа. НИР. Аналитический обзор семантических методов поиска данных в распределенных вычислительных системах
Скачать 0.53 Mb.
|
Основные этапы.Сначала производится идентификация простых объектов, которые определяются отдельными словами или известными словосочетаниями. Далее, определяются комбинации имен и фамилий (действуют как указания на людей) и работает алгоритм анализа отдельных слов и последовательностей слов, которые могут быть неизвестными системе объектами. На втором этапе формируем узлы на основе объектов первого класса с объектами, которые их уточняют. Фразы типа «Студент медицинского университета работает в московской «Больнице №4»» свертываются в один объект. Содержащаяся в этих узлах дополняющая информация («московской» как признак расположения и «медицинского» как признак отрасли в этом примере) может быть добавлена в граф семантических связей для указанной компании. В следующей подглаве граф семантических связей рассмотрим подробнее. Затем, текст структурируется в виде последовательности независимых фрагментов, каждый из которых обычно содержит определенную фразу на основе глагола, и в идеале должен свернуться в один узел, который может включать в себя другие узлы. Обрабатываем причастные обороты и другие конструкции, а перечисления объектов класса 1, в том числе уже сформированные узлы, сворачиваем в специальные объекты. После этого, для каждого фрагмента идет поиск подходящих узлов на основе объектов второго класса. Если для одного узлообразующего объекта сформировалось несколько узлов, остаются те, которые включают в себя максимальное количество объектов в данном фрагменте. Таким образом, на основе типа окружающих объектов происходит переход от семантически широких объектов вроде «бежать» к узлу, имеющему ясный семантический смысл. Если при первичной обработке на месте омонимов возникли несколько параллельных объектов, то после этой обработки остаются только те объекты, которые вошли в узлы (т.е. семантически согласуются с соседними объектами). И наконец, последний блок преобразования в семантическое представление – учет объектов, которые в тексте удалены от узлообразующих объектов, но по смыслу они подразумеваются. Например, «В Санкт-Петербурге холодно, идет дождь. Завтра потеплеет». Семантический анализ конца предложения оставляет вакантной роль географического объекта, и по ряду признаков можно определить, что подходит «Санкт-Петербург». Когда убеждаемся, что узлы полностью сформированы, можем к ним привязываем атрибуты, числовую информацию и периоды времени. Типична ситуация, когда период времени указывается только в одном месте текста, но относится к нескольким узлам по всему тексту. Приходится использовать специальный алгоритм для "распределения" периодов по всем узлам, где "не хватает" периода времени исходя из их семантического значения. Наконец, в каждом документе определяем основные объекты ("о чем" этот документ). Помимо количества вхождений, учитывается участие объектов в узлах разных типов. Имея богатую семантическую информацию, можно построить достаточно точную меру семантической близости документов. Объединение документов в кластер делаем при превышении мерой семантической близости определенного порога. Формируем семантические профили кластеров (основные объекты кластера, по ним обычно идет поиск) и сеть семантических связей между кластерами, позволяющую выводить «облако» документов, связанных по смыслу с определенным документом. Принцип работы семантического поиска.Алгоритм семантического поиска состоит из следующих основных блоков: Отметим, если текстовый запрос, то его обязательно нужно преобразовать в семантическое представление. Не формируем узлы, а выделяем один или несколько блоков, которые состоят из потенциально узлообразующего объекта или ряда объектов. При этом может быть сформировано несколько параллельных комбинаций, в одной из которых (неважно какая) на следующем этапе нужно раскрывать через базу знаний комбинаций в список конкретных объектов, а в другой не надо. На рис.№5 показан пример обработки запроса. Рисунок 5 – Пример обработки запроса. Следующих этап - поиск семантически связанных объектов и узлов. Для одиночных объектов первого класса они представляются в виде выборки семантически связанных объектов. В случае комбинации «действие + объекты» идет поиск узлов, имеющих такой же или подчиненный тип узлообразующего объекта, имеющих в своем составе объекты, совпадающие или семантически связанные с объектами запроса. Здесь используется древовидный граф семантических связей между объектами. Принцип-к определенному объекту привязываются те «подчиненные» объекты, которые должны учитываться в поиске по данному объекту. Для материальных предметов граф строится от более общих понятий к частным и частично совпадает с графом типов. Для ряда объектов количество «подчиненных» может быть велико и поэтому возникает необходимость в выборе наиболее значимых, чтобы их найти между элементами графа установлен числовой коэффициент семантической связи, который рассчитывается на основе значимости объектов. Далее, простые объекты и узлы, которые получили на предыдущем этапе, ищем в объектных профилях кластеров. При возникновении ситуации, если найдено мало кластеров, то будет идти поиск в объектных профилях документов. Если поисковый запрос содержит объекты-атрибуты, а точнее характеристики, то идет дополнительная фильтрация найденных документов по наличию привязанных к найденным узлам искомых атрибутов. Если в запросе есть лексемы, то для некоторых в базе нет перехода к семантическим объектам, и поэтому семантический поиск дополняется обычным текстовым поиском по лексемам. И наконец, упорядочиваем найденные кластеры и документы, формируем сниппеты и прочие элементы выдачи. Ранжирование идет по степени семантической связи между объектами запроса и объектами, через которые были найдены документы. |