Зміст
Передумови створення морфологічних процесорів
Припустимо, що весь процес аналізу під час автоматичного перекладу поділяється на два основних етапи: морфологічний аналіз та синтаксичний аналіз.
Під морфологічним аналізом розуміють повну обробку взятих окремо (без будь-якого зв’язку з контекстом) словоформ. В результаті такої обробки кожна словоформа замінюється так званою інформацією – ланцюжком символів, що визначають усі ті властивості даної словоформи, що необхідні для подальшого аналізу (і подальшого перекладу). Інформації до словоформ використовуються на другому етапі аналізу – під час синтаксичного аналізу, в результаті якого встановлюються зв`язки між усіма словоформами тексту та між частинами складних речень.
Морфологічний аналіз – основний інструмент морфологічних процесорів. Створення повнофункціонального морфологічного процесору неможливе без детального розуміння принципів морфологічного аналізу.
За роки існування автоматичного перекладу було створено алгоритми морфологічного аналізу для багатьох мов. Природно, що ці алгоритми мають багато спільного. Однак мають місце також і значні розбіжності, що зумовлені властивостями будови відповідних мов, а також різними підходами.
Виникає природне бажання узагальнити досвід, що накопичено в цій галузі. Зокрема, бажано відповісти на таке питання: чи не можна виділити в алгоритмах морфологічного аналізу стандартні частини, що повторюються в багатьох алгоритмах? Чи не можна на базі стандартних частин, що виділено, розробити для алгоритму морфологічного аналізу таку спільну форму, щоб вона підходила (без суттєвих змін) для багатьох мов? Чи не можна, зрештою, встановити зв`язок між властивостями конкретних мов та деталями алгоритмів морфологічного аналізу таким чином, щоб загальну форму алгоритму можна було пристосувати до якоїсь конкретної мови відповідно до правил, що вказано заздалегідь (ці правила можуть бути приблизно такими: “За певної властивості мови із загальної форми треба(не треба) взяти певний елемент і т. ін.”)?
Нижче робиться спроба дати позитивну відповідь на ці питання.
Загальна форма морфологічного аналізу текстів
Деякі обмеження
Загальна форма морфологічного аналізу, про яку іде мова, не є абсолютно загальною. Її “загальність” обмежено певним колом мов та певним типом алгоритмів.
Обмеження стосовно мов полягає в тому, що загальна форма морфологічного аналізу призначена лише для суфіксально-афіксальних мов (індоєвропейських, угро-фінських, тюркських і т. ін.). Виключаються мови з розвиненою внутрішньою флексією (семітські) та інфіксацією (на зразок низки індонезійських).
Окрім того, для мов, у яких словоформи взагалі не поділяються на морфеми (так звані “ізолюючі” – на зразок в`єтнамської), морфологічний аналіз повністю зводиться до пошуку в словнику, а решта операцій, що передбачені у загальній схемі алгоритму морфологічного аналізу, для “ізолюючих” мов не потрібні.
Обмеження стосовно типу алгоритмів полягає в тому, що загальна форма морфологічного аналізу охоплює лише такі алгоритми, в основі яких полягає розбиття словоформ на морфеми від початку до кінця (для мов з латинською та кириличною графікою – зліва направо). Можливий інший підхід, за якого розбиття словоформ починається з кінця. Найкращим розв`язком, очевидно, було б узагальнення та гнучке поєднання обох підходів.
Термінологія
Перш ніж перейти до опису загальної схеми, зупинимося на деяких термінах, якими нам доведеться користуватися надалі.
Як вже говорилося, морфологічний аналіз – це обробка взятих окремо словоформ. Морфологічний аналіз полягає в такому: словоформа розбивається на морфеми (за умови, якщо таке розбиття можливе) шляхом пошуку морфем у спеціальних списках, де кожній морфемі відповідає певна інформація; потім із інформацій до морфем будується загальна інформація до словоформи.
В даному описі морфема не визначається: це об`єкт окремого дослідження. Морфеми подаються списком. В алгоритмі морфологічного аналізу, що описується, як морфеми взято практично ті самі елементи, що їх вважають морфемами в лінгвістиці. Однак слід мати на увазі основні відмінності двох типів:
Оскільки ми маємо справу з письмовим текстом, а більшість лінгвістичних праць – з усною мовою, то поділ на морфеми, що здійснюється для алгоритму морфологічного аналізу, інколи не співпадає з тим, що прийнятий в лінгвістиці.
Розбіжність між написанням та вимовою (та, зокрема, відсутність наголосу у письмовому тексті) відбивається також на зовнішньому (графічному чи звуковому) боці морфем. Морфеми, що відрізняються графічно, можуть мати однакове звучання: -ом (ор. відм. однини) та –ам (дав. відм. множини) в таких словоформах, як лаком – лакам або муром – мурам. З іншого боку, морфеми, що мають різне звучання, можуть співпадати графічно: -и (род. відм. однини) та –и (наз.-знах. відм. множини) в таких словоформах, як казки – казки.
Алгоритм працює лише з графічними формами морфем.
Оскільки в багатьох лінгвістичних працях під час поділу словоформ на морфеми не завжди послідовно розрізняють синхронічний та діахронічний аспекти, прийнятий поділ, що виправданий в низці відношень, може виявитися незручним з точки зору автоматичного аналізу та перекладу. В таких випадках доводиться відступати від прийнятого поділу. Наприклад, словоформа відношення зазвичай поділяється на від-нош-енн-я, а для алгоритму, що описується – на відношенн-я.
Ми не будемо спеціально викладати тут тих міркувань, за якими приймається певний поділ тієї чи іншої конкретної словоформи. Запропонований алгоритм морфологічного аналізу (у загальній формі) абсолютно не залежить від того, які конкретні елементи обрано як морфеми. Якщо прийняти інший поділ на морфеми, це змінить лише склад списків морфем, але не сам алгоритм. А тому тимчасово можна вважати, що, не уміючи точно визначати морфеми, ми обмежуємося їх емпіричним підбором (базуючись на інтуїції та вимогах перекладу) та подаємо їх простим перерахуванням.
Серед морфем розрізнятимемо основи та афікси.
Терміни “основа” та “афікс” вживаються тут не в своєму традиційному значенні. Прийняте у лінгвістиці розрізняння коренів, основ, кореневих основ і т. ін. для