<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Алгоритм семантического поиска в больших текстовых коллекциях</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Altai State Technical University</institution>
          ,
          <addr-line>Barnaul</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <fpage>161</fpage>
      <lpage>166</lpage>
      <abstract>
        <p>Аннотация В статье рассматривается метод семантического поиска для многопоточной обработки текстов большого объема. Поисковый запрос и обрабатываемый текст преобразуются в графы семантических связей. Предлагается алгоритм вычисления коэффициента соответствия семантических графов. Приводятся оценки времени обработки. Ключевые слова: семантический анализатор, граф, справочник, вес, тип семантической связи.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>предположения, что большая текстовая коллекция в общем случае
неоднородна и с точки зрения поиска интересна ее определенная часть, то текст
нужно разделить на определенные участки - страницы, абзацы или наборы
из нескольких предложений. Такие фрагменты будем называть ¾окнами¿.</p>
      <p>Для каждого окна запроса и поисковых коллекций строится граф
семантических связей, назовем его ¾семантический граф¿. Семантический граф
представляет собой направленный граф, вершинами которого являются
слова русского языка, представленные в нормальной форме, а ребра
характеризуются весом и типом семантической связи. Направление ребра зависит от
типа семантической связи, например, отношение объект - действие, объект
- свойство, действие - время.</p>
      <p>Для построения семантического графа каждое предложение из окна
коллекции обрабатывается семантическим анализатором. В данной работе
используется семантический анализатор RML1.</p>
      <p>Предложения окна обрабатываются последовательно. На каждой
итерации семантический граф предыдущей итерации объединяется с графом
Gnew обрабатываемого предложения. Веса ребер семантического графа Gnew
равны 1. После объединения у графа Gi+1 все веса ребер умножаются на
коэффициент затухания η.</p>
      <p>
        Gi+1 = (Gi + Gnew) ∗ η
