Zum Inhalt

2025

Tokenisierung mit Byte Pair Encoding (BPE)

Die Tokenisierung ist ein entscheidender Schritt in vielen NLP-Anwendungen (Natural Language Processing). Sie bestimmt, wie Wörter (bzw. Text) in kleinere Einheiten – sogenannte Tokens – zerlegt werden. Diese Tokens können einzelne Buchstaben, Wortteile (Subwords) oder ganze Wörter sein. Besonders bei modernen Sprachmodellen und Anwendungen wie maschineller Übersetzung und Textklassifikation wird eine geschickte Tokenisierung immer wichtiger.

---
config:
  sankey:
    showValues: false
    linkColor: 'target'
    width: 450
    height: 300
---
%%{
init: {
    'theme': 'base',
    'themeVariables': {
    'primaryTextColor': '#888888'
    }
}
}%%
sankey-beta

Tokenisierung_,Token,10.0
Tokenisierung_,is,10.0
Tokenisierung_,ierung,10.0
mit_ Byte_,mit,10.0
mit_ Byte_,Byte,10.0
Pair_,P,10.0
Pair_,air,10.0
Encoding_,Enc,10.0
Encoding_,oding,10.0

Ein gängiges Verfahren dafür ist Byte Pair Encoding (BPE). Ursprünglich entstammt BPE einer Datenkompressionstechnik, hat jedoch Einzug in die NLP-Welt gefunden, um das Problem von seltenen Wörtern und unbekanntem Vokabular besser zu handhaben. Dieser Blog-Beitrag zeigt Schritt für Schritt, wie man einen BPE-Tokenizer aufbaut und wie ein solcher Tokenizer anschließend zum Einsatz kommt.

Git Strategie

Eine Git-Strategie definiert einen planmäßigen Ansatz für die Nutzung von Git in Softwareentwicklungsprojekten, besonders im Hinblick auf Branching, Merging und Release-Management.

%%{init: {
'logLevel': 'debug',
'theme': 'neutral',
'gitGraph': {'mainBranchName': 'production'}, 
'themeVariables': {'git0': '#5193e8', 'git1': '#e87451'}
}}%%
gitGraph:
    commit id:"Initial commit ..."
    branch development
    checkout development
    commit id:"init dev branch ..."
    commit id:" ..."
    commit
    checkout production
    commit id:" ...."
    commit id:"other commits ..." tag:"v1"
    commit id:" ....."
    merge development

Sie bestimmt, wie und wann Branches erstellt, zusammengeführt und verwaltet werden, um Entwicklung, Testing und Auslieferung von Software effizient und fehlerfrei zu gestalten.

Kontrastive Embeddings für die Text-zu-Bild-Suche

In diesem Beitrag stelle ich ein Projekt vor, das sich mit Text-zu-Bild-Retrieval1 befasst. Die Grundidee: Nutzerinnen und Nutzer geben eine kurze Beschreibung ein und erhalten jene Bilder vorgeschlagen, die am ehesten zum eingegebenen Text passen.

Um dieses Ziel zu erreichen, kommt ein Dual-Encoder-Ansatz zum Einsatz, der Bilder und Texte in einen gemeinsamen Merkmalsraum einbettet. Dadurch können Ähnlichkeiten verlässlich bestimmt und Bild-Text-Paare nach ihrer Übereinstimmung sortiert werden. Im Gegensatz zu klassischen Regressionslösungen entsteht durch kontrastives Training ein besonders aussagekräftiger Embedding-Raum, in dem das gesuchte Bild leichter auffindbar ist.

Im Folgenden erläutere ich die Datenstruktur, das Modell-Design sowie die rechtlichen Rahmenbedingungen (Compliance-Filter). Anschließend illustrieren Codebeispiele, wie das Modell trainiert und getestet wird und welche Performancekennzahlen (etwa Recall@5) für das Ranking in der Praxis besonders wichtig sind.