О проекте

Цель проекта

Цель проекта AIIRE состоит в выработке единого научного и технологического подхода к созданию систем:

  • качественного машинного перевода,

  • интеллектуального информационного поиска (в том числе — экспертных систем),

  • автоматической классификации текстов,

  • распознавания оптических (OCR) представлений текстов и

  • звуковых (ASR) представлений устной речи.

Общим ядром этих систем является универсальный лингвистический процессор.

Его задача — понимать текст на естественном языке и представлять его смысл в формализованном, понятном для машины виде.

Пример работы

Лингвопроцессор

Общим ядром для всех перечисленных систем является универсальный лингвистический процессор (система автоматического понимания и порождения текстов) и используемая им единая база знаний (компьютерная онтология).

Универсальный лингвистический процессор AIIRE — это библиотека и программная утилита, позволяющая производить полный цикл автоматической обработки текста от байт-последовательности до семантического представления содержания текста. В отличие от иных лингвистических процессоров, ЛП AIIRE выполняет анализ текста на всех уровнях одновременно, а не последовательно, благодаря чему достигается максимальная производительность анализа (не происходит комбинаторного взрыва).

Таким образом, ЛП AIIRE — это не морфоанализатор, и даже не парсер. ЛП AIIRE производит все виды анализа в комплексе, выстраивая первые гипотезы семантического анализа сразу после того, как достигает первой осмысленной единицы во входном потоке.

Морфологический анализ

Морфологический анализ (далее -- МА) текстов в системе AIIRE осуществляется двумя способами.

  1. Статический МА (характеризуется высокой производительностью, но высоким потреблением файлового пространства; неактуален для агглютинативных языков): по имеющемуся набору единиц (основ, окончаний, корней, приставок, суффиксов и т.д.) заранее автоматически генерируется вся совокупность словоформ языка, каждой из которых сопоставляются возможные варианты разбора -- идентификаторы лексической единицы и совокупности грамматических признаков. Процесс анализа сводится к поиску словоформы в базе данных.
  2. Динамический МА (характеризуется более низкой, чем статический МА, производительностью, но актуален для агглютинативных языков и для анализа словообразовантельных инноваций): цепочки алфавитных символов сегментируются всеми допустимыми способами, таким образом, чтобы каждый сегмент соответствовал известной системе морфологической единице (основе, окончанию, приставке и т.д.) В процессе сегментации выполняется связывание выделенных единиц, с алгоритмической точки зрения эквивалентное синтаксическому связыванию. Результатом анализа является совокупность гипотез связывания всех обнаруженных атомарных единиц в единые комплексы, снабжаемые грамматической информацией.

Полученные в результате морфологического анализа единицы по мере их появления подвергаются попарному синтаксическому связыванию.

Синтаксический анализ

Синтаксический анализ в системе AIIRE -- это процедура, позволяющая производить переход от синтаксически неделимых единиц к синтаксическим структурам всей анализируемой цепочки. В случае использования статического морфологического анлиза неделимыми единицами считаются словоформы; в случае динамического морфологического анализа -- осмысленные части словоформ (корни и аффиксы). Синтаксические структуры в системе AIIRE представляют собой размеченные структуры составляющих, за счет разметки содержащие в себе информацию о зависимостях (отношениях синтаксического подчинения) и линейном порядке единиц.

В процессе синтаксического анализа производится процедура синтаксического связывания соседних единиц входного потока. Эта процедура состоит в поиске всех возможных маршрутов в грамматике составляющих, связывающих две единицы и имеющих одну точку перелома. В случае отсутствия таких маршрутов связывания не происходит и единицы считаются несвязанными. Таким образом осуществляется снятие морфологической неоднозначности. В случае удачного связывания двух единиц полученная структура подвергается семантическому анализу. Если семантический анализ проходит успешно, то данная структура подвергается связыванию с соседними единицами. Процедура повторяется до тех пор, пока все соседние единицы не окажутся проверенными на связываемость.

Семантический анализ

Семантический анализ в системе AIIRE -- это процедура, направленная на вычисление семантики входного потока на основе результатов его синтаксического анализа.

Каждый узел входного синтаксического дерева представляет собой либо атомарную единицу, либо конструкцию, состоящую из иных единиц.

Для атомарных единиц семантический анализ состоит в извлечении понятий, соответствующих этим единицам, из Базы Знаний.

Для конструкций, состоящих из иных единиц, производится вычисление концептуального графа по правилам, специфицированным в грамматике для каждого класса конструкций.

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

База знаний

База знаний AIIRE (БЗ) предназначена для хранения в структурированном виде информации, извлекаемой иными компонентами AIIRE из неструктурированных и слабоструктурированных источников. В основе БЗ лежит универсальная онтология AIIRE, представляющая собой единую непротиворечивую классификацию понятий, между которыми установлены различные семантические отношения.

Информация, извлекаемая из неструктурированных и слабоструктурированных источников, размещается в поисковых индексах БЗ в виде концептуальных графов, состоящих из понятий и отношений, содержащихся в онтологии.

Семантические отношения между понятиями позволяют производить семантический анализ текстов и осуществлять снятие различных видов неоднозначности языковых единиц. Родо-видовые отношения, образующие классификацию, позволяют оптимизировать структуру онтологии с точки зрения количества хранящихся в ней иных отношений, а также учитывать разновидности при поиске абстрактных понятий (например, конкретные марки автомобилей при поиске автомобилей).