[PetersWerkWiki] [TitleIndex] [WordIndex

Werkoverleg met GvN en MW

Taken:

  1. Forced Alignment...

    • ✔ Levenshtein-meting zonder normalisatie per woord
      • → zie beneden
    • DialectClassification.accdb omzetten naar tsv

      • → zie: /net/aistaff/kleiweg/spraak/fa/DialectClassification

    • ✔ Eigen classificatiemethode beschrijven
    • ❏ Verdiepen in machine learning
  2. Werktijden
    • ❏ uren bijhouden


Eigen classificatiemethode

Trainen:

Voor één zin, voor één woord (bijv het eerste woord, w1):

Stel, het woord heeft vier varianten (w1a, w1b, w1c, w1d). Tel hoe vaak elke variant in elk gebied voorkomt (in de trainingsset):

Noord

Oost

Zuid

w1a

100

20

10

w1b

50

40

40

w1c

0

0

90

w1d

80

100

60

Normaliseer eerst per kolom, door te delen door het aantal sprekers per gebied, in dit geval 230, 160 en 200. (Dit is een kunstmatig voorbeeld. Hier is het totaal aantal sprekers iets groter dan in de werkelijke data.)

Noord

Oost

Zuid

w1a

0.435

0.125

0.050

w1b

0.217

0.250

0.200

w1c

0.000

0.000

0.450

w1d

0.348

0.625

0.300

Normaliseer daarna per rij, zodat de som van elke rij 1 is:

Noord

Oost

Zuid

w1a

0.713

0.205

0.082

w1b

0.325

0.375

0.300

w1c

0.000

0.000

1.000

w1d

0.273

0.491

0.236

Je ziet nu dat variant w1a een waarde heeft voor oost die groter is dan twee keer de waarde voor zuid, terwijl in de trainigsset de telling voor oost precies het dubbele was van zuid voor die variant. Het grotere verschil in de slotwaarde komt doordat er meer trainingsdata was uit het zuiden dan uit het oosten.

Testen:

Voor een spreker wordt de variant van een woord opgezocht in de tabel, en de waardes in de bijbehorende rij worden opgeteld bij de regiosommen voor die spreker. (Als de variant niet voorkomt in de tabel worden de waardes 0 gebruikt voor elke regiod.) Dit gebeurt voor elk woord in de zin. Daarna wordt de zin toegekend aan de regio met de hoogste score voor die spreker.

Een variant die ik gebruikt heb is in plaats van de waardes op de tellen, alle waardes te verhogen met 0.001, en ze daarna met elkaar te vermenigvuldigen. Dit geeft ongeveer dezelfde eindscores.


Levenshtein

Hieronder de plots van alle zinnen samen voor de vier methodes:

  1. Levenshtein -N 6, indel = subst / 2
  2. Levenshtein -N 6, indel = subst
  3. Binair
  4. Gewichteter Identitätswert

De outlier in de eerste twee plots is O-15268

diff05.png diff10.png diff-bin.png diff-giw.png


CategorySpraakAccenten CategoryForcedAlignment