Trzecie oko: sztuczna inteligencja a czytanie rękopisów

Jak kura pazurem - charakter pisma a czytanie rękopisów w praktyce

W naszym genealogicznym zespole zwykliśmy żartować, że dawno temu, aby zostać urzędnikiem stanu cywilnego, należało podpisać się lewą stopą i przynieść zaświadczenie o dysgrafii. (Dementujemy plotkę: nie trzeba było.) 

Jednak włosy z głowy rwał każdy, kto zaczynał przygodę ze zbiorami starych manuskryptów – od literaturoznawców i historyków po genealogów-pasjonatów. Ileż rozczarowania, frustracji, zwątpienia potrafią przynieść spotkania z rękopiśmiennymi zbiorami sprzed wieku lub trzech, wiedzą ci, którzy w archiwalnej czytelni lub przed ekranem monitora dotkliwie przekonali się, że znajomość obcego języka, a nawet obcego alfabetu, może nie wystarczyć, gdy chcemy zapoznać się z treścią stworzonego przed laty dokumentu. I choć mniejszego szoku doznają zazwyczaj studenci czy absolwenci historii, edytorstwa i kierunków pokrewnych, którzy mieli okazję stanąć w szranki z pismem odręcznym podczas zajęć z paleo- i neografii, to „pierwsze spotkania trzeciego stopnia” zawsze zapadają w pamięć.

Oczywiście, „praktyka czyni mistrza” i im więcej czasu spędzamy nad dokumentami (na przykład) genealogicznymi lub w czytelniach rękopisów, tym mniej problemów sprawia nam rozszyfrowanie komunikatu, który przed laty obca dłoń naniosła na papier. Akta stanu cywilnego czy inne dokumenty administracyjne posiadają określoną, powtarzalną strukturę, zaś z każdą kolejną stroną mniej przewidywalnego tekstu (pamiętnika, listu, utworu literackiego) nasze oczy przyzwyczają się do cudzego charakteru pisma i rozpoznają możliwe warianty zapisu każdej z liter. Po lekturze kilku podręczników do paleografii czy neografii, na podstawie kroju pisma określimy przedział czasu, w którym powstała dana notatka, dowiemy się, jak zmieniały kształt litery (a także formy zapisu głosek) w tekstach łacińskich, polskich, rosyjskich (ruskich), niemieckich, jidyszowych… – i każdych innych, na które natrafimy podczas swoich archiwalnych kwerend. 

Trudno dziś w pracy z rękopisem nie korzystać dziś ze zdobyczy techniki. Dzięki procesom cyfryzacji każdy może przeglądać dokumenty znajdujące się w archiwach i bibliotekach rozsianych po całym świecie z zacisza własnego domu. Czasem, nawet w tych fizycznych archiwach czy bibliotekach, po prostu wykonujemy dziesiątki lub nawet setki fotografii, by analizować treść rękopisów również poza murami i godzinami otwarcia czytelni. Gdyby nie to, wizyty w instytucjach przechowujących źródła historyczne (no dobrze, teraz, ze względu na obostrzenia epidemiologiczne, trochę za nimi tęsknimy), mogłyby trwać – w zależności od rozmachu i projektu – kilka miesięcy zamiast kilku tygodni, kilka tygodni zamiast kilku dni… 

Ale: pójdźmy krok dalej. I nie, nie mowa tu o polecaniu medytacji genealogom złoszczącym się na kartkę pełną wyjątkowo finezyjnych bohomazów. Trzecie oko „wyhodował” już dla nas ktoś inny.

Droga na skróty a czytanie rękopisów, czyli HTR

Dziś do gabinetu genealoga i każdego innego czytacza historycznych tekstów – cała na biało – z pomocą przybywa sztuczna inteligencja. Dlaczego warto rozważyć zaprzyjaźnienie się z nią? Odpowiedź jest banalna: bo może się przydać. Zwłaszcza przy realizacji większych projektów, takich, jak transkrypcja i tłumaczenie tekstów historycznych czy indeksacja ksiąg metrykalnych. Komputer jest w stanie odczytać rękopis za nas, zatem czytanie rękopisów nie musi być trudne!

Najpierw mały słowniczek:

HTR (Handwirtten Text Recognition),

znane też jako HWR (Handwritting Recognition) to rozpoznawanie pisma odręcznego. Systemy HTR służą do formatowania, segmentacji i, wreszcie, identyfikowania zapisanych znaków.

Segmentacja to nic innego, jak wyodrębnianie drogi, którą dłoń piszącego prowadziła zostawiającą ślad na papierze końcówkę pióra, długopisu, ołówka. Nie odbiega daleko od analizy balistycznej, tyle że zamiast lotu pocisku, odtwarzana jest trajektoria tuszu na kartce.

ICR (Intelligent character recognition),

czyli inteligentne rozpoznawanie znaków to system rozpoznawania pisma ręcznego, który umożliwia komputerowi naukę czcionek i różnych charakterów pisma. Jest zaawansowanym systemem OCR (optical character recognition), czyli optycznego rozpoznawania znaków. Programy oparte na ICR uczą się same. Są oparte na tzw. sztucznych sieciach neuronowych, czyli strukturach matematycznych, które realizują obliczenia i przetwarzają sygnały, „trenując” nasze narzędzia do – w tym wypadku – przyswajania nowego charakteru, kroju pisma.

W dwóch zdaniach: materiał graficzny, czyli skan naszego rękopisu, jest poddawany przetwarzaniu cyfrowemu, eliminacji szumów, normalizacji i segmentacji. Inteligentny program dokonuje analizy geometrycznej, wykonuje obliczenia, a uzyskane informacje dopasowuje do słowników i wiedzy językoznawczej. 

Przykładowe programy

Trancript https://www.jacobboerema.nl/en/Freeware.htm 

Transcript to nieskomplikowany program do transkrypcji manuskryptów. Możliwe jest w nim jednoczesne przeglądanie zdjęć i tworzenie tekstu, dzięki czemu możemy zaoszczędzić sobie pracę w dwóch programach, oknach lub na dwóch monitorach jednocześnie. Z poziomu edytora można przesuwać widoczną część obrazu na wiele sposobów za pomocą skrótów, a w drugiej części ekranu pracować nad transkrypcją czy tłumaczeniem. Program jest darmowy do użytku osobistego.

FromThePage https://beta.fromthepage.com/ 

FromThePage to narzędzie typu open source, które umożliwia wolontariuszom współpracę przy transkrypcji odręcznych dokumentów, umożliwia czytanie rękopisów. Dzięki niemu wielu autorów może łączyć siły w transkrybowaniu jednego tekstu: manuskryptu utworu literackiego, zbioru dokumentów stanu cywilnego czy pamiętnika.

eLaborate https://elaborate.huygens.knaw.nl/ 

eLaborate to platforma, na którą można przesyłać skany, by później je transkrybować, dodawać adnotacje do tekstu oraz publikować wyniki.

ocr4all http://www.ocr4all.org/ 

OCR4all jest oprogramowaniem zaprojektowanym do optycznego rozpoznawania starodruków – także tych, których skomplikowane typy drukowania i nierówny układ są poza możliwościami rozpoznawania większości innych programów OCR. OCR4all łączy różne narzędzia w jednym spójnym interfejsie, przez co segmentacja, rozpoznawanie i transkrypcja możliwe są w jednym miejscu.

Transkribus https://readcoop.eu/transkribus/ 

Transkribus to chyba najbogatsza tego typu platforma, która oferuje jednocześnie najwięcej możliwości i pozwala na transkrypcję zarówno drukowanych, jak i rękopiśmiennych dokumentów. Zawiera szereg narzędzi do automatycznego przetwarzania, takich jak OCR, rozpoznawanie tekstu pisanego odręcznie, analiza układu, rozumienie i rozpoznawanie pisma. Wszystkie usługi Transkribus są dostępne za pośrednictwem interfejsu internetowego i są świadczone bezpłatnie. Transkribus może zostać przeszkolony, aby rozpoznawać dokumenty w interesujących nas językach: arabskim, angielskim, staroniemieckim, polskim, bengalskim, hebrajskim lub holenderskim. Każdy użytkownik otrzymuje pakiet 500 darmowych stron do transkrypcji.

Czytanie rękopisów w praktyce...

Nie wszystkie z wymienionych programów posiadają przejrzysty i intuicyjny interfejs. Na szczęście, na każdej ze stron pojedynczych projektów można znaleźć listę instrukcji obsługi, a na kanałach YouTube odpowiadające większości pytań nagrania z webinariów, na których prowadzący krok po kroku przechodzą przez wszystkie etapy pracy z rękopisem i programem do jego transkrypcji.

Po załadowaniu zdjęć lub skanów dokumentów, musimy zająć się segmentacją tekstu. Na początku wyznaczamy obszary, na których znajduje się tekst, oddzielamy główny korpus od marginesów, sprawdzamy, czy program prawidłowo wyodrębnił poszczególne linijki.

Później przechodzimy do transkrypcji. Każdemu wersowi ze skanu przypisana jest numerowana linijka w części edytora tekstowego. Musimy dać prowadzić się staremu tekstowi: należy przepisywać go znak po znaku, zgodnie z oryginałem. Ponieważ w przeszłości nie istniały jednolite reguły pisowni, poprawność ortograficzna czy gramatyczna będzie miała tutaj drugorzędne znaczenie. Słowa należy rozdzielać lub łączyć zgodnie z tekstem oryginalnym, nawet jeśli nie jest to zgodne z obecną praktyką.

Aby nauczyć program rozpoznawać teksty, musimy samodzielnie przetranskrybować pierwsze strony. Jeśli to tekst rękopiśmienny, potrzeba od pięciu do piętnastu tysięcy transkrybowanych wyrazów, by program był w stanie przeanalizować resztę samodzielnie – tak, by transkrypcja wczytanego przez nas tekstu wymagała z naszej strony tylko poprawek. 

Program uczy się razem z nami, więc po zakończonej pracy możemy przesłać rozpracowane teksty do bazy danych. Im więcej użytkowników i czcionek znajduje się w bazie, tym łatwiej pracować na kolejnych dokumentach.