Recall in Machine Learning
Recall meet het vermogen van een model om positieve gevallen correct te identificeren, essentieel in toepassingen als fraudedetectie, medische diagnose en AI-automatisering.
Wat is Recall in Machine Learning?
Binnen machine learning, met name bij classificatieproblemen, is het evalueren van de prestaties van een model van het grootste belang. Een van de belangrijkste maatstaven om het vermogen van een model te beoordelen om positieve gevallen correct te identificeren, is recall. Deze maatstaf is onmisbaar in situaties waarin het missen van een positief geval (false negatives) grote gevolgen kan hebben. Deze uitgebreide gids legt uit wat recall is, hoe het wordt gebruikt binnen machine learning, geeft gedetailleerde voorbeelden en toepassingen, en legt het belang ervan uit in AI, AI-automatisering en chatbots.
Begrip van Recall
Definitie van Recall
Recall, ook wel sensitiviteit of true positive rate genoemd, is een maatstaf die het aandeel werkelijke positieve gevallen kwantificeert dat correct is geïdentificeerd door het machine learning-model. Het meet hoe volledig een model alle relevante gevallen uit de dataset weet terug te halen.
Wiskundig wordt recall als volgt gedefinieerd:
Recall = True Positives / (True Positives + False Negatives)
Waarbij:
- True Positives (TP): Het aantal positieve gevallen dat door het model correct is geclassificeerd.
- False Negatives (FN): Het aantal positieve gevallen dat door het model ten onrechte als negatief is geclassificeerd.
De rol van recall binnen classificatiemaatstaven
Recall is een van de verschillende classificatiemaatstaven die worden gebruikt om de prestaties van modellen te evalueren, vooral bij binaire classificatie. Het richt zich op het vermogen van het model om alle positieve gevallen te identificeren en is met name belangrijk wanneer de kosten van het missen van een positief geval hoog zijn.
Recall staat in nauw verband met andere classificatiemaatstaven, zoals precisie en accuratesse. Inzicht in hoe recall zich verhoudt tot deze maatstaven is essentieel voor een volledige evaluatie van de modelprestaties.
De verwarringsmatrix uitgelegd
Om het concept van recall volledig te begrijpen, is het belangrijk om de verwarringsmatrix te kennen, een hulpmiddel dat een gedetailleerd overzicht biedt van de prestaties van een model.
Structuur van de verwarringsmatrix
De verwarringsmatrix is een tabel die de prestaties van een classificatiemodel samenvat door het aantal true positives, false positives, true negatives en false negatives weer te geven. De matrix ziet er als volgt uit:
Voorspeld Positief | Voorspeld Negatief |
---|---|
Werkelijk Positief | True Positive (TP) |
Werkelijk Negatief | False Positive (FP) |
- True Positive (TP): Correct voorspelde positieve gevallen.
- False Positive (FP): Onterecht als positief voorspelde negatieve gevallen (Type I-fout).
- False Negative (FN): Onterecht als negatief voorspelde positieve gevallen (Type II-fout).
- True Negative (TN): Correct voorspelde negatieve gevallen.
De verwarringsmatrix laat niet alleen zien hoeveel voorspellingen correct waren, maar ook welke soorten fouten zijn gemaakt, zoals false positives en false negatives.
Recall berekenen met de verwarringsmatrix
Uit de verwarringsmatrix wordt recall als volgt berekend:
Recall = TP / (TP + FN)
Deze formule geeft het aandeel werkelijke positieven weer dat correct is geïdentificeerd.
Recall bij binaire classificatie
Binaire classificatie houdt in dat gevallen worden ingedeeld in een van twee klassen: positief of negatief. Recall is vooral belangrijk bij dit soort problemen, zeker bij onevenwichtige datasets.
Onevenwichtige datasets
Een onevenwichtige dataset is er een waarbij het aantal gevallen in elke klasse niet ongeveer gelijk is. Bijvoorbeeld bij fraudedetectie is het aantal frauduleuze transacties (positieve klasse) veel kleiner dan het aantal legitieme transacties (negatieve klasse). In zulke gevallen kan modelaccuratesse misleidend zijn, omdat een model een hoge nauwkeurigheid kan behalen door alleen maar de meerderheidsklasse te voorspellen.
Voorbeeld: Fraudedetectie
Stel we hebben een dataset met 10.000 financiële transacties:
- Werkelijk frauduleuze transacties (positieve klasse): 100
- Werkelijk legitieme transacties (negatieve klasse): 9.900
Stel dat een machine learning-model voorspelt:
- Voorspelde frauduleuze transacties:
- True Positives (TP): 70 (correct voorspelde fraudegevallen)
- False Positives (FP): 10 (legitieme transacties onterecht als fraude voorspeld)
- Voorspelde legitieme transacties:
- True Negatives (TN): 9.890 (correct voorspelde legitieme transacties)
- False Negatives (FN): 30 (fraudegevallen voorspeld als legitiem)
Recall berekenen:
Recall = TP / (TP + FN)
Recall = 70 / (70 + 30)
Recall = 70 / 100
Recall = 0,7
De recall is 70%, wat betekent dat het model 70% van de fraudegevallen heeft opgespoord. Bij fraudedetectie kan het missen van fraudegevallen (false negatives) kostbaar zijn, dus een hogere recall is wenselijk.
Precisie versus recall
Begrip van precisie
Precisie meet het aandeel positieve voorspellingen dat daadwerkelijk correct was. Het antwoordt de vraag: “Van alle gevallen die als positief zijn voorspeld, hoeveel waren echt positief?”
Formule voor precisie:
Precisie = TP / (TP + FP)
- True Positives (TP): Correct voorspelde positieve gevallen.
- False Positives (FP): Negatieve gevallen onterecht als positief voorspeld.
De afweging tussen precisie en recall
Er is vaak een afweging tussen precisie en recall:
- Hoge recall, lage precisie: Het model vindt de meeste positieve gevallen (weinig false negatives), maar labelt tegelijk veel negatieve gevallen onterecht als positief (veel false positives).
- Hoge precisie, lage recall: Het model identificeert positieve gevallen met weinig false positives, maar mist veel werkelijke positieven (veel false negatives).
Het vinden van de juiste balans tussen precisie en recall hangt af van de specifieke eisen van de toepassing.
Voorbeeld: E-mail spambescherming
Bij e-mail spamfiltering:
- Hoge recall: Vangt de meeste spamberichten, maar kan legitieme e-mails als spam markeren (false positives).
- Hoge precisie: Minimaliseert het aantal ten onrechte als spam gemarkeerde e-mails, maar laat mogelijk spamberichten door in de inbox (false negatives).
De optimale balans hangt ervan af of het belangrijker is om spam te vermijden in de inbox of om geen legitieme e-mails te missen.
Toepassingen waarbij recall essentieel is
1. Medische diagnose
Bij het opsporen van ziekten kan het missen van een positief geval (patiënt heeft de ziekte maar wordt niet herkend) ernstige gevolgen hebben.
- Doel: Recall maximaliseren om alle potentiële gevallen te identificeren.
- Voorbeeld: Kankerscreening waarbij het missen van een diagnose kan leiden tot uitstel van behandeling.
2. Fraudedetectie
Het identificeren van frauduleuze activiteiten in financiële transacties.
- Doel: Recall maximaliseren om zoveel mogelijk fraudegevallen op te sporen.
- Overweging: False positives (legitieme transacties als fraude aangemerkt) zijn vervelend maar minder kostbaar dan het missen van fraude.
3. Beveiligingssystemen
Het detecteren van inbraken of ongeautoriseerde toegang.
- Doel: Zorgen voor hoge recall om alle beveiligingsincidenten te onderscheppen.
- Aanpak: Enkele valse alarmen accepteren om te voorkomen dat echte bedreigingen worden gemist.
4. Chatbots en AI-automatisering
Voor AI-gestuurde chatbots is het correct begrijpen en beantwoorden van gebruikersintenties essentieel.
- Doel: Hoge recall om zoveel mogelijk gebruikersverzoeken te herkennen.
- Toepassing: Klantenservice-chatbots die uiteenlopende formuleringen van hulpvragen moeten begrijpen.
5. Foutdetectie in productie
Het identificeren van defecten of storingen in producten.
- Doel: Recall maximaliseren om te voorkomen dat defecte items bij klanten terechtkomen.
- Impact: Hoge recall garandeert kwaliteitscontrole en klanttevredenheid.
Recall berekenen: een voorbeeld
Stel we hebben een dataset voor een binaire classificatie, bijvoorbeeld het voorspellen van klantverloop:
- Totaal aantal klanten: 1.000
- Werkelijk verloop (positieve klasse): 200 klanten
- Werkelijk geen verloop (negatieve klasse): 800 klanten
Na het toepassen van een machine learning-model verkrijgen we de volgende verwarringsmatrix:
Voorspeld verloop | Voorspeld geen verloop |
---|---|
Werkelijk verloop | TP = 160 |
Werkelijk geen verloop | FP = 50 |
Recall berekenen:
Recall = TP / (TP + FN)
Recall = 160 / (160 + 40)
Recall = 160 / 200
Recall = 0,8
De recall is 80%, wat betekent dat het model 80% van de klanten die zullen vertrekken correct heeft geïdentificeerd.
Recall verbeteren in machine learning-modellen
Om recall te verhogen, kun je de volgende strategieën overwegen:
Data-niveau methoden
- Verzamel meer data: Vooral voor de positieve klasse om het model beter te laten leren.
- Resampling-technieken: Gebruik methoden zoals SMOTE (Synthetic Minority Over-sampling Technique) om de dataset in balans te brengen.
- Data-augmentatie: Maak extra synthetische data voor de minderheidsklasse.
Algoritme-niveau methoden
- Pas de classificatiedrempel aan: Verlaag de drempel om meer gevallen als positief te classificeren.
- Gebruik kosten-sensitief leren: Ken hogere straffen toe aan false negatives in de verliesfunctie.
- Ensemble-methoden: Combineer meerdere modellen om de algemene prestaties te verbeteren.
Feature engineering
- Maak nieuwe features: Die beter de eigenschappen van de positieve klasse vastleggen.
- Feature selectie: Focus op de meest relevante kenmerken voor de positieve klasse.
Modelselectie en hyperparameter-tuning
- Kies geschikte algoritmen: Sommige algoritmen kunnen beter omgaan met onevenwichtige data (bijv. Random Forest, XGBoost).
- Optimaliseer hyperparameters: Stem parameters af specifiek om recall te verbeteren.
Wiskundige interpretatie van recall
Door recall wiskundig te benaderen krijg je diepere inzichten.
Bayesiaanse interpretatie
Recall kan worden gezien als een conditionele kans:
Recall = P(Voorspeld Positief | Werkelijk Positief)
Dit geeft de kans weer dat het model positief voorspelt gegeven dat de werkelijke klasse positief is.
Relatie met Type II-fout
- Type II-fout (β): De kans op een false negative.
- Recall: Gelijk aan (1 – Type II-fout).
Hoge recall betekent een lage Type II-fout, dus minder false negatives.
Verband met de ROC-curve
Recall is de True Positive Rate (TPR) die wordt gebruikt in de Receiver Operating Characteristic (ROC)-curve, waarin TPR wordt afgezet tegen de False Positive Rate (FPR).
- ROC-curve: Visualiseert de afweging tussen recall (sensitiviteit) en fallout (1 – specificiteit).
- AUC (Area Under the Curve): Geeft het vermogen van het model aan om onderscheid te maken tussen positieve en negatieve klassen.
Onderzoek naar recall in machine learning
Binnen het vakgebied machine learning speelt het concept “recall” een cruciale rol bij het beoordelen van de effectiviteit van modellen, met name bij classificatietaken. Hier volgt een samenvatting van relevante wetenschappelijke artikelen die verschillende aspecten van recall in machine learning behandelen:
Show, Recall, and Tell: Image Captioning with Recall Mechanism (Gepubliceerd: 2021-03-12)
Dit artikel introduceert een nieuw recall-mechanisme dat beeldonderschriften verbetert door het menselijk cognitief vermogen na te bootsen. Het voorgestelde mechanisme bestaat uit drie componenten: een recall-unit voor het ophalen van relevante woorden, een semantische gids om contextueel richting te geven, en slots voor herinnerde woorden om deze in de onderschriften te integreren. De studie gebruikt een zachte switch, geïnspireerd door tekstsamenvattingstechnieken, om de kans op woordgeneratie te balanceren. De aanpak verbetert BLEU-4-, CIDEr- en SPICE-scores op de MSCOCO-dataset aanzienlijk en overtreft andere state-of-the-art methoden. De resultaten benadrukken het potentieel van recall-mechanismen in het verbeteren van de beschrijvende nauwkeurigheid bij beeldonderschrijving. Lees het artikel hier.Online Learning with Bounded Recall (Gepubliceerd: 2024-05-31)
Dit onderzoek verkent het concept bounded recall in online leren, een scenario waarin algoritmen beslissingen nemen op basis van beperkte herinnering aan eerdere beloningen. De auteurs tonen aan dat traditionele mean-based no-regret-algoritmen falen bij bounded recall, wat leidt tot constante spijt per ronde. Ze stellen een stationair bounded-recall-algoritme voor dat een spijt per ronde van $\Theta(1/\sqrt{M})$ behaalt, wat een scherpe ondergrens weergeeft. De studie benadrukt dat effectieve algoritmen met beperkte recall rekening moeten houden met de volgorde van eerdere verliezen, in tegenstelling tot situaties met perfecte recall. Lees het artikel hier.Recall, Robustness, and Lexicographic Evaluation (Gepubliceerd: 2024-03-08)
Dit artikel bekritiseert het gebruik van recall bij rangschikkingsevaluaties en bepleit een formeler evaluatiekader. De auteurs introduceren het concept “recall-orientation” en koppelen dit aan eerlijkheid in rangschikkingssystemen. Ze stellen een lexicografische evaluatiemethode, “lexirecall”, voor, die een hogere gevoeligheid en stabiliteit laat zien in vergelijking met traditionele recall-maatstaven. Door empirische analyse van verschillende aanbevelings- en retrievaltaken valideert de studie het verbeterde onderscheidend vermogen van lexirecall, waarmee het geschikter blijkt voor meer genuanceerde rangschikkingsevaluaties. Lees het artikel hier.
Veelgestelde vragen
- Wat is recall in machine learning?
Recall, ook wel sensitiviteit of true positive rate genoemd, geeft het aandeel werkelijke positieve gevallen aan dat een machine learning-model correct identificeert. Het wordt berekend als True Positives gedeeld door de som van True Positives en False Negatives.
- Waarom is recall belangrijk bij classificatieproblemen?
Recall is cruciaal wanneer het missen van positieve gevallen (false negatives) grote gevolgen kan hebben, zoals bij fraudedetectie, medische diagnose of beveiligingssystemen. Een hoge recall zorgt ervoor dat de meeste positieve gevallen worden geïdentificeerd.
- Hoe verschilt recall van precisie?
Recall meet hoeveel werkelijke positieven correct worden geïdentificeerd, terwijl precisie meet hoeveel voorspelde positieven daadwerkelijk correct zijn. Er is vaak een afweging tussen de twee, afhankelijk van de behoeften van de toepassing.
- Hoe kan ik recall verbeteren in mijn machine learning-model?
Je kunt recall verbeteren door meer gegevens te verzamelen voor de positieve klasse, resampling- of data-augmentatietechnieken toe te passen, classificatiedrempels aan te passen, kosten-sensitief leren toe te passen en modelhyperparameters te optimaliseren.
- Voor welke toepassingen is recall van cruciaal belang?
Recall is vooral belangrijk bij medische diagnose, fraudedetectie, beveiligingssystemen, chatbots voor klantenservice en foutdetectie in de productie—elke situatie waarin het missen van positieve gevallen kostbaar of gevaarlijk is.
Probeer FlowHunt voor AI-oplossingen
Begin met het bouwen van AI-gestuurde oplossingen en chatbots die gebruikmaken van belangrijke machine learning-maatstaven zoals recall voor betere automatisering en inzichten.