Bag of words vs tf idf
Bag-of-Words: eenvoud en beperkingen
Bag-of-Words (BoW) is een van de oudste en eenvoudigste methoden om tekst om te zetten in numerieke kenmerken. Het model negeert de volgorde van woorden en beschouwt een document als een verzameling (bag) van woorden. Elk uniek woord in het corpus wordt een dimensie in de feature-ruimte, en de waarde is vaak de frequentie van dat woord in het document. BoW is gemakkelijk te implementeren en werkt verrassend goed voor taken zoals spamdetectie en onderwerpclassificatie. Het heeft echter grote nadelen. Ten eerste gaat alle syntactische en semantische informatie verloren: 'de hond bijt de man' en 'de man bijt de hond' krijgen dezelfde representatie. Ten tweede leidt een groot corpus tot een enorme, ijle feature-ruimte, wat geheugen en rekenkracht kost. Ten derde krijgen veelvoorkomende woorden onterecht veel gewicht, tenzij stop words worden verwijderd. Ondanks deze beperkingen blijft BoW een nuttige baseline en wordt het soms gebruikt in combinatie met andere technieken. In de praktijk is het grotendeels vervangen door TF-IDF en embedding-based methoden.
TF-IDF: wegen van importantie
Term Frequency-Inverse Document Frequency (TF-IDF) is een uitbreiding op BoW die woorden weegt op basis van hun importantie. De term frequency (TF) is het aantal keer dat een woord in een document voorkomt, vaak genormaliseerd. De inverse document frequency (IDF) meet hoe zeldzaam een woord is across alle documenten. Het product TF × IDF geeft een hoge score aan woorden die vaak in een specifiek document voorkomen maar zeldzaam zijn in het corpus. Hierdoor krijgen woorden zoals 'de' een lage score en woorden zoals 'kunstmatige' een hoge score. TF-IDF wordt veel gebruikt in informatie-retrieval, zoekmachines en tekstclassificatie. Het is eenvoudig, interpreteerbaar en vereist geen training. Het blijft echter een bag-of-words-benadering: woordvolgorde en context gaan verloren. Ook kan het niet omgaan met synoniemen of woordbetekenissen. Voor veel moderne toepassingen is TF-IDF vervangen door dense retrieval met embeddings, maar het wordt nog steeds gebruikt in hybride zoeksystemen en als baseline in benchmarks. De methode is robuust en werkt goed bij kleine datasets en domeinen met specifiek jargon.