Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metod_SII.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
171.52 Кб
Скачать

Лабораторна робота №4

Тема: Інтерфейс на природній мові. Семантичний аналіз

Мета роботи: Вивчення прийомів семантичного аналізу речень природної мови за допомогою відмінкової граматики

Методичні вказівки

Природно-мовний інтерфейс для інтелектуальних систем у ряді випадків є невід'ємною частиною. Наприклад, в базу даних можна звернутися на обмеженій природній мові. Іншими прикладами є система перекладу текстів з однієї мови на іншу, системи управління голосом в робототехніці та ін. Проблема розпізнавання фраз природної мови набагато складніша за класичну проблему розпізнавання фраз мов програмування, де, як правило, обмежуються синтаксичним аналізом. Розпізнавання фрази природної мови має кінцевою метою виявлення сенсу, тобто семантики. Синтаксична правильність фрази є лише необхідною умовою. Достатня умова – умова семантичної коректності. Семантичний, тобто смисловий аналіз пропозиції природної мови дозволяє правильно інтерпретувати пропозицію.

Одним з можливих і найбільш часто використовуваних підходів до реалізації семантичного аналізу є вживання так званих відмінкових відношень [6, гл. 9]. Об'єктом нашої уваги в даній лабораторній роботі є речення-дії, тобто такі речення, в яких обов'язково по сенсу присутня дія. Головним елементом речення-дії є дієслово, що виражає дану дію. Це дієслово знаходиться серед груп іменників, які пояснюють його дію. Для семантичного аналізу необхідно встановити відмінки цих іменників. Відмінок визначає відношення до головного дієслова даної групи іменників. Тут і далі мова йтиме про так звані відмінкові відношення. Множина відмінкових відношень складають клас універсальних відношень, характерних для багатьох природних мов, у тому числі і для української. Нижче наводиться ряд найбільш важливих відмінків.

Об'єктний відмінок. Об'єктом є група іменника, на який направлена дія. Наприклад: “Студент третього курсу в осінньому семестрі в термінальному класі реалізував ефективну програму на мові Пролог для курсового проекту”. У об'єктному відмінку по відношенню до дієслова “реалізував” виступає група іменника “ефективна програма”.

Агентний відмінок. Агента в наведеному вище прикладі характеризує група іменника “студент третього курсу”. Агентом виступає виконавець дії.

Інструментальний відмінок. Інструментальний відмінок визначає групу іменника, яка представляє інструмент, за допомогою якого агент здійснює дію по відношенню до об'єкту.

Ко-агентний відмінок. Коагент проводить дію разом з агентом і знаходиться відносно підлеглості до агента.

Цільовий відмінок. Група іменника в цільовому відмінку (у даному прикладі “курсовий проект”) визначає заради чого (для якої мети) здійснюється дія.

Локутивний відмінок. Група іменників в лакутивному відмінку позначає місце дії. У прикладі це “термінальний клас”.

Часовий відмінок. Група іменника, що визначає час виконання дії (“осінній семестр”).

Список відмінків можна продовжити. Наприклад, відмінок джерело-призначення описує початок і кінець руху з використанням прийменників “з-в”. Траєкторний відмінок вказує траєкторію з використанням прийменників “через”, “крізь” та ін.

Зрозуміло, що відмінки породжують деякі бінарні відношення. Тому наведений вище приклад можна змалювати у вигляді графа, якого називають також семантичною мережею.

Дія = “реалізована”

