Леонов Андрій Дмитрович

Факультет комп'ютерних наук і технологій

Кафедра систем штучного інтелекту

Спеціальність «Системи штучного інтелекту»

Методи автоматизованої корекції спеціалізованих природно-мовних текстів

Науковий керівник: д.т.н., доц. Бабаков Роман Маркович
Реферат
Зміст
Введення

Коригування текстової інформації є однією з найважливіших складових проектів, що мають на меті автоматизацію документообігу. В даний час, завдяки використанню комп'ютерних технологій, було розвинено багато методів корекції текстової інформації, завдяки чому стало можливим створення таких систем, які задовольняли б основним вимогам систем автоматизації документообігу. Однак перед програмами як і раніше ставляться задачі збільшення швидкодії і якості коригування, мінімізації затрачуваної пам'яті, що вимагає додаткових досліджень в даній області.

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

1. Актуальність теми

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

У зв'язку із зростанням числа електронних наукових видань постійно збільшується число видавництв, редакційно-видавничих відділів ВНЗ та наукових установ, індивідуальних авторів, що використовують електронні пристрої для написання різних статей, дисертацій тощо. При цьому рівень підготовки користувачів у комп'ютерній області, знання типографических правил і традицій залишається невисоким. До таких правил належать оформлення заголовків, списків, таблиць, бібліографії, формул, чисел, і багато іншого. Помилки, пов'язані з недотриманням цих правил, називаються типографiчними. При поточному рівні технологій виправлення таких помилок здійснюється коректорами вручну, що вимагає значних витрат часу. Більшість помилок є типовими, що створює передумови для автоматизації процесу коректури.

Автоматизація стадії коректури при підготовці наукових видань дозволила б істотно скоротити витрати і строки і підвищити якість електронної текстової інформації. У даній роботі ця задача ставиться як завдання автоматичної обробки спеціалізованих текстів.

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

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

2. Ціль і завдання дослідження

Об'єктом дослідження є структуровані текстові документи, які можуть бути описані за допомогою синтаксичного дерева. Предмет дослідження - алгоритми автоматичної корекції структурованих текстових спеціалізованих документів.

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

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

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

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

3. Методи виявлення помилок

Відомо, принаймні, три методи автоматизованого виявлення орфографічних помилок у текстах: статистичний, поліграмний і словниковий [1]. При статистичному методі з тексту одна за одною виділяються складові його словоформи, а їх перелік по ходу перевірки упорядковується згідно частоті. По завершенні перегляду тексту упорядкований перелік пред'являється людині для контролю, наприклад, через екран дисплея. Орфографічні помилки в скільки-небудь грамотному тексті несистематичні і рідкісні, так що спотворені ними слова виявляються десь наприкінці переліку. Помітивши їх тут, контролююча особа може автоматизовано знайти їх у тексті і виправити.

При поліграмному методі [1] всі двох- або трьохбуквені поєднання (біграми і триграми), що зустрічаються в тексті, перевіряються за таблицею їх допустимості в даній природній мові.Якщо в словоформи не міститься неприпустимих поліграм, вона вважається правильною, а інакше - сумнівною, і тоді пред'являється людині для візуального контролю і, якщо потрібно, виправлення.

При словниковому методі всі вхідні в текст словоформи, після впорядкування або без нього, в своєму початковому текстовому вигляді або після морфологічного аналізу, порівнюються з вмістом заздалегідь складеного машинного словника. Якщо словник таку словоформу допускає, вона вважається правильною, а інакше пред'являється контролеру. Він може залишити слово, як є, залишити його і вставити в словник, так що далі в сеансі подібне слово буде опізнаватися системою без зауважень; замінити (виправити) слово в даному місці; зажадати подібних замін по всьому подальшому тексту; відредагувати слово разом з його оточенням. Операції, над сумнівними ділянками тексту, зазначені або інші можливі, можуть комбінуватися виходячи із задуму проектувальника автоматичного коректора.

Результати неодноразових досліджень [1] показали, що тільки словниковий метод і економить працю людини і веде до мінімуму помилкових дій обох пологів - пропуску текстових помилок, з одного, боку, і віднесення правильних слів до сумнівних, з іншого. Тому словниковий метод став домінуючим, хоча поліграмний метод іноді і застосовують як допоміжний.

4. Алгоритми аналізу текстової інформації
4.1. Алгоритми морфологічного аналізу

За допомогою алгоритмів морфологічного аналізу розпізнаються елементи морфологічної структури слова - коріння, основа, афікси, закінчення. До алгоритмів, широко застосовуваним на морфологічному рівні, відносяться стеммінг і лематизація. Мета стеммінга - ототожнити основи семантично схожих словоформ, що необхідно для адекватного зважування термінів у процесі інформаційного пошуку. На вході стеммеру - текст, на виході - список основ слів вхідного тексту. Стеммери, що розробляються з кінця 50-х рр.. XX в., класифікуються на алгоритмічні та словникові. Алгоритмічні стеммери функціонують на основі файлів даних, що містять списки суфіксів і флексій. У процесі морфологічного аналізу програма виконує зіставлення суфіксів і закінчень слів у вхідному тексті і у відповідному списку, причому аналіз починається з останнього символу слова. Словникові стеммери функціонують на основі словників основ слів. У процесі морфологічного аналізу такий стеммер виконує зіставлення основ слів у вхідному тексті й у відповідному словнику, а аналіз починається з першого символу слова.

Словникові стеммери забезпечують більшу точність пошуку, в той час як алгоритмічні - більшу повноту, допускаючи більше помилок, які проявляються в недостатньому або надмірному стеммуванні. Надмірне стеммування (overstemming) має місце в тому випадку, якщо по одній основі ототожнюються слова з різною семантикою; при недостатньому стеммуванні (understemming) за однієї основи не ототожнюються слова з однаковою семантикою, наприклад, bet як основа better, a childr - як основу children. У першому випадку має місце надлишкове стеммуванне, оскільки по основі bet прикметник better ототожнюється з дієсловом bet і його похідними (bets, betting), значення яких не має нічого спільного зі значенням прикметника. У другому випадку має місце недостатнє стеммування, так як по основі childr не можна ототожнити форми множини (children) і однини (child) однієї лексеми.

4.2. Алгоритми синтаксичного аналізу

Одним з фундаментальних алгоритмів, застосовуваних на синтаксичному рівні, є синтаксична декомпозиція (syntactic splitting). На вході спліттера - текст, на виході - список реченнь тексту. Алгоритми синтаксичної декомпозиції розробляються з 1960-х рр.. і передбачають розпізнавання реченнь на основі символів форматування тексту: прогалин, знаків пунктуації, знаків перекладу каретки. Розбивка тексту на речення ускладнюється відсутністю стандартного форматування тексту; точки, оклику, знаки питання, які зазвичай застосовуються як роздільники, можуть використовуватися не тільки в кінці, але і в середині речення. Речення є основною одиницею аналізу в багатьох системах, а в системах автоматичного реферування і вихідний текст складається з реченнь. Помилки в розпізнаванні речень істотно знижують ефективність таких систем в цілому.

Дедукційно-інверсійна архітектура декомпозиції тексту, відповідно до якої спочатку текст розбивається на абзаци, потім - на слова, потім із слів генеруються речення. Таким чином, декомпозиція починається з більшою одиниці (абзацу), потім здійснюється перехід до меншої одиниці (слова), потім - знову до більшої (речення). Дедукційно-інверсійна архітектура декомпозиції дозволяє ігнорувати такі компоненти тексту, як заголовки, підзаголовки, змісти, оскільки вони не входять до складу абзаців.

Синтаксична декомпозиція є основою для виконання цілого ряду алгоритмів розпізнавання фразової структури речення. Широко розповсюджені алгоритми виділення n-gram - словосполучень, що складаються з двох (біграми), трьох (триграми) і більше (тетраграми, пентаграми, гексаграми) токенів [2]. Розбивка на словосполучення в даному випадку проводиться з урахуванням позиції токену у реченні. Наприклад, речення John has a dog включає 4 юніграмми, 3 ді-грами (John has, has a, a dog), 2 тріграми (John has a, has a dog), 1 тетраграм - все речення. Кількість біграм для кожного речення (ng(s)) становитиме n-1, трігарм - n-2, де n-кількість токенів у реченні, тобто ng(s) = Wi-(n-1), Wi-(n-2), ... Wi-(nn), де wi - порядковий рівень n-gram, починаючи з біграм. Розпізнавання n-gram проводиться на основі відповідних правил.

Аналіз розподілу n-gram дозволяє виявити статистично значущі словосполучення і часто застосовується у стохастичних алгоритмах анотування тегами частин мови. При цьому початок і кінець речення позначаються деякими умовними тегами (false tags), що дозволяє розглядати в якості триграм навіть речення, що складаються з одного токену, і встановлювати імовірнісні параметри, необхідні для вибору того чи іншого тега.

Розподіли n-gram використовуються з метою автоматичної класифікації і категоризації, оскільки виступають в якості важливого параметра, що дозволяє визначити приналежність тексту до певної категорії, типу, групі, жанру. При аналізі на синтаксичному рівні в якості основної одиниці виступають біграми і діграмми, оскільки рекурентність словосполучень з великою кількістю токенів малоймовірна. Аналіз n-gram більшого порядку застосовується в системах автоматичної корекції орфографії, а також в системах автоматичного розпізнавання текстів (Optical Character Recognition), де основною одиницею виступають символи в токенах.

Для аналізу морфологічно значущих словосполучень застосовуються чанкери (chunkers), які на виході видають списки фраз певного типу (іменні, дієслівні, ад'єктивні, адвербіальні). Найбільш розповсюджені іменні (noun phrase) чанкери, що розпізнають словосполучення з керуючим іменником. Саме цим типом словосполучень позначаються об'єкти, описувані в тексті, а їх ранжування за ваговими коефіцієнтами дозволяє отримати список ключових слів, що відображають основний зміст тексту. Реферування тексту на основі словника іменників дозволяє отримати практично такі ж результати, як і реферування, що проводиться і з урахуванням слів, що відносяться до інших частин мови [3]. Розпізнавання словосполучень цього типу виконується на основі попереднього анотування тегами частин та об'єднання окремих частин мови у фрази на основі правил граматики.

Правила фразової структури були розроблені для англійської мови в рамках концепції генеративної граматики, запропонованої Н. Хомським. Граматичні правила записуються у вигляді NP → NN; NP → DetNN; NP → DetANN, де вказується склад словосполучення, в даному випадку іменного (noun phrase – NP), а також порядок слів [4]. У першому випадку показано, що іменне словосполучення може складатися тільки з одного іменника (NN); у другому випадку воно складається з детермінанта (Det) і іменника, причому детермінант займає позицію перед іменником, а зворотний порядок слів неправильний; у третьому випадку словосполучення складається з детермінанта, прикметника (А), іменника, при цьому інші варіанти словопорядка неправильні.

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

Висновки

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

До перспективних завдань можна віднести наступні: розробка ефективних методів навчання класифікаторів визначення помилок і вдосконалення використовуваних алгоритмів.

При написанні даного реферату магістерська робота ще не завершена. Остаточне завершення: зима 2014-2015 рр.. Повний текст роботи та матеріали за темою можуть бути отримані у автора або його керівника після зазначеної дати.
Список використаних джерел

  1. Peterson J.L., Computer programs for detection and correction spelling: errors. Commun. ACM, 1980, 23, № 12, 676 – 687.
  2. Bickel, S. Predicting Sentences using N-Gram Language Models / S. Bickel, P. Haider, T. Scheffer. – 2005. [Электронный ресурс]. – Режим доступа: http://delivery.acm.org/10.1145/1230000/1220600/p193-bickel.pdf
  3. Яцко В.А. Симметричное реферирование: теоретические основы и методика / В.А. Яцко // Научно-техническая информация. Сер.2. – 2002. – № 5. – С. 18-28.
  4. Brinton, L.J. The structure of modem English / L.J. Brinton. – Amsterdam; Philadelphia: John Benjamins, 2000. – 335 p.
  5. Яцко В.А. Алгоритмы предварительной обработки текста: декомпозиция, аннотирование, морфологический анализ / В.А. Яцко, М.С. Стариков, Е.В. Ларченко // Научно-техническая информация. Сер.2. – 2009.
  6. Штурман Я.П. Анализ систем автоматизированного обнаружения орфографических ошибок. НТИ, 1985.
  7. Бабко-Малая О.Б. Методы и системы автоматизированного обнаружения и коррекции текстовых ошибок / О.Б. Бабко-Малая, В. А. Шемраков // Препринт № 5. Л.: БАН СССР, 1987, 46 с.

Design by elemis.