
- •Тема 1. Основные понятия искусственного интеллекта.
- •Основные понятия искусственного интеллекта.
- •Базы данных и знаний.
- •Основные области применения и задачи интеллектуальных систем
- •Тема 2. Проблема представления знаний
- •Тема 3. Продукционные системы. Фреймы. Исчисление предикатов. Нейронные сети. Генетические алгоритмы
- •3.1. Продукционные системы
- •3.2. Фреймы
- •3.3. Исчисление предикатов
- •3.4. Нейронные сети
- •3.5. Генетические алгоритмы
- •Тема 4. Языки искусственного интеллекта
- •Тема 5. Искусственный интеллект и естественный язык
- •5.1. Сущность проблемы обработки естественного языка
- •5.2. Основная проблема обработки естественного языка
- •5.3. Распознавание языка
- •Морфологический анализ.
- •Синтаксический анализ.
- •Семантический анализ.
- •Результат
- •Проблемный анализ.
- •Синтез текста.
- •Основные модели лингвистических систем.
- •Стратегия разбора и синтеза текстов в зависимости от типа языка.
- •2. Морфологический (лексико-грамматический) анализ.
- •3.Синтаксический анализ.
- •Модели синтаксического анализа, применяемые в зарубежных промышленных решениях.
- •1. Модели, основанные на Link Grammar.
- •2. Модели, использующие структуры уровня именных и глагольных групп.
- •Лингвистический процессор ю.Д. Апресяна, и.М. Богуславского и л.Л. Иомдина.
- •Другой вариант модели синтаксического анализатора рассмотрим на примере проекта «диалинг».
- •4. Семантический анализ. Реализация семантического анализа в системе диалинг
- •Реализация семантического анализа в лингвистическом процессоре ю.Д. Апресяна, и.М. Богуславского и л.Л. Иомдина.
- •Реализация семантического анализатора в системе MyLingvo.
- •5. Структуры хранения данных и знаний.
- •Исчисление предикатов. Общие понятия.
- •Приведение произвольной формулы к множеству дизъюнктов.
- •Унификация и ее алгоритм.
- •Правило резолюций и его применение.
Реализация семантического анализа в лингвистическом процессоре ю.Д. Апресяна, и.М. Богуславского и л.Л. Иомдина.
Семантический анализ в этой системе есть переходный этап между синтаксическим анализом (построением синтаксической структуры) и построением SQL-запроса к таблицам реляционной базы данных (к которому здесь фактически сводится прагматический анализ). На этом этапе строится семантическая структура в виде семантического дерева зависимостей, уже явно ориентированного на построение SQL-запроса. SQL-запрос имеет вид: SELECT <Список полей таблицы>FROM<Таблица или другой запрос>WHERE<Список условий> Семантическая структура, получаемая на выходе семантического анализа, как уже было сказано имеет вид дерева зависимостей. В данном случае это особенно удобно, так как выход синтаксического анализа в процессоре также представляет из себя древесную структуру. Таким образом для работы семантического анализа может использоваться алгоритмический аппарат, используемый в синтаксическом анализе. Узлы семантической структуры бывают четырех типов:
Термы-константы, под которыми подразумеваются конкретные значения атрибутов (полей) таблиц.
Термы-переменные – имена таблиц базы данных.
Функциональные символы – имена атрибутов (полей) таблиц.
Операторные символы – операторы языка SQL: MAX(максимальное значение поля), MIN(минимальное значение поля), AVG (среднее значение поля), SUM(итоговая сумма по полю), COUNT (число значений поля). Для каждого оператора указывается список функций, над значениями которых этот оператор может производить действия.
Дуги семантической структуры помечаются символами семантических отношений. Семантические отношения бывают четырех типов:
1. Аргументные отношения (arg).
2. Предикатные отношения: «равно»(EQU), «не равно»(NON-EQU), «больше» (MOR), «меньше» (LES), «больше или равно» (MOR-EQU), «меньше или равно» (LES-EQU), «принадлежит», «не принадлежит» .
3. j-оператор (JOT). Он выражает отношение «такой, что».
4. Логические отношения конъюнкции (CON) и дизъюнкции (DIS).
Семантическая структура определяется чрез семантические поддеревья. Поддеревья бывают объектные и предикатные. Объектные служат для описания объектов, а предикатные – для записи утверждений об объектах.
Объектные поддеревья.
Обозначаются До. 1 Элементарные объектные поддеревья: 1.1. Вырожденное поддерево, состоящее из одного узла, в котором стоит терм-константа (значение поля таблицы) 1.2. Если F – некоторый функциональный символ (имя поля таблицы), а X – соответствующая ему переменная (имя таблицы), то
- элементарное До.
Если F – некоторый функциональный символ (имя поля таблицы), X – соответствующая ему переменная (имя таблицы), OPER – оператор, действия которого над множеством значений F допустимы, то
- элементарное До.
2. Если До(X) – элементарное объектное поддерево, а Дп1(X), Дп2(X),…,ДпN(X) – предикатные поддеревья, зависящие от одной и той же переменной X, то
- объектное поддерево, зависящее от переменной X.
Предикатные поддеревья.
Обозначаются Дп. 1.Элементарные предикатные поддеревья. Если До и До1 – элементарные объектные поддеревья (см. выше), то Дп =
где r = {=,!=,<,>,>=,<=,Є,!Є}, – элементарное предикатное поддерево.
2. Если До – элементарное объектное поддерево, а До1 – какое-либо объектное поддерево, то
где r = {=,!=,<,>,>=,<=,Є,!Є}, – предикатное поддерево.
3. Если Дп1 и Дп2 – предикатные поддеревья, то Дп =
где r = {&,V}, – тоже предикатное поддерево.
Пример семантического дерева запроса:
соответствует запросу: SELECT Номер FROM Отдел WHERE Наименование = «Отдел продаж».