х то (об'єкт)

ким (агент) за допомогою чого (інструмент)

с тудент 3-го курсу ефективна програма мова пролог

для чого (мета) де (місце) коли (час)

курсовий проект термінальний клас осінній семестр

Рис.1. Семантична мережа, породжена відмінковими відношеннями

Далі можна застосувати формальні граматики для опису структури речення-дії. Формальна граматика може бути використана як для цілей розпізнавання фрази природної мови (розпізнавальна граматика), так і для синтезу фрази (породжувальна граматика). Нижче наводиться фрагмент контекстно-вільної граматики для речення-дії в модифікованій формі Бекуса-Наура.

<речення> := <агент> < дія> <об'єкт> [<інструмент>] [<місце>] [<час>] [<мета>];

<агент> := <займенник> | <іменна словосполука> | <власний іменник>;

<дія>:= <дієслово> | <дієслівна група>;

<об'єкт> := <займенник> | <іменна словосполука> | <власний іменник>;

<інструмент> := [<інструментальний прийменник>] <іменна словосполука>;

<час> := [<часовий прийменник>] <іменна словосполука>;

<місце> := [<локутивний прийменник>] <іменна словосполука>;

<мета> := [<цільовий прийменник>] <іменна словосполука>;

<іменна словосполука> := <іменник> | <прикметник> <іменник>;

займенник := він, вона, воно;

інструментальний прийменник:=з| за допомогою;

часовий прийменник:=перед|після;

локутивный прийменник:=в|на|під|над|всередині|назовні;

цільовий прийменник:=з метою|для;

<дієслово>:=реалізував;

<іменник>:=студент | програма | курс | семестр | клас | пролог | проект;

<прикметник>:= третій | осінній | термінальний | ефективний | курсовий;

Даний фрагмент відмінкової граматики можна розвивати в багатьох напрямах, проте на цьому прикладі стає зрозумілим принцип побудови такого роду граматик.

Наступний фрагмент програми на Пролозі показує можливу дорогу реалізації відмінкової граматики:

sentence(S,S0):-agent(S,S1), effect(S1,S2), object(S2,S0).

sentence(S,S0):-agent(S,S1), effect(S1,S2), object(S2,S3),instrument(S3,S0).

sentence(S,S0):-agent(S,S1), effect(S1,S2), object(S2,S3),instrument(S3,S4)

position(S4,S0).

sentence(S,S0):-agent(S,S1), effect(S1,S2), object(S2,S3),instrument(S3,S4)

position(S4,S5),time(S5,S0).

sentence(S,S0):-agent(S,S1), effect(S1,S2), object(S2,S3),instrument(S3,S4)

position(S4,S5),time(S5,S6),purpose(S6,S0).

agent([X|S0],S0):-pronoun(X).

agent(S,S0):-noun_group(S,S0).

agent([X|S0],S0):-name(X). і так далі

Питання природно-мовних інтерфейсів систематично розглянуті в [10]. За основу даною для даної лабораторної роботи узятий матеріал з [6], гл.9.

Завдання

  • Сформулювати задачу семантичного аналізу в контексті природно-мовного інтерфейсу для інтелектуальних комп'ютерних програм;

  • реалізувати на Пролозі відмінкову граматику;

  • вибрати деяку предметну область, дати її опис реченням або набором речень. Розширити універсальну відмінкову граматику з врахуванням семантики предметної області;

  • переконатися, що комп'ютер правильно розуміє вислови з даної предметної області;

  • побудувати семантичну мережу вибраної предметної області в термінах відмінкових відношень;

  • реалізувати декілька запитів до бази знань, представленою семантичною мережею.

Контрольні питання

  1. Вкажіть можливі сфери застосування природно-мовних інтерфейсів.

  2. Наведіть речення, які не є реченнями-діями.

  3. Вкажіть можливі дороги реалізації узгодження слів в реченнях української мови. Чи можливо вирішити цю проблему, залишаючись в рамках контекстно-вільної граматики?

  4. Як у загальних рисах повинна виглядати система перекладу з однієї мови на іншу?

  5. Як у загальних рисах повинна виглядати мультимедійна система спілкування з комп'ютером українською мовою?

  6. Як можна розширити відмінкову граматику, аби став можливим переклад мовою SQL наступної фрази: “Які міста України є мегаполісами (мають більше мільйона жителів)?”

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]