Забезпечення взаємодії з ЕОМ природною мовою b> p>
Забезпечення
взаємодії з ЕОМ природною мовою (ЕЯ) є найважливішим завданням
досліджень з штучного інтелекту (ШІ). Бази даних, пакети прикладних
програм і експертні системи, засновані на ШІ, вимагають оснащення їх гнучким
інтерфейсом для численних користувачів, що не бажають спілкуватися з
комп'ютером на штучному мовою. У той час як багато фундаментальних
проблеми в галузі обробки ЕЯ (Natural Language Processing, NLP) ще не вирішені, прикладні системи можуть
оснащуватися інтерфейсом, що розуміє ЕЯ при певних обмеженнях. p>
Існують два
вигляду і, отже, дві концепції обробки природної мови: p>
для
окремих пропозицій; p>
для ведення
інтерактивного діалогу. p>
Природа
обробки природної мови p>
Обробка
природної мови - це формулювання й дослідження комп'ютерно-ефективних
механізмів для забезпечення комунікації з ЕОМ на ЕЯ. Об'єктами досліджень
є: p>
власне
природні мови; p>
використання
ЕЯ як у комунікації між людьми, так і в комунікації людини з ЕОМ. P>
Завдання
досліджень - створення комп'ютерно-ефективних моделей комунікації на ЕЯ.
Саме така постановка завдання відрізняє NLP від завдань традиційної лінгвістики і
інших дисциплін, що вивчають ЕЯ, і дозволяє віднести її до області ШІ. Проблемою NLP займаються дві дисципліни: лінгвістика та
когнітивна психологія. p>
Традиційно
лінгвісти займалися створенням формальних, загальних, структурних моделей ЕЯ, і
тому віддавали перевагу тим з них, які дозволяли витягати як можна
більше мовних закономірностей і робити узагальнення. Практично ніякого
уваги не приділялося питанню про придатність моделей з погляду комп'ютерної
ефективності їх застосування. Таким чином, виявилося, що лінгвістичні
моделі, характеризуючи власне мову, не розглядали механізми його породження
та розпізнавання. Хорошим прикладом цього служить породжує граматика Хомського,
яка виявилася абсолютно непридатною на практиці як основи для
комп'ютерного розпізнавання ЕЯ. p>
Завданням же
когнітивної психології є моделювання не структури мови, а його
використання. Фахівці в цій області також не надавали великого значення
питання про комп'ютерну ефективності. p>
Розрізняються
загальна та прикладна NLP.
Завданням загальної NLP
є розробка моделей використання мови людиною, що є при цьому
комп'ютерно-ефективними. Основою для цього є загальне розуміння текстів,
як це мається на увазі в роботах Чарняка, Шенка, Карбонелл та ін Безсумнівно,
загальна NLP вимагає величезних
знань про реальний світ, і більша частина робіт зосереджена на представленні
таких знань і їхньому застосуванні при розпізнаванні надходить повідомлення на ЕЯ. На
сьогоднішній день ШІ ще не досяг того рівня розвитку, коли для вирішення
подібних завдань у великому обсязі використовувалися б знання про реальний світі, і
існуючі системи можна називати лише експериментальними, оскільки вони
працюють з обмеженою кількістю ретельно відібраних шаблонів на ЕЯ. p>
Прикладна NLP займається звичайно не моделюванням, а
безпосередньо можливістю комунікації людини з ЕОМ на ЕЯ. У цьому випадку
не так важливо, як уведена фраза буде зрозуміла з погляду знань про реальний
світі, а важливо вилучення інформації про те, чим і як ЕОМ може бути корисною
користувачеві (прикладом може служити інтерфейс експертних систем). Крім
розуміння ЕЯ, в таких системах важливо також і розпізнавання помилок і їх
корекція. p>
Основна
проблема обробки природної мови
p>
Основний
проблемою NLP
є мовна неоднозначність. Існують різні види неоднозначності: p>
Синтаксична
(структурна) неоднозначність: у фразі Time flies like an arrow для ЕОМ неясно, чи йдеться про
часу, який летить, або про комах, тобто чи є слово flies дієсловом чи іменником. p>
Значеннєва
неоднозначність: у фразі The man went to the bank to get some money and jumped in слово bank може означати як банк, так і берег. p>
відмінкова
неоднозначність: привід in в
пропозиціях He ran the mile in four minutes/He ran the mile in the Olympics позначає або час, або місце, тобто представлені абсолютно
різні відносини. p>
Референціальная
неоднозначність: для системи, не володіє знаннями про реальному світі, буде
важко визначити, з яким словом - table або cake --
співвідноситься займенник it у фразі I took the cake from the table and ate it. p>
Літерація (Literalness): у діалозі Can you open the door? - I feel cold ні прохання, ні відповідь виражені у нестандартний спосіб. В інших
обставин на питання може бути отриманий пряму відповідь yes/no, але в
даному випадку в питанні імпліцитно висловлено прохання відкрити двері. p>
Центральна
проблема як для загальної, так і для прикладної NLP - дозвіл такого роду неоднозначностей
- Вирішується за допомогою перекладу зовнішнього подання на ЕЯ в якусь внутрішню
структуру. Для загальної NLP таке перетворення вимагає набору знань про реальний світі. Так, для
аналізу фрази Jack took the bread from the supermarket shelf, paid for it, and left і для коректної відповіді на такі
питання, як What did Jack pay for?,
What did Jack leave? і Did Jack have the bread with him when he left? необхідні знання про супермаркети,
процесах купівлі та продажу і деякі інші. p>
Прикладні
системи NLP мають перевагу
перед загальними, тому що працюють у вузьких предметних областях. Наприклад, системі,
використовуваної продавцями в магазинах з продажу комп'ютерів, не потрібно
"Роздумувати" над неоднозначністю слова terminals в питанні How many terminals are there in the order?. P>
Тим не менше,
створення систем, що мають можливість спілкування на ЕЯ в широких областях,
можливо, хоча поки результати далекі від задовільних. p>
Технології
аналізу природної мови
p>
Під технологією
аналізу ЕЯ мається на увазі переклад деякого виразу на ЕЯ у внутрішнє
подання. Фактично всі системи аналізу ЕЯ можуть бути розподілені на
наступні категорії: підбір шаблону (Pattern Matching), синтаксичний аналіз, семантичні
граматики, аналіз за допомогою відмінкових фреймів, "чекай і дивися" (Wait And See), словниковий експертний (Word Expert), коннекціоністскій, "ковзний" (Skimming) аналіз. Нижче піде мова про деякі
найбільш поширених методів, описаних в статті. p>
Підбір шаблону.
Сутність даного підходу полягає в інтерпретації введення в цілому, а не в
інтерпретації змісту і структури його окремих складових на більш низькому
рівні. При використанні цього методу відбувається порівняння вже наявних в
системі шаблонів-зразків з текстом, що надійшли на вхід. Зазвичай шаблони
представлені у вигляді простого списку відповідностей між класами висловлювань і
інтерпретаціями. Іноді вони доповнені семантичними елементами або іншими
компонентами більш високого рівня. За таким принципом працює система Еліза,
імітує діалог з психотерапевтом. Насправді система нічого не
розуміє, а лише підтримує діалог, порівнюючи репліки пацієнта з шаблонами і
присвоєними їм відповідними відповідними репліками, такими, як: p>
X завжди Y: p>
Ви можете навести якийсь приклад? p>
Коли? p>
Дійсно, завжди? p>
X Y Ви мене: p>
Чому Ви думаєте, що я Y Вас? p>
Вам подобається думати, що я Y Вас, не
так? p>
Уявіть, що я Y Вас. Що Ви про це
думаєте? p>
У результаті
Еліза здатна вести такий діалог: p>
Пац.: p>
Люди завжди пильно дивляться на мене. p>
підбір по 1-му шаблоном з урахуванням завжди p>
Ел.: p>
Ви можете навести якийсь приклад? p>
перший відповідь по 1-му шаблону p>
Пац.: p>
Наприклад, зараз ти дивишся на мене. p>
підбір по 2-му шаблоном, Y = дивитися p>
Ел.: p>
Чому Ви думаєте, що я дивлюся на Вас? p>
перший відповідь по 2-му шаблону p>
Пац.: p>
Тому що ти ненавидиш мене. p>
підбір по 2-му шаблоном, Y = ненавидіти p>
Ел.: p>
Вам подобається думати, що я ненавиджу Вас,
чи не так? і
т.д. p>
другу відповідь по 2-му шаблону p>
Синтаксичний
аналіз
. При
використанні синтаксичного аналізу відбувається інтерпретація окремих частин
висловлювання, а не всього висловлювання в цілому. Зазвичай спочатку здійснюється
повний синтаксичний аналіз, а потім будується внутрішньо подання
введеного тексту, або проводиться інтерпретація. p>
Дерева
аналізу і вільно-контекстні граматики
. Більшість способів синтаксичного
аналізу реалізовано у вигляді дерев. Одна з найпростіших різновидів --
вільно-контекстна граматика, що складається з правил типу S = NP + VP або VP = V + NP і що визначає, що ліва частина правила може бути замінена
на праву без урахування контексту. Вільно-контекстна граматика широко
використовується в машинних мовах, і з її допомогою створені високоефективні методи
аналізу. Недолік цього методу - відсутність заборони на граматично
неправильні фрази, де, наприклад, що підлягає не погоджено з присудком в
числі. Для вирішення цієї проблеми необхідна наявність двох окремих, паралельно
працюючих граматик: одній - для єдиного, інший - для множинного
числа. Крім того, необхідна своя граматика для пасивних пропозицій і т.д.
Семантично неправильне пропозиція може породити величезна кількість
варіантів розбору, з яких один буде перетворений на семантичну запис. Всі
це робить кількість правил величезним і, у свою чергу, вільно-контекстні
граматики непридатними для NLP. p>
Трансформаційна
граматика
.
Трансформаційна граматика була створена з урахуванням згаданих вище недоліків
і більш раціонального використання правил ЕЯ, але виявилася непридатною для NLP. Трансформаційна граматика створювалася
Хомський як породжує, що, отже, робило дуже складним
зворотну дію, тобто аналіз. p>
Розширена
мережа переходів
.
Розширена мережа переходів була розроблена Бобровим (Bobrow), Фрейзер (Fraser) і багато в чому Вудсом (Woods) як продовження ідей синтаксичного
аналізу і вільно-контекстних граматик зокрема. Вона являє собою
вузли і спрямовані стрілки, "розширені" (тобто доповнені) поруч тестів
(правил), на підставі яких вибирається шлях для подальшого аналізу.
Проміжні результати записуються в комірки (регістри). Нижче наводиться приклад
такої мережі, що дає змогу аналізувати прості пропозиції всіх типів (включаючи
пасив), що складаються з підмета, присудка і прямого доповнення, таких, як The rabbit nibbles the carrot (Кролик гризе морква). Розташування у
стрілець означають номер тесту, а також або ознаки, аналогічні вживаним в
вільно-контекстних граматиках (NP), або конкретні слова (by). Тести написані на мові LISP і являють собою правила типу якщо
умова = істина, то присвоїти аналізованого слова ознака Х і записати його в
відповідному полі. p>
p>
Розберемо
алгоритм роботи мережі на наведеному вище прикладі. Аналіз починається ліворуч, тобто
з першого слова в реченні. Словосполучення the rabbit проходить тест, що з'ясовує, що воно
не є допоміжним дієсловом (Aux, стрілка 1), але є іменним групою (NP, стрілка 2). Тому the rabbit кладеться в комірку Subj, і пропозиція отримує ознака TypeDeclarative, тобто оповідної, і система
переходить до другого вузла. Тут додатковий тест не потрібно, оскільки він
немає у списку тестів, записаних на LISP. Отже, слово, що стоїть після the rabbit - тобто nibbles - дієслово-присудок (позначення V на стрілкою), і nibbles записується в комірку з ім'ям V. Перекреслений вузол означає, що в ньому
аналіз пропозиції може в принципі закінчитися. Але в нашому прикладі є ще
і доповнення the carrot,
так що аналіз продовжується по стрілці 6 (вибір між стрілками 5 і 6
знову здійснюється за допомогою спеціального тесту), і словосполучення the carrot кладеться в комірку з ім'ям Obj. На цьому аналіз закінчується (останній
вузол був би використаний у разі аналізу такого пасивного пропозиції, як The carrot was nibbled by the rabbit). Таким чином, в результаті заповнені
регістри (комірки) Subj,
Type, V і Obj, використовуючи які, можна отримати
будь-яке подання (наприклад, дерево). p>
Розширена
мережа переходів має свої недоліки: p>
немодульность; p>
складність
при модифікації, що викликає непередбачені побічні ефекти; p>
крихкість
(коли єдина неграмматічность в пропозиції робить неможливим
подальший правильний аналіз); p>
неефективність
при перебір з поверненнями, тому що помилки на проміжних стадіях аналізу не
зберігаються; p>
неефективність
з точки зору змісту, коли за допомогою отриманого синтаксичного
уявлення виявляється неможливим створити правильне семантичне
подання. p>
Семантичні
граматики
. Аналіз
ЕЯ, заснований на використанні семантичних граматик, дуже схожий на
синтаксичний, з тією різницею, що замість синтаксичних категорій
використовуються семантичні. Природно, семантичні граматики працюють в
вузьких предметних областях. Прикладом служить система Ladder, вбудована в базу даних американських
судів. Її граматика містить записи типу: p>
S ®
the of p>
® what is | [can you] tell me p>
® the | class ship p>
Така граматика дозволяє аналізувати такі запити, як Can you tell me the class of the Enterprise?
(Enterprise - назва корабля). У даній системі аналізатор складає на
основі запиту користувача запит на мові бази даних. p>
Недоліки
семантичних граматик полягають у тому, що, по-перше, необхідна розробка окремої
граматики для кожної предметної області, а по-друге, вони дуже швидко
збільшуються в розмірах. Способи виправлення цих недоліків - використання
синтаксичного аналізу перед семантичним, застосування семантичних граматик
тільки в рамках реляційних баз даних з абстрагуванням від загального мовного
проблем і комбінація декількох методів (включаючи власне семантичну
граматику). p>
Аналіз
за допомогою відмінкових фреймів
. Зі створенням відмінкових фреймів пов'язаний великий стрибок у розвитку NLP. Вони набули популярності після роботи
Філлмора "Справа про відмінку". На сьогоднішній день відмінкові фрейми - один з
найбільш часто використовуваних методів NLP, тому що він є найбільш комп'ютерно-ефективним при
аналізі як знизу вгору (від складових до цілого), так і зверху вниз (від
цілого до складових). p>
відмінкові фрейм
складається з заголовка і набору ролей (відмінків), пов'язаних певним чином з
заголовком. Фрейм для комп'ютерного аналізу відрізняється від звичайного фрейма тим,
що відносини між заголовком і ролями визначається семантично, а не
синтаксично, тому що в принципі одного й те ж слово може приписувати різні
ролі, наприклад, іменник може бути як інструментом дії, так і його
об'єктом. p>
Загальна структура
фрейма така: p>
[заголовкові
дієслово p>
[відмінкові фрейм p>
агент:
p>
об'єкт:
p>
інструмент:
p>
реципієнт:
p>
напрям:
p>
місце:
p>
бенефіціанта:
p>
коагент:
p>
]] p>
Наприклад, для
фрази Іван дав м'яч Каті відмінкові фрейм виглядає так: p>
[Давати p>
[відмінкові фрейм p>
агент: Іван p>
об'єкт: м'яч p>
реципієнт:
Катя] p>
[грам p>
час: бавовняні, p>
застава: акт] p>
] p>
Існують
обов'язкові, необов'язкові і заборонені відмінки. Так, для дієслова розбити
обов'язковим буде відмінок об'єкт - без нього вислів буде незакінченою.
Місце і коагент будуть в даному прикладі необов'язковими відмінками, а напрямок
і реципієнт - забороненими. p>
Часто в NLP буває корисним використовувати
семантичне подання в якомога більш канонічної форми. Найбільш
відомим способом такий репрезентації є метод концептуальних
залежностей, розроблений Шенк для дієслів дії. Він полягає в тому,
що кожна дія представлено у вигляді одного або більше найпростіших дій. p>
Наприклад, для
пропозицій Іван дав м'яч Каті (1) і Катя взяла м `яч в Івана (2), що розрізняються
синтаксично, але обидва позначають акт передачі, можуть бути побудовані наступні
репрезентації з використанням найпростішого дії Atrans, що застосовується в
граматиці концептуальних залежностей: p>
(1) p>
(2) p>
[Atrans p>
[Atrans p>
отн: володіння p>
отн: володіння p>
агент: Іван p>
агент: Катя p>
об'єкт: м'яч p>
об'єкт: м'яч p>
джерело: Іван p>
джерело: Іван p>
реципієнт: Катя] p>
реципієнт: Катя] p>
За допомогою
такого подання легко виявляються схожість і відмінність фраз. p>
Для полегшення
аналізу також використовується поділ ролі на лексичний маркер і заповнювач.
Так, для ролі об'єкт може бути встановлений маркер пряме доповнення, для ролі
джерело - маркер виду = з | від |... p>
Загалом аналіз тексту
за допомогою відмінкових фреймів складається з наступних кроків: p>
Використовуючи
існуючі фрейми, підібрати підходящий для заголовка. Якщо такого немає, текст
не може бути проаналізовано. p>
Повернути в
систему відповідний фрейм з відповідним заголовком-дієсловом. p>
Спробувати
провести аналіз по всіх обов'язковим відмінками. Якщо один або більше обов'язкових
заповнювачів відмінків не знайдені, повернути в систему код помилки. Такий випадок
може означати наявність Еліпс, невірний вибір фрейма, невірно введений текст
або недолік граматики. Наступні кроки вже використовуються для аналізу і
виправлення таких ситуацій. p>
Провести
аналіз по всіх необов'язковим відмінками. p>
Якщо після
цього у введеному тексті залишилися непроаналізірованние елементи, видати
повідомлення про помилку, пов'язану з неправильним введенням, недостатністю даного
аналізу або необхідністю провести інший, більш гнучкий аналіз. p>
Переваги
використання відмінкових фреймів такі: p>
суміщення
двох стратегій аналізу (зверху вниз і знизу вгору); p>
комбінування
синтаксису та семантики; p>
зручність при
використання модульних програм. p>
Стійкість аналізу
p>
Певну
труднощі при аналізі представляє варіативність одного і того ж запиту.
Наприклад, на вхід системи, що управляє зарахуванням і перерозподілом
учнів на курсах різних спеціальностей, може надійти запит типу
Переведіть Петрова, якщо це можливо, з математики на, скажімо, економіку. P>
Найбільш легко
такі труднощі долаються при використанні відмінкових фреймів. Правило,
сформульоване Карбонелл і Хейз, говорить: "Слід пропускати невідомі
введені елементи до тих пір, поки не буде знайдений відмінкові маркер;
пропущені елементи слід аналізувати з урахуванням незаповнених відмінків,
використовуючи тільки семантику ". p>
Діалог
p>
Поряд з
проблемою розпізнавання тексту існує і проблема підтримки інтерактивного
діалогу. При цьому виникають додаткові особливості, характерні для діалогів,
а саме: p>
анафора
(тобто використання займенників замість їх анафоріческіх антецедентов --
самостійних частин мови); p>
еліпсис; p>
екстраграмматіческіе
пропозиції (пропуск артиклів, друкарські помилки, вживання вигуків тощо); p>
металінгвістіческіе
пропозиції (тобто спроба виправлення введеного раніше). p>
Крім того,
користувачі систем з природно-мовним інтерфейсом намагаються виражатися як
можна коротше, що в ряді випадків також ускладнює аналіз. p>
Використання
відмінкових фреймів, а саме злиття поточного фрейму з попереднім, забезпечує
відновлення Еліпс. p>
Висновок
p>
Таким чином,
процес розробки систем, які забезпечують розуміння ЕЯ, вимагає створення
механізмів, відмінних від традиційних способів уявлень ЕЯ, а системи з
природно-мовними інтерфейсами застосовуються тільки у вузьких предметних
областях. p>
Список b> b> літератури b> p>
Encyclopaedia of Artificial Intelligence. Entry
Natural Language Understanding, pp. 660-677 p>
Для підготовки
даної роботи були використані матеріали з сайту http://www.ed.vseved.ru/
p>