(
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
После этого результирующий семантический граф используется для
следующей итерации. Затем из графа удаляются ребра с весом меньше δ.
Уменьшение веса ребер на заданный процент, аналогичное испарению феромона в
¾муравьином алгоритме¿ [5], сделано для ослабления воздействие
предшествующих семантических зависимостей между вершинами графа.
      </p>
      <p>Далее необходимо подсчитать величину коэффициента соответствия
семантического графа запроса и семантического графа окна. Простой поиск
наибольшего общего подграфа, даже с учетом совпадения не только вершин,
но и типов ребер, не приведет к цели. Во-первых, по причине NP-
полноты данной задачи. Во-вторых, один и тот же смысл содержится в текстах
разного стилевого оформления, например, содержит обобщающие сведения
или только частичную информацию. К хордовым, обитающим в тайге, в
том числе относятся и зайцы тайги. Очевидно, улавливается связь:
хордовые → зайцы. Однако между хордовыми и зайцами не должно быть полного
отождествления, т. к. хордовые – это не только зайцы.</p>
      <p>Для поиска связанных по смыслу слов был использован словарь, в
котором представлен перечень слов в нормальной форме [6]. Каждому
слову сопоставлен набор слов, связанных с ним ассоциативной, синонимичной
и т. д. связью. Таким образом, словарь представляет собой направленный
граф Gword = (Vword,Uword), где вершины Vword - это слова в нормальной
форме, а ребра Uword имеют действительные весовые коэффициенты от 0
до 1. Назовем граф Gword графом справочника.
1 http://www.aot.ru
За коэффициент связанности слов ak и am - вершин семантического
графа запроса Grequest и семантического графа окна коллекции Gtext возьмем
произведение весов от таких же слов до общего предка в графе
справочника. При совпадении слов данный коэффициент будет равен 1, иначе будет
принадлежать промежутку [0;1].</p>
      <p>Замечание: Граф справочника является упрощенной моделью знаний о
реальном мире, а общий предок слов ak и am в этом графе - это некоторое
обобщение соответствующих понятий. Нет смысла искать общего предка
слов во всем графе справочника. Следовательно, нас интересует некое ξ
окружение искомых слов. В противном случае считаем, что слова никак не
связаны по смыслу. Фрагмент графа Gword представлен на рис. 1.</p>
      <p>
        Рис. 1. Граф справочника
Далее ищем наилучшее совпадение семантического графа запроса с
графом окна. Коэффициент соответствия рассчитываем по формуле 2:
n
S = X D1k ∗ D2k ∗ L1k ∗ L2k,
k=1
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
где n – количество совпавших ребер графа запроса и окна, k – индекс
соответствующего ребра, D1k, D2k – произведение весов ребер в графе
справочника от слова запроса и слова окна до общего предка соответственно,
L1k – вес ребра k семантического графа запроса, L2k – вес ребра k
семантического графа окна. Так как вариантов совпадения графов много – нас
интересует максимальное значение коэффициента соответствия. Определив
максимальное значение по всем окнам текстовой коллекции - получим общее
значение – коэффициент соответствия запроса и текстовой коллекции.
3
      </p>
      <p>Тесты и результаты
Оценка полученной системы является экспертной. Для поиска были
отобраны текстовые коллекции большого объема удовлетворяющие одному и
тому же запросу к поисковой системе google.ru. В зависимости от настроек</p>
      <p>Рис. 2. Временные затраты
Основным минусом текущей реализации алгоритма является
значительное увеличение времени обработки с ростом размеров окна и запроса.
Плюсом является то, что текстовая коллекция и запрос могут быть разделены
на окна оптимального размера с точки зрения времени обработки. Кроме
того обработка окон текстовой коллекции, в данном случае, может
выполняться параллельно, что значительно повышает скорость выполнения на
многопоточных и многопроцессорных системах.
Список литературы
6. Крайванова В.А., Кротова А.О., Крючкова Е.Н. Построение взвешенного
лексикона на основе лингвистических словарей // Материалы Всероссийской
конференции с международным участием ЗОНТ-2011, Т.2, Новосибирск, 2011.</p>
      <p>Vitaliy V. Savchenko
Abstract. This article describes a method of semantic search based
on the text processing of large volume. Search requests and processing
text from analyzed collection is transformed into a graph of semantic
relationships, the comparison of which allows us to define a measure
of semantic similarity of compared texts. An algorithm is proposed to
calculate the coefficient of semantic graphs concordance. Estimates of
the processing time are also given.</p>
      <p>Keywords: semantic analyzer, graph, directory, weight, type of
semantic communication.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Hannah</given-names>
            <surname>Bast</surname>
          </string-name>
          ,
          <source>Marjan Celikik Efficient Fuzzy Search in Large Text Collections // ACM Transactions on Information Systems</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Mathieu</surname>
          </string-name>
          <article-title>d'Aquin, Enrico Motta Watson, more than a Semantic Web search</article-title>
          engine // IOS Press Amsterdam,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>K</given-names>
            <surname>Elbedweihy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S N</given-names>
            <surname>Wrigley</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F</given-names>
            <surname>Ciravegna</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D</given-names>
            <surname>Reinhard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A Bernstein</given-names>
            <surname>Evaluating Semantic Search Systems</surname>
          </string-name>
          to Identify Future Directions of Research // Second International Workshop on Evaluation of Semantic Technologies, page
          <volume>25</volume>
          -
          <fpage>36</fpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>G.</given-names>
            <surname>Tsoumakas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Laliotis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Markantonatos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. Vlahavas</given-names>
            <surname>Large-Scale Semantic</surname>
          </string-name>
          Indexing of Biomedical Publications at BioASQ // BioASQ Workshop,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Штовба</surname>
            <given-names>С</given-names>
          </string-name>
          . Д. Муравьиные алгоритмы // Exponenta Pro. Математика в при- ложениях, №
          <volume>4</volume>
          , с.
          <fpage>70</fpage>
          -
          <lpage>75</lpage>
          ,
          <year>2003</year>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>