ATRaNoS T1-T6 CNTS Team: Bart Decadt Erik Tjong Kim Sang Walter Daelemans CNTS taak voor T1+6 • WP2: Ontdekken en verwerken van Out-OfVocabulary-items (OOV) – Specifieke taak = foneem-naar-grafeem omzetting – Doeleinden: • T1+6: Baseline omzetter • T1+6: Rapport Overzicht • Waarom foneem-naar-grafeem omzetting? • Haalbaarheidsexperimenten met CELEX – Resultaten + fouten-analyse • Experimenten met ‘echte’ data – Resultaten + fouten-analyse • Conclusies + TODO WP2: Taak: foneem-naar-grafeem omzetting spraak Spraak Herkenner tekst Confidence threshold Vermoedelijk OOV-item Foneemherkenner (ESAT) Foneemstring + context (voorgaande en volgende woorden in spelling) Training Data Omzetter (TiMBL) Spelling Spelling corrector met omvangrijk vocabularium (1) Onderzoek naar haalbaarheid • Wat is de haalbaarheid van foneem-naar-grafeem omzetting? – Experimenten met CELEX – Memory Based Learning (TiMBL) als machine learning methode • Hoe groot is de invloed van ruis in de data? – Typische error rate van een foneem-herkenner ~ 25 tot 30% Voorbereiden van de data (1) • Voorbereiden van CELEX – Spelling en uitspraak moeten gealigneerd worden (met Expectation Maximization (EM) algoritme [ILKAlign]) • “nul” symbool • samengestelde grafemen /tAksi/ taxi tax_i /slap/ slaap slAp – Voordeel van EM: geen tuning nodig – Gerandomiseerd op woordniveau Voorbereiden van de data (2) • Toevoegen van ruis – Gebeurde op woordniveau – Simulatie van substituties: fonemen werden vervangen door hun nearest phonemes • Confusion matrix a.h.v. MVDM (Modified Value Difference Metric) – Van 0 tot 50% ruis Experimenten met TiMBL • Memory Based Learning experimenten – Classification-based – Similarity-based – Gebruikte algoritmes: • IB1 (standaard) met k=1,3,5 • IGTree (decision tree based optimization) – Metriek om similarity te berekenen: Overlap metric met Gain Ratio weighting – Experimenten met 10-fold cross-validation • Resultaten (accuraatheid) – Vrij van fouten: 99.1 (grafemen) – 25% fouten: 93.1 (grafemen) – 30% fouten: 92.0 (grafemen) 91.4 (woorden) 53.0 (woorden) 47.7 (woorden) Resultaten van experimenten met CELEX 100 98 96 94 92 90 88 86 84 82 80 0 5 10 15 20 25 30 35 40 45 50 percentage of noise IG-Tree, overlap, GR IB-1, overlap, GR, k1 IB-1, overlap, GR, k3 IB-1, overlap, GR, k5 accuracy at word-level 100 90 80 accuracy accuracy accuracy at grapheme-level 70 60 50 40 30 20 0 5 IG-Tree, overlap, GR 10 15 20 25 30 percentage of noise IB-1, overlap, GR, k1 35 IB-1, overlap, GR, k3 40 45 50 IB-1, overlap, GR, k5 Fouten-analyse • Analyse van fouten in de output van algoritme IB1, k=1 op dataset zonder ruis • 2 soorten fouten: – Fouten door ambiguïteit – Fouten door atypische spelling Fouten door ambiguïteit • Ambiguïteit door spellingsconventies – /k/ c of k? • /INkledIN/ incleding • /vudbAlkOm@ptitsi/ voetbalkompetitie – /i/ i of y? • /fil@/ fyle • /elEktrolitis/ elektrolitisch • Ambiguïteit door assimilatie – /n/ wordt /m/ voor /b/ • /embanswEx/ eembaansweg • Ambiguïteit door zelfde uitspraak, andere spelling – /ledikAnt/ ladikant ladykiller, ladyshave, ladylike Fouten door atypische spelling Fonemen TiMBL Correct /rokAj@/ Rokuille Rocaille /sikorK/ Sykcurij Cichorei /fwAje/ Foyee Foyer /bazuka/ Bazoeka Bazooka /x@krust/ Gekroest Gecruist (2) Experimenten met data van foneemherkenner • Data van ESAT: – 129075 woorden – 605955 grafemen – 8913 OOV-items – Enkele voorbeelden: • grafeemstring: foneemstring: • grafeemstring: foneemstring: • grafeemstring: foneemstring: ze veegde de tranen uit haar ooghoeken z@ veGe t@r tran@n Lt har ohok@n het was een spel geworden h@t wAs @ spEl G@wOrt@n t@x cathy had haar uiterste best gedaan kYdi hAt hAr Ljt@rst@ bEs x@dan Voorbereiden van de ESAT-data (1) • Aligneren met “nul” symbolen + samengestelde grafemen • Problemen bij het aligneren van de data: – Door deleties in de foneemstrings werkt het EM algoritme niet • Oplossing: – Ander aligneer-algoritme: Dynamic Programming (DP) (of Dynamic Time Warping) – Nadeel: tuning nodig! – Voordeel: kan deleties aligneren Voorbereiden van de ESAT-data (2) • • • Deleties staan niet aangeduid in de input van omzetter deleties werden verwijderd uit dataset Heeft spelling voorgaande/volgende woord invloed? Vier verschillende datasets: 1. 2. 3. 4. • Woorden met deleties verwijderd, geen spelling als context Woorden met deleties verwijderd, wel spelling als context Instanties met deleties verwijderd, geen spelling als context Instanties met deleties verwijderd, wel spelling als context Experimenten: (1) 10 CV op volledige dataset, en (2) alleen OOV-items als testmateriaal Resultaten met hele dataset grafeemniveau Dataset -spelling -woorden +spelling -woorden -spelling -instanties +spelling -instanties IB1, k=1 IB1, k=3 IB1, k=5 IGTREE 73.10 74.53 74.77 73.31 72.16 74.82 75.27 72.46 76.23 77.32 77.43 76.36 74.62 76.91 76.95 74.92 Resultaten met hele dataset woordniveau Dataset -spelling -woorden +spelling -woorden -spelling -instanties +spelling -instanties IB1, k=1 IB1, k=3 IB1, k=5 IGTREE 46.88 47.03 47.00 46.82 43.86 44.83 44.25 43.51 46.38 46.54 46.52 46.30 42.49 43.92 43.40 42.27 Voorbeeld van output • TiMBL’s output: cafe zag en wild zwaaien haar vader stak zijn dan omhoog fassaf hij wilde zeggen het komt we goed jog haar maar klefde bijnae tegen ik aultoeraanpiee aan • Correcte versie: cathy zag hen wild zwaaien haar vader stak zijn duim omhoog alsof hij wilde zeggen het komt wel goed joch haar moeder kleefde bijna tegen het autoraampje aan Foutenanalyse: hoe goed worden OOV-items omgezet? • Alle OOV-items uit de tien test-bestanden van 10 CV experimenten gehaald (8913 woorden) • Resultaten berekend op grafeem- en woordniveau • Geteld hoeveel woorden 0, 1, 2, … fouten per woord hebben Resultaten op grafeemniveau Dataset -spelling -woorden +spelling -woorden -spelling -instanties +spelling -instanties IB1, k=1 IB1, k=3 IB1, k=5 IGTREE 58.88 62.00 62.69 59.66 58.07 62.29 63.06 59.14 59.87 62.82 63.34 60.66 58.93 63.07 63.37 60.06 Resultaten op woordniveau Dataset IB1, k=1 IB1, k=3 IB1, k=5 IGTREE -spelling 6.24 6.70 6.89 6.11 -woorden +spelling 5.14 6.29 6.51 5.35 -woorden -spelling 6.17 6.67 6.87 6.05 -instanties +spelling 4.97 6.20 6.41 5.13 -instanties MAAR verzameling OOV-words bevat 3985 (44.7%) woorden met deleties deze woorden kunnen nooit volledig correct herkend worden Voorbeeld van output • TiMBL’s output: het komt wel goed jog bijna tegen het aultoeraampiee aan haar neus werd pladvedrukt cathy zag de belleen langzaam verdwijnen cathy staarde hem bevreemd aan • Correcte versie: het komt wel goed joch bijna tegen het autoraampje aan haar neus werd platgedrukt cathy zag de bmw langzaam verdwijnen cathy staarde hem bevreemd aan Fouten-analyse OOV-items Number of words for errors per word 2000 Number of words 1800 1600 1400 1200 1000 800 600 400 200 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Errors per word De meeste woorden hebben 2 tot 5 fouten per woord (gemiddelde is 3.03) 16 (3) Conclusie • Experimenten op volledige ESAT dataset (max. 47.0) komen in de buurt van de resultaten van de experimenten met artificiële ruis (47.7 – 53.0% op woordniveau) • Resultaten bij de OOV-items (max. 6.9%) liggen ver beneden de resultaten van de experimenten met artificiële ruis (4) TODO • Verdere optimalisering van de leertechniek op deze taak • Oplossing voor probleem van deleties • Spelling corrector met omvangrijk vocabularium als post-processing • Evaluatie van omzetter in combinatie met de confidence measures ontwikkeld door ESAT