Головна » Файли » Для учнів » Корисно знати


Категорії
Учнівське самоврядування [3]Конкурси, олімпіади [6]
ДПА та ЗНО [6]Корисно знати [37]
Дистанційне навчання [31]

LanguageTool - програмний засіб для перевірки граматики та стилю для української мови
03.07.2016, 16:25

LanguageTool - вільний програмний засіб для перевірки граматики та стилю для української мови, також підтримує 25 інших мов.
Можна перевірити текст скориставшись посиланням https://languagetool.org/uk/

LanguageTool — це відкритий програмний засіб для коректури (граматичної і стильової перевірки) текстів. LanguageTool має ширшу базу знань ніж звичайні засоби перевірки орфографії і оперує складними правилами залежностей між словами в реченні.

LanguageTool доступний, як додаток до офісних пакунків LibreOffice.org, Apache OpenOffice, як додаток для Firefox, а також, як окрема програма (з графічним інтерфейсом або для командного рядка) і як веб-служба.

Спробувати останню збірку LanguageTool можна на сторінці граматичної перевірки текстів (яка працює через веб-службу).

Принцип роботи

Ось як LanguageTool аналізує текст на помилки:

  1. Текст розбивається на речення
  2. Кожне речення розбивається на лексеми (tokens)
  3. Кожному слову надаються його теги частин мови (напр. машини = іменник, множина, наз. відм. тощо)
  4. Проаналізований текст проганяється на відповідність вбудованим правилам і правилам з файлу grammar.xml

Важливо пам'ятати, що правила в LanguageTool описують, як виглядає помилка, а не як виглядає правильний текст (тобто протилежно тому, як люди вчать мову).

Загальний опис будови

Підтримка мов у LanguageTool базується на таких основних речах:

1. Словник тегів — словник, що описує слова в мові, їх похідні, частини мови, рід, число, відмінок, час тощо. Український словник тегів базується на проекті spell-uk налічує близько 130 тис. лекскем і містить досить докладну інформацію про словоформи. Опис наявних тегів можна подивитися ось тут

2. Словник правил — файл у форматі XML, що описує неправильні комбінації лексем в реченні. Подивитися один з українських файлів правил grammar-barbarism.xml можна ось тут, або можна переглянути ці правила у спрощеному вигляді. Якщо коротко, то правило містить набір лексем з їх атрибутами, які не повинні зустрічатися в реченні. Правило також має надавати повідомлення і можливі виправлення. В елементі правила мусить бути також принаймні по одному прикладу коректного і некоректного речення. Елемент правила також дозволяє записати адресу URL на докладнішу інформацію про помилку.

Файл grammar.xml розбитий на категорії: пунктуація, узгодження (відмінків/родів тощо), правила милозвучності, кальки з інших мов тощо.

Існує також невеликий набір правил закодованих мовою програмування (Java). Одне з таких правил для української — це знаходження слів, набраних мішаниною розкладок (напр. коли в слові «сміття», і набрано латиницею).

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

4. Часто одна й та сама словоформа може бути різними частинами мови/відмінками тощо. І в деяких випадках залежно від контексту можна відкинути непридатні теги. Цим займається модуль «деомонімізації» (disambiguator). Українська має поки лише одне правило: позначати слова з великої літери в середині речення як (власні) іменники.

5. Модуль української мови також має правило простої заміни, файл replace.txt містить часто вживані помилкові слова (напр. активні дієприкметники) з пропозиціями заміни. Такі правила можна було б записати й в grammar.xml але в replace.txt це виходить набагато компактніше. Формат записів досить простий: неправильне_слово=заміна1|заміна2…

6. LanguageTool має вбудовану перевірку орфографії, словник для української мови базується на проекті spell-uk. Тож якщо потрібно розширювати словник найкраще це робити через проект spell-uk.

Короткий вступ до удосконалення правил є на сторінці LanguageTool

Напрямок роботи

Основний розвиток підтримки української мови полягає в нарощуванні бази правил (файл grammar.xml).

1. Найпростішою для реалізації є категорія сталих сполук:

  • правило для знаходження «в деякій мірі» є досить простим бо містить лише незмінювані лексеми.
  • правило для «прийняти участь» лише трішки складніше, оскільки дієслово «прийняти» може стояти у будь-якому часі/за будь-якою особою тощо, тож це правило залежить від словника тегів (який знає які форми може приймати це дієслово»
  • далі йдуть випадки де порядок слів необов'язковий (напр. між іменником та дієсловом може бути ще слово)

2. В багатьох випадках також досить просто записуються правила пунктуації (напр. «будь ласка» мусить виділятися комами), але часто щоб правила були компактними треба оперувати регулярними виразами

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

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

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




Категорія: Корисно знати | Додав: adriana | Теги: корисно знати, українська моваа, правила, помилки, граматика, орфографія, LanguageTool, цікавинки
Переглядів: 514 | Завантажень: 0 | Рейтинг: 5.0/1
Схожі матеріали
Всього коментарів: 0
avatar