Wat is het verschil tussen self-attention en cross-attention, en waarvoor wordt elk gebruikt?
sobes.tech AI
Antwoord van AI
Zelf-attentie — is een mechanisme waarbij de elementen van een invoerreeks met elkaar interageren om belangrijkheidsgewichten te berekenen. Elk element 'kijkt aandachtig' naar alle andere elementen van dezelfde reeks om te begrijpen welke belangrijker zijn voor de huidige stap. Dit is een kerncomponent in transformers voor het verwerken van reeksen, bijvoorbeeld in taalmodellen.
Cross-attentie — wordt gebruikt wanneer er twee verschillende reeksen zijn: de ene fungeert als query, en de andere als sleutels en waarden. Cross-attentie stelt het model in staat zich te richten op relevante delen van de tweede reeks tijdens het verwerken van de eerste. Bijvoorbeeld, bij vertaal- of tekstgeneratietaken, verbindt cross-attentie de uitvoer van de decoder met die van de encoder.
Samengevat:
- Zelf-attentie helpt het model rekening te houden met de context binnen één reeks.
- Cross-attentie verbindt twee verschillende reeksen, waardoor de ene rekening kan houden met informatie uit de andere.
Voorbeeld: in een vertaaltransformer wordt zelf-attentie binnen de encoder en decoder toegepast, terwijl cross-attentie tussen encoder en decoder plaatsvindt.