КОМПЬЮТЕРНАЯ   ЛИНГВИСТИКА
 
 

 

 
 



 

 

                                                        Все статьи

СИНТАКСИЧЕСКИЙ АНАЛИЗ ТЕКСТОВ <<--- 
---
>> ФРАЗЕОЛОГИЧЕСКИЙ МАШИННЫЙ ПЕРЕВОД ТЕКСТОВ

КОНЦЕПТУАЛЬНЫЙ АНАЛИЗ ТЕКСТОВ

Концептуальный анализ текстов – это, прежде всего, выявление их понятийного (концептуального) состава. Для решения такой задачи необходим эталонный словарь наименований понятий достаточно большого объема. При анализе политематических текстов он должен включать не менее нескольких миллионов лексических единиц (преимущественно словосочетаний). В процессе анализа эталонный словарь сопоставляется с исходным текстом. Опознанные в тексте лексические единицы  словаря считаются наименованиями понятий этого текста. В процедурах концептуального анализа текстов может быть использовано как обычное (прямое), так и инверсное представление эталонного словаря наименований понятий. При инверсном представлении каждому слову словаря ставится  в соответствие перечень номеров (или адресов) словосочетаний, в которые оно входит. Каждый номер словосочетания сопровождается информацией о количестве слов в этом словосочетании и о месте входного слова инверсного словаря в словосочетании (первое, последнее или промежуточное место). 

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

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

Существуют различные способы хеширования. Один из наиболее эффективных - “способ середины квадратов”. По этому способу буквенный код исходного слова или словосочетания делится на равные части. Затем эти части суммируются поразрядно по модулю два, их сумма возводится в квадрат и из полученной кодовой комбинации выбирается ее средняя часть (“середина квадрата”). Длина хешкода  восемь байтов  была определена экспериментальным путем, исходя из необходимости одновременного выполнения двух условий: минимума длины хешкода и отсутствия совпадений хешкодов различных слов и словосочетаний в словаре объемом  2 млн. лексических единиц.

В процессе концептуального анализа  текстов “логическая шкала” играет двоякую роль: с одной стороны, она используется в качестве инструмента для определения потенциальных границ наименований понятий в текстах;  с другой стороны, с ее помощью отсеиваются наименования понятий, которые заведомо отсутствуют в эталонном словаре. В этой роли она успешно использовалась в системе RETRANS в течение десяти лет. Однако у “логической шкалы” есть серьезный недостаток: она строится на основе массива поисковых образов входных наименований понятий эталонного словаря, и при ее случайном искажении может быть восстановлена  только на основе этого массива. А этот массив не сохраняется. Можно, конечно, обойтись и без логической шкалы, если выделять из текста  все возможные отрезки предложений длиной от двух до семнадцати слов, строить по ним их поисковые образы, заменять их на хешкоды и искать по хешкодам наименования понятий в эталонном словаре. Но тогда в процессе концептуального анализа пришлось бы проводить большое количество ненужных поисков в эталонном словаре (для отрезков текстов, которые там отсутствуют). Чтобы избежать такого положения, необходимо было создать фильтр, который мог бы отсеивать отрезки текстов, отсутствующие в словаре.

Такой фильтр был построен следующим образом. Хешкоды поисковых образов наименований понятий эталонного словаря преобразовывались путем повторного хеширования в более короткие кодовые комбинации (вторичные хешкоды), которые интерпретировались как адреса битов в некотором адресуемом пространстве памяти ЭВМ. По этим адресам записывались символы “1”. В результате формировалась логическая шкала, в которой символы “1” соответствовали первичным хешкодам, представленным в эталонном словаре, а символы “0” – виртуальным хешкодам,  которые в нем отсутствовали. Если теперь, после выделения некоторого отрезка текста,  сформировать его поисковый образ и заменить на первичный хешкод, а первичный хешкод - на вторичный, то, обращаясь по вторичному хешкоду к логической шкале, можно обнаружить в ее соответствующей позиции символ “0” или символ “1”. Символ “0” будет означать, что выделенный отрезок текста заведомо не принадлежит к числу наименований понятий, представленных в эталонном словаре, и его там не следует искать, а символ “1” – что этот отрезок с большой вероятностью может быть наименованием понятия, содержащемся в эталонном словаре, и его следует искать в словаре. Окончательное решение о признании выделенных отрезков текста наименованиями понятий принималось только тогда, когда выделенные в нем слова или словосочетания находились в эталонном словаре.
Сочинения по русскому языку