13.2 Memory-based learning
Memory-based leeralgoritmen vormen het
ene extreem van het abstractiecontinuüm, er wordt namelijk in het geheel niet
geabstraheerd, maar alle voorbeelden die in de leerfase zijn aangeboden, worden in deze
methode bewaard en gebruikt bij het classificeren van nieuwe voorbeelden. Bekende
memory-based leeralgoritmen zijn de zogeheten k-nearest-neighbour (k-nn)
leeralgoritmen en de daarvan afgeleide instance-based (ib) leeralgoritmen.
Beslisbomen zijn voorbeelden van algoritmen voor machinaal leren waarbij wél wordt
geabstraheerd en die zich dus aan het andere extreem van het abstractiecontinuüm
bevinden. Beslisbomen worden in de volgende paragraaf behandeld.
In de k-nn-algoritmen worden alle voorbeelden uit de trainingset beschouwd als punten in een N-dimensionale ruimte en als zodanig opgeslagen in het geheugen. Een voorbeeldvector vp uit de testset wordt vervolgens geclassificeerd op basis van de k meest gelijkende voorbeelden, waarbij de gelijkenis van vectoren vp en vq omgekeerd evenredig is met de Euclidische afstand d(vp, vq):
Indien k = 1, dan wordt de testvector geclassificeerd als de meest gelijkende vector, dus de vector met de kleinste Euclidische afstand. Indien k > 1, dan bepaalt de in de k dichtstbijzijnde vectoren meest voorkomende klasselabel de classificatie.
Ondanks hun eenvoud kunnen k-nn- en andere memory-based technieken bijzonder effectief zijn. Vaak kunnen ze zich qua generaliserend vermogen meten met de meest geavanceerde leeralgoritmen. Het verdient om deze reden aanbeveling om altijd een k-nn-leeralgoritme te gebruiken om een indruk te verkrijgen van de complexiteit van een leertaak.
De belangrijkste nadelen van memory-based leeralgoritmen zijn het grote geheugenverbruik en de daaraan gerelateerde grote rekencapaciteit bij het bepalen van de k naaste buren. Door de snelle toename in geheugencapaciteit en rekenkracht van computers, alsmede de beschikbaarheid van efficiënte algoritmen en datarepresentaties voor het bepalen van de naaste buren, worden memory-based technieken veelvuldig toegepast in de kennistechnologie.