Die Subword-Methode OOV zeigt 0,00 % für alle Tokenizer an, aber ich denke, das sollte nicht der Fall seinPython

Python-Programme
Anonymous
 Die Subword-Methode OOV zeigt 0,00 % für alle Tokenizer an, aber ich denke, das sollte nicht der Fall sein

Post by Anonymous »

Ich versuche, 4 Tokenisierer meiner Wahl zu analysieren und wollte eine OOV-Metrik basierend auf dem Unterwort einbinden. Die Funktionsweise ist ziemlich einfach:

Code: Select all

def compute_oov_rate_subword(tokenizer, sentences):
total_words = 0
oov_words = 0

for s in sentences:
words = s.split()
for word in words:
total_words += 1
word_tokens = tokenizer.tokenize(word)

if tokenizer.unk_token in word_tokens:
oov_words += 1

return oov_words / total_words if total_words \> 0 else 0.0

subword_oov_results = {}
Es durchläuft jeden Satz und teilt ihn in einzelne Wörter auf. Die Kernlogik besteht darin, zu prüfen, ob tokenizer.unk_token (unbekanntes Token) in den für ein bestimmtes Wort generierten word_tokens vorhanden ist. Wenn dies der Fall ist, wird das Wort als OOV-Wort gezählt.
Das Problem ist, dass ich 0,00 % für alle von mir ausgewählten Modell-Tokenizer erhalte (GPT2, LLaMa, XLM-R), außer BERT (bert-base-uncased um genau zu sein) – es sind 0,967623 %.

Es funktioniert, wenn ich meinen anderen Algorithmus verwende – den, der jedes Wort zeichenweise aufteilt Charakter. Ich erhalte dann 0,15 %–0,20 %, was in Ordnung ist, da die Datensätze recht klein sind (1000 Sätze pro Sprache). Wenn sie also größer wären, würde der OOV näher bei 0 % liegen (ich denke, korrigieren Sie mich, wenn ich falsch liege).
Ja, ich weiß, dass die OOV-Metrik normalerweise zum Vergleichen/Analysen von Modellen verwendet wird und nicht für die Tokenisierer, aber ich würde trotzdem gerne nach den UNK-Tokens suchen meine Datensätze (es gibt Sätze auf Englisch, Japanisch und Humgarisch).

Ich denke, dass es nicht 0,00 % sein sollte und vielleicht haben diese Tokenizer eine andere Möglichkeit, mit unbekannten Token zu arbeiten. Alle Tipps werden hilfreich sein, insbesondere, dass ich immer wieder viele Artikel über Modelle und ihre Analyse finde, aber nicht über die Tokenizer selbst.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post