1.3. Семантико-синтаксичний аналіз
1.3. Семантико-синтаксичний аналіз
Ідея про інтеграцію комп'ютерного синтаксичного та семантичного аналізу висловлювалася багатьма дослідниками. На сьогоднішній день досить очевидно, що через багатозначність конструкцій у ПРИРОДНИЙ МОВА для побудови синтаксичних дерев з високою точністю не можна обмежиться лише знаннями про граматику мови у вузькому значенні – тобто. лінгвістичними знаннями про морфологію слів та про синтаксичні правила розбору конструкцій, які оперують лише такими лінгвістичними категоріями як частини мови та морфологічні ознаки. Щоб добре вирішувати це завдання в загальному випадку необхідні статистичні знання про ПРИРОДНА МОВА, знання про семантику ПРИРОДНА МОВА конструкцій, а в деяких випадках про прагматику дискурсу.Структурна неоднозначність ПРИРОДНА МОВА зажадала синтаксичного аналізу розробки спеціальних аналізаторів, статистичних методів і підходів із застосуванням методів машинного навчання. Багато роботах з синтаксичному аналізу відзначається велика важливість лексичних ознак задля досягнення високих показників якості розбору. Тому, у сучасних синтаксичних аналізаторах текстів на ПРИРОДНА МОВА часто враховуються як поєднання частин мови, морфологічних ознак і структурних ознак, але й лексична сполучуваність слів друг з одним, що у певному сенсі є формою знань про семантику мови [137].Але є підходи, які йдуть набагато далі простого обліку лексем, лем, колокацій чи семантичних класів слів на етапі синтаксичного аналізу. Деякі дослідники пропонують альтернативи традиційному підходу, коли синтаксичний розбір, в якому будується синтаксичне дерево, суворо передує семантичному аналізу, у якому формується смислове уявлення тексту, і розробляють підходи, що поєднують ці два види аналізу в одній процедурі. Аналіз тексту на ПРИРОДНИЙ МОВА, який виконується відповідно до цих підходів, називатимемо семантико-синтаксичним. 1.3.1. Підходи, що інтегрують синтаксичний та семантичний аналіз Семантико-синтаксический аналіз поєднує у собі підходи, у яких застосовується як тісна інтеграція синтаксичного і семантичного аналізу, наприклад, у єдиному алгоритмі, і підходи, у яких вони розділені, але результати, отримані двох етапах аналізу, впливають друг на друга.Прагнення до тісної інтеграції ґрунтується на припущенні, що наявність доступу під час аналізу до синтаксичним та семантичних знань про ПРИРОДНИЙ МОВА, а також до обох частково побудованих структур дозволить вирішувати мовні неоднозначності раніше, ніж у традиційному послідовному підході. З одного боку, за рахунок цього може досягатися перевага обчислювальної ефективності обробки, оскільки в спільному аналізі не потрібно породжувати зайві варіанти синтаксичного розбору і зберігати їх до вирішення неоднозначності при семантичному аналізі. Але, з іншого боку, паралельний семантичний аналіз може суттєво загальмувати загальний аналіз. Оскільки багато некоректних варіантів аналізу можуть відсіюватися тільки за рахунок синтаксичного аналізу, для подібних варіантів виконання паралельного семантичного аналізу перетворюється на додаткові накладні витрати.Ряд робіт з семантико-синтаксичного аналізу присвячено тісній інтеграції граматик складових із формальною семантикою. Такі граматики називають синхронними. Правила цих граматик розширюються семантичними виразами мовою уявлення знань. Такою мовою може бути, наприклад, розширена мова предикатів першого порядку (з виразами лямбда-числення). Визначаються правила перетворення семантичних виразів відповідно до синтаксичним деревом. Семантико-синтаксичний аналіз може виконуватися за допомогою модифікованих алгоритмів побудови складових дерев. Наприклад, [69] показується, що з цих цілей може бути використаний модернізований алгоритм Ерлі. У роботах [138, 139] використовуються статистичні синтаксичні аналізатори для перетворення ПРИРОДНИЙ МОВА -виразів у запити до бази даних. У роботі [140] пропонується алгоритм типу CYK дляспільного синтаксичного та семантичного аналізу тексту з стохастичної граматики «Head-Driven Phrase Structure Grammar» [141].Існують аналізатори, які будують глибокі семантичні структури одразу, без проміжних поверхневих синтаксичних структур. Таким чином, у них повністю стирається межа між синтаксичним та семантичним аналізом.Дослідники приділяють увагу проблемі інтеграції синтаксичного аналізу та визначення рольових структур висловлювань. Хоча в цьому підході інтеграція між семантичним та синтаксичним найчастіше є менш тісною ніж у вищезазначених методах, цей підхід становить найбільший інтерес для цієї роботи. Він буде розглянутий окремо у розділі 1.3.2.Розглянемо роботи з семантико-синтаксичному аналізу текстів російською. Підхід, який розвивається колективним Г.Г. Белоногова, передбачає тісну інтеграцію синтаксичного та семантичного аналізу [59]. Розробники комерційної технології ABBYY Compreno [9] стверджують, що в їхньому аналізаторі синтаксична та семантична структури будуються при аналізі тексту паралельно. У системі ЕТАП-3 [8] синтаксичний аналізатор при аналізі використовує семантичні ознаки слів і конструкцій, проте семантична структура будується на наступних етапах. Синтаксичний аналізатор, представлений у роботі [65], ґрунтується на синтактикосемантичному словнику Тузова [142]. У ході синтаксичного аналізу використовується семантичні ознаки слів для вирішення морфологічної та структурної омонімії. Зокрема, використовується інформація про поєднання класів слів зі словника Тузова. Хоча цей аналізатор автори називають семантико-синтаксичним, безпосередньо семантичний аналіз не виконує. 1.3.2. Підходи, що інтегрують побудову синтаксичних деревзалежностей із визначенням рольових структур висловлюваньДаніель Журавскі і Даніель Галдіа [88] першими запропонували підхід, у якому визначення рольових структур висловлювань інтегровано із синтаксичним аналізом. У цьому підході за допомогою синтаксичного аналізатора, заснованого на СКОНТЕКСТНО-ВІЛЬНІ граматиці, для кожної пропозиції будувалася велика кількість варіантів синтаксичного розбору. Для кожного з варіантів вибирався найкращий розподіл ролей, а потім вибирався варіант із найбільшою загальною ймовірністю. Експерименти показали невеликий приріст повноти визначення рольових структур на 0,7% з 61,2 до 61,9%, при цьому точність виявлення аргументів незначно зменшилася на 0,2%.Великий внесок у розвиток методів семантико-синтаксичного аналізу зробили учасники змагань CoNLL Shared Task 2008 [91] та CoNLL Shared Task 2009 [92], в яких оцінювалася якість і синтаксичного (побудова дерев залежностей), і семантичного аналізу (визначення рольових структур) . У 2008 році завдання ставилося тільки для однієї мови – англійської, у 2009 році учасники повинні були виконати аналіз ще для шести мов: каталанської, китайської, чеської, німецької, японської та іспанської. Шість команд, які брали участь у змаганні у 2008 році, та чотири команди, які брали участь у змаганні у 2009 році, реалізували методи, які так чи інакше поєднують синтаксичний та семантичний аналіз.У роботах [143, 144] описується система, яка брала участь у змаганні у 2008 році, а у роботі [145] представлена її модифікація, яка брала участь у змаганні у 2009 році. Семантико-синтаксичний аналіз у цих системах реалізується шляхом побудови дерева залежностей одночасно із встановленням семантичних міток синтаксичним зв'язкам. Спочатку проводиться попередній синтаксичний аналіз, після чого проводиться основний суміщений аналіз. Для попереднього та основного синтаксичного аналізу застосовувався графовий підхід та алгоритм Айзенера [39]. У поєднаному аналізі вага синтаксичної зв'язку з семантичною позначкою складався з ваги синтаксичної зв'язку та нормованої ваги семантичних міток (ролей) від різних предикатних слів.Будуючи синтаксичне дерево одночасно з призначенням семантичних міток, аналізатор максимізує сукупну вагу семантико-синтаксичної структури. Експериментальне тестування цього методу показало, що суміщений аналіз не впливає на якість синтаксичного аналізу, але підвищує якість визначення рольових структур (на 4,9% по 1 мірі) в порівнянні з системою, в якій синтаксичний та семантичний аналіз виконуються окремо.Середній результат на змаганні у 2008 році та один із найкращих результатів на змаганні у 2009 році показала система, описана в роботах [146 – 148]. Автори застосували аналізатор на основі системи переходів з використанням методу перенесення-згортка для паралельної побудови окремої синтаксичної та семантичної структури речення. Для передбачення дій аналізатора була навчена модель, яка є динамічною байєсовською мережею, що послідовно змінює свою структуру на основі частково побудованого висновку [149]. Як ознаки задіялися вже побудовані в ході виведення синтаксичні та семантичні залежності. Таким чином, модель при навчанні максимізує спільну ймовірність синтаксичних та семантичних залежностей. Експерименти, проведені в роботах, показали, що за відсутності взаємодії між синтаксичною та семантичною структурою в процесі виведення істотно погіршується якість семантичного аналізу (на 3,5% за 1-ю мірою). Автори також показали, що інтеграція семантичного та синтаксичного аналізу незначно знижує точність останнього (на 0,2%). У [150] було застосовано змішування результатів восьми синтаксичних аналізаторів, побудованих на основі MaltParser за допомогою варіювання алгоритмів та напрямів розбору, в єдине комбіноване синтаксичне дерево. Подібний крок дозволив значно покращити якість синтаксичного аналізу, порівняно з результатами кращого одиничного аналізатора. Було побудовано дві різні системи для семантичного аналізу. Крім того, на основі MaltParser була створена система семантикосинтаксичного аналізу, яка одночасно будує синтаксичне дерево залежностей та призначає зв'язкам семантичні мітки. Синтаксичне дерево, побудоване системою семантико-синтаксичного аналізу, поєднувалося з комбінованим синтаксичним деревом. Нове комбіноване дерево прямувало на вхід двом системам семантичного аналізу. Остаточна семантико-синтаксична структура будувалася шляхом змішування результатів двох систем семантичного аналізу із результатом системи семантикосинтаксического аналізу.У [151] був реалізований підхід, у якому синтаксичний та семантичний аналіз виконуються послідовно, а потім вони повторюються, при цьому на новій ітерації використовуються ознаки, отримані з уже побудованої семантико-синтаксичної структури. Діяльність проводилося до двох ітерацій ланцюжків аналізу. Експерименти показали, що цей підхід може помітно покращити початковий результат. Однак покращення спостерігалися не для всіх мов, і не завжди найкращий результат досягався на останній ітерації. Автори роблять висновок, що ефект від повторного аналізу залежить від якості початкового аналізу. Семантико-синтаксичний аналіз у цій роботі дозволив підвищити точність синтаксичного аналізу до 0,3%.У [109] описується система, яка на змаганні у 2008 році досягла кращих спільних оцінок якості синтаксичного та семантичного аналізу. У системі етапи аналізу виконувались послідовно. В результаті будувалося кілька варіантів синтаксичних дерев, для кожного з яких будувалися предикатно-аргументні структури. Потім виконувалася процедура переранжування результатів, що вибирала остаточний варіант, навчена максимізувати спільну оцінку синтаксичного і семантичного аналізу. Експерименти показали, що процедура переранжування трохи покращує результати і синтаксичного (точність на 0,14%), і семантичного аналізу (на 0,5% за 1-ю мірою), і, відповідно, спільні оцінки. Такий підхід використовувався також у роботі [152].Автори [153] реалізували підхід, в якому інтегровані етапи призначення міток синтаксичним зв'язкам та пошуку семантичних аргументів з використанням Марківської моделі максимальної ентропії [154].[155] описується система, в якій реалізовано повністю спільне навчання встановленню синтаксичних і семантичних залежностей. Для цього використовувалися метричні класифікатори: один передбачав наявність зв'язку між токенами, інші два – наявність зв'язку та його мітку (синтаксичну мітку чи семантичну роль). Результати класифікаторів комбінувалися за допомогою ранжування.Серед недавніх публікацій з семантико-синтаксичного аналізу, крім праць семінарів CoNLL Shared Task, слід відзначити роботу [156]. У ній пропонується підхід для спільної максимізації оцінки синтаксичної та семантичної структур. Це дозволило підвищити якість визначення рольових структур висловлювань більш ніж на 2% по 1-му мірі в порівнянні з системою, в якій ці два види аналізу виконувались окремо.
Коментарі
Дописати коментар