Kontrolowane języki naturalne (CNL) to sztuczne języki powstałe przez celowe uproszczenie gramatyki i ograniczenie zasobu słownictwa naturalnego języka w celu zmniejszenia niejednoznaczności i nadmiernej złożoności. CNL-y zachowują czytelność dla ludzi, ale dają się też łatwiej przetwarzać komputerowo niż pełne języki naturalne.
Istnieją dwa główne rodzaje języków kontrolowanych. Pierwsze z nich są projektowane przede wszystkim z myślą o ułatwieniu komunikacji między ludźmi — szczególnie gdy autorzy i odbiorcy nie są rodzimymi użytkownikami języka. Drugie natomiast mają ściśle zdefiniowane reguły składniowe i semantyczne, tak aby możliwa była automatyczna analiza semantyczna.
Języki uproszczone / techniczne
Pierwszy rodzaj języków bywa nazywany językami „uproszczonymi” lub „technicznymi”. Są one stosowane przez przedsiębiorstwa i branże do poprawy jakości dokumentacji technicznej, instrukcji obsługi, procedur serwisowych i innych materiałów praktycznych. Użycie standardowego, ograniczonego słownictwa upraszcza półautomatyczne tłumaczenie i zwiększa spójność tekstów. Przykłady tego podejścia to: ASD Simplified Technical English, Caterpillar Technical English oraz IBM's Easy English.
Języki uproszczone prowadzą pisarza przez zestaw reguł i zaleceń stylu, np.:
- pisz krótkie i proste zdania (jedna idea na zdanie);
- używaj imienia osoby (na przykład "John Smith") zamiast zaimków niejednoznacznych, takich jak „on” czy „ona”;
- formułuj zdania w stronie czynnej: mów o tym, kto coś robi, a nie o tym, co się robi, chyba że musisz opisać czynność bez wskazywania wykonawcy;
- ogranicz słownictwo do zatwierdzonego słownika terminologicznego i stosuj jednolite terminy dla tych samych pojęć;
- unikaj idiomów, metafor i konstrukcji wieloznacznych.
Korzyści praktyczne obejmują: lepszą czytelność dla osób niebędących rodzimymi użytkownikami, niższe koszty tłumaczeń, szybsze szkolenie pracowników i mniejsze ryzyko błędów w instrukcjach (co ma znaczenie w branżach bezpieczeństwa krytycznego).
Języki kontrolowane dla automatycznej analizy
Drugi rodzaj CNL-ów ma precyzyjnie zdefiniowane reguły składniowe i semantyczne, często tak sformułowane, by odpowiadać fragmentowi formalnej logiki (np. logice pierwszego rzędu). Dzięki temu teksty w takim CNL można deterministycznie parsować i tłumaczyć na reprezentacje logiczne, co umożliwia:
- automatyczne wnioskowanie i sprawdzanie poprawności;
- konwersję dokumentów na ontologie lub reguły biznesowe;
- wyszukiwanie informacji z gwarancją interpretacji zapytań.
Przykładem języka tego typu jest Attempto Controlled English (ACE), który pozwala na jednoznaczną interpretację zdań i ich mapowanie na logikę formalną. Takie CNL-y są używane np. w modelowaniu wiedzy, tworzeniu specyfikacji wymagań oraz integracji z systemami opartymi na regułach i semantycznej sieci Web.
Zasady projektowania CNL
- ograniczony słownik (lista dozwolonych słów i ich znaczeń);
- restrykcyjna gramatyka — zakazy i wzorce konstrukcji zdań;
- precyzyjne definicje terminów i jednolita terminologia;
- przykładowe konstrukcje dopuszczalne i niedopuszczalne;
- narzędzia walidujące — checkery językowe, parse’y i lintery;
- szkolenia i wytyczne dla autorów dokumentów.
Zastosowania
Kontrolowane języki naturalne znajdują zastosowanie w wielu obszarach, m.in.:
- tworzenie dokumentacji technicznej i instrukcji obsługi;
- przemysł lotniczy i wojskowy (gdzie skrócenie niejednoznaczności jest krytyczne);
- lokalizacja i tłumaczenia maszynowe (mniejsza pracochłonność adaptacji);
- inżynieria wymagań i specyfikacje oprogramowania;
- systemy ekspertowe, bazy wiedzy i ontologie;
- regulacje prawne i umowy (gdzie przewidywalność interpretacji jest pożądana);
- interfejsy użytkownika i chatboty — aby ograniczyć nieporozumienia między użytkownikiem a systemem.
Zalety i ograniczenia
Zalety:
- mniejsza ambiwalencja i zwiększona jednoznaczność;
- łatwiejsze tłumaczenie i automatyczne przetwarzanie;
- większe bezpieczeństwo i niezawodność dokumentów technicznych;
- możliwość formalnej weryfikacji treści (w wypadku CNL-ów mapowalnych na logikę).
Ograniczenia:
- ograniczona ekspresywność — nie wszystkie niuanse da się łatwo przekazać;
- potencjalny wysiłek wdrożeniowy (szkolenia, utrzymanie słownika i zasad);
- możliwość nadmiernego „uproszczenia” treści, które dla ekspertów może wydawać się sztuczne;
- konieczność akceptacji i dyscypliny autorów dokumentów.
Narzędzia i przyszłość
W praktyce stosuje się narzędzia wspomagające autorów: lintery, checkery językowe i systemy do zarządzania terminologią oraz narzędzia do automatycznego mapowania CNL na reprezentacje formalne (np. parsery ACE). Coraz częściej CNL-y integruje się z maszynowym tłumaczeniem i systemami NLP, co pozwala na hybrydowe podejście — zachowanie czytelności dla ludzi i jednoczesne wspieranie zaawansowanego przetwarzania przez maszyny.
W miarę rozwoju technologii semantycznych i sztucznej inteligencji CNL-y będą nadal odgrywać ważną rolę jako pomost między ludźmi a systemami automatycznymi — szczególnie w obszarach, gdzie wymagana jest wysoka pewność interpretacji.
Do najczęściej cytowanych przykładów należą: ASD Simplified Technical English, Caterpillar Technical English, IBM's Easy English oraz języki formalne typu Attempto Controlled English — wszystkie te rozwiązania ilustrują różne podejścia i zastosowania idei kontrolowanego języka.