---
title: Novinky v oblasti “Punctuation Restoration”
published: true
taxonomy:
    category: [tp2020]
    tag: [interpunction,nlp]
    author: Dárius Lindvai
---
# Novinky v oblasti “Punctuation Restoration”

Keďže interpunkcia a veľké písmená v slovách nemajú vplyv na výslovnosť slov, sú z výstupu **ASR** (*automatic speech recognition = automatické rozpoznávanie reči*) odstraňované, výsledkom čoho sú iba sekvencie slov alebo písmen. Systémy vykonávajúce doplňovanie **interpunkčných znamienok** a veľkých písmen sú potrebné najmä preto, lebo tieto výstupy bez interpunkcie a veľkých písmen väčšinou pre ľudí nie sú zrozumiteľné (v textovej forme). Interpunkcia a veľké písmená sú taktiež dôležité prvky aj pri **NLP** (*natural language processing = spracovanie prirodzeného jazyka*).

V súčasnosti existuje mnoho metód/spôsobov, akými je možné pristupovať k problematike doplňovania interpunkcie a obnovy veľkých písmen. V niektorých metódach je použitý princíp strojového prekladu, kde do modelu vstupoval text bez interpunkcie a model tento text následne “preložil” na text s interpunkciu. V iných metódach sú zasa použité CRF (*conditional random field = podmienené náhodné polia*). Avšak väčšina existujúcich metód/systémov rieši iba interpunkciu, čo však nestačí napr. pri NER (*named-entity recognition*) alebo POS (*part-of-speech*), kde je potrebné poznať hlavne to, kde sa nachádzajú veľké písmená.

V tomto článku predstavím dve metódy z roku 2019, v ktorých sú predstavené dva rôzne spôsoby, ako je možné pristupovať k problematike doplňovania interpunkcie. Prvá z nich je zameraná na tzv. transformátory a druhá z nich funguje na princípe tzv. „self-attention“.

### 1. FAST AND ACCURATE CAPITALIZATION AND PUNCTUATION FOR AUTOMATIC SPEECH RECOGNITION USING TRANSFORMER AND CHUNK MERGING
#### Rýchle a presné doplňovanie interpunkčných znamienok a obnovovanie veľkých písmen pre Automatické rozpoznávanie textu použitím transformátora a “zlučovania blokov textu” (chunk merging)

Metóda vytvorená kolektívom autorov okolo Binh Nguyena z Vietnamu predstavuje spôsob doplňovania interpunkcie a obnovy veľkých písmen pre ASR. Využíva princíp transformačných modelov (*transformer models*) a zlučovania blokov (*chunk-merging*) textu so schopnosťou doplňovať interpunkciu a obnovovať veľké písmená v jednom kroku.

Skladá sa z 3 komponentov, z ktorých prvý slúži na rozdeľovanie veľkých textových segmentov na menšie časti (*chunk-splitting*), ktoré sa však prekrývajú. To znamená, že takmer všetky vety (alebo slová/časti viet, to závisí aké kritérium bolo zvolené pri rozdeľovaní textu) sa po rozdelení objavia vo viacerých častiach (vysvetlené na príklade nižšie). Tieto časti textu sú po rozdelení dostatočne dlhé na to, aby mal druhý komponent k dispozícii dostatok kontextu zľava aj sprava a mohol tak vykonať čo najpresnejšiu predikciu. Posledný komponent  rozhoduje, ktoré časti textu (prekrývajúce sa) budú odstránené a ktoré budú zachované a zlúčené naspäť do jedného celku (*chunk-merging*).
> Príklad na "chunk splitting": Máme určitý text -skupinu viet:
> - "... . Futbalisti FC Liverpool sa stretnú v osemfinále Ligy majstrov s Atleticom Madrid. Rozhodol o tom pondelňajší žreb v sídle UEFA vo švajčiarskom Nyone. ..."
>  
>  Ak na tieto vety aplikujeme algoritmus "chunk-splitting"-u, dostaneme podobný výstup:
> 1. veta: Futbalisti FC Liverpool sa stretnú v osemfinále Ligy majstrov s Atleticom Madrid.
> 2. veta: v osemfinále Ligy majstrov s Atleticom Madrid. Rozhodol o tom pondelňajší žreb
> 3. veta: Rozhodol o tom pondelňajší žreb v sídle UEFA vo švajčiarskom Nyone.
>
> Samozrejme, toto je len príklad na pochopenie "chunk-splittingu". Reálne môžu byť vety rozdeľované rôznymi spôsobmi.

Motiváciou autorov k navrhnutie tejto metódy sa stal fakt, že pokiaľ ide o kratšie rečové segmenty, štúdie v oblasti ASR dosahujú výborné výsledky (v poslednej dobe). Avšak pokiaľ ide o dlhšie rečové segmenty, stále existujú nedostatky v štandardizácii výsledného textového výstupu ASR, napríklad doplňovanie interpunkcie a obnova kapitalizácie (veľkých písmen). Tieto nedostatky bránia čitateľovi porozumieť výstup ASR a taktiež spôsobujú problémy pri modeloch pre spracovanie prirodzeného jazyka, napríklad NER, POS “tagging” alebo sémantické parsovanie (*semantic parsing*).

Experimenty, ktoré autori vykonali na Britskom národnom korpuse (*British national corpus*), preukázali, že predstavený model svojou presnosťou a rýchlosťou značne prevyšuje existujúce metódy a modely.

### 2. SELF-ATTENTION BASED MODEL FOR PUNCTUATION PREDICTION USING WORD AND SPEECH EMBEDDINGS
#### Model založený na “self-attention” zameraný na predikciu interpunkcie použitím slovných a rečových embeddingov

Ďalšia metóda, ktorej autormi sú Jiangyan Yi a Jianhua Tao z Číny používa na predikciu interpunkčných znamienok model založený na “*self-attention*”. V modeli sú použité “word and speech embeddings”, ktoré sú pred-trénované vo frameworku Word2Vec a Speech2Vec. Použitie tohto prístupu umožňuje modelu využívať akýkoľvek druh lexikálnych a akustických dát. Vysoká úspešnosť predošlých “self-attention” modelov v oblasti predikcie a doplňovania interpunkčných znamienok autorov inšpirovala k vytvoreniu tohto modelu.

Predošlé modely používali k činnosti akustické príznaky, lexikálne príznaky, alebo ich kombináciu. Využitie akustických príznakov textu sa javí ako efektívnejšie ako využitie samotných lexikálnych príznakov. Avšak v mnohých prípadoch ich nie je možné použiť v ASR, nakoľko ľudia pri hovorení zvyknú používať pauzy medzi slovami na miestach, kde by ich používať nemali. Kombinovanie týchto dvoch typov príznakov (akustické a lexikálne) čiastočne vyrieši tento problém. Veľa štúdií používa lexikálne dáta, ktoré však musia mať pridelené rečové údaje (bodky, čiarky, pauzy medzi slovami, a podobne), čo však spôsobuje komplikácie a limituje používanie čisto lexikálnych dát.

Výsledky experimentov, ktoré bolo vykonané na korpuse “English IWSLT2011”, ukazujú, že model založený na “self-attention”, ktorý používa “word and speech embeddings” dosahuje oveľa lepšie výsledky a väčšiu rýchlosť ako viacero modelov slúžiacich na doplňovanie interpunkcie.

[1] NGUYEN, B. a kol.: *Fast and Accurate Capitalization and Punctuation for Automatic Speech Recognition Using Transformer and Chunk Merging.* [online] [citované 07-08-2019] URL: <https://arxiv.org/abs/1908.02404>

[2] YI, J. a kol.: *Self-attention Based Model for Punctuation Prediction Using Word and Speech Embeddings.* [online] [citované 17-04-2019] URL: <https://ieeexplore.ieee.org/abstract/document/8682260>

