Neurale netværk lærer gennem tal, så hvert ord vil blive kortlagt til vektorer for at repræsentere et bestemt ord. Indlejringslaget kan opfattes som en opslagstabel, der gemmer ordindlejringer og henter dem ved hjælp af indekser.
Ord, der har samme betydning, vil være tæt på med hensyn til euklidisk afstand/cosinus lighed. for eksempel, i nedenstående ordrepræsentation er "lørdag", "søndag" og "mandag" forbundet med det samme koncept, så vi kan se, at ordene resulterer ens.
Bestemmelsen af ordets position, hvorfor skal vi bestemme ordets position? fordi transformatorenkoderen ikke har nogen gentagelse som tilbagevendende neurale netværk, skal vi tilføje nogle oplysninger om positionerne i input-indlejringerne. Dette gøres ved hjælp af positionskodning. Forfatterne af papiret brugte følgende funktioner til at modellere et ords position.
Vi vil forsøge at forklare positionel kodning.
Her henviser "pos" til positionen af "ordet" i sekvensen. P0 refererer til positionsindlejringen af det første ord; "d" betyder størrelsen af ordet/token-indlejringen. I dette eksempel er d=5. Endelig refererer "i" til hver af de 5 individuelle dimensioner af indlejringen (dvs. 0, 1,2,3,4)
hvis "i" varierer i ligningen ovenfor, vil du få en masse kurver med varierende frekvenser. Aflæsning af positionsindlejringsværdier mod forskellige frekvenser, hvilket giver forskellige værdier ved forskellige indlejringsdimensioner for P0 og P4.
I denne forespørgsel, Q repræsenterer et vektorord, den nøgler K er alle andre ord i sætningen, og værdi V repræsenterer ordets vektor.
Formålet med opmærksomhed er at beregne vigtigheden af nøgleudtrykket sammenlignet med søgeudtrykket relateret til den samme person/ting eller koncept.
I vores tilfælde er V lig med Q.
Opmærksomhedsmekanismen giver os betydningen af ordet i en sætning.
Når vi beregner det normaliserede punktprodukt mellem forespørgslen og nøglerne, får vi en tensor, der repræsenterer den relative betydning af hinandens ord for forespørgslen.
Når vi beregner prikproduktet mellem Q og KT, forsøger vi at estimere, hvordan vektorerne (dvs. ordene mellem forespørgsel og nøgler) er justeret og returnerer en vægt for hvert ord i sætningen.
Derefter normaliserer vi resultatet i kvadreret af d_k, og softmax-funktionen regulariserer vilkårene og omskalerer dem mellem 0 og 1.
Til sidst multiplicerer vi resultatet( dvs. vægte) med værdien (dvs. alle ord) for at reducere betydningen af ikke-relevante ord og kun fokusere på de vigtigste ord.
Multi-headed opmærksomhed output vektor føjes til den oprindelige positionelle input indlejring. Dette kaldes en restforbindelse/springforbindelse. Outputtet fra den resterende forbindelse går gennem lagnormalisering. Det normaliserede restoutput føres gennem et punktvist feed-forward-netværk til videre bearbejdning.
Masken er en matrix, der har samme størrelse som opmærksomhedsscorerne fyldt med værdier på 0'er og negative uendeligheder.
Årsagen til masken er, at når du først tager softmax af de maskerede score, bliver de negative uendeligheder nul, hvilket efterlader nul opmærksomhedsscore for fremtidige tokens.
Dette fortæller modellen, at den ikke skal fokusere på disse ord.
Formålet med softmax-funktionen er at få fat i reelle tal (positive og negative) og omdanne dem til positive tal, der summer til 1.
Ravikumar Naduvin har travlt med at opbygge og forstå NLP-opgaver ved hjælp af PyTorch.
Original. Genopslået med tilladelse.
- SEO Powered Content & PR Distribution. Bliv forstærket i dag.
- Platoblokkæde. Web3 Metaverse Intelligence. Viden forstærket. Adgang her.
- Kilde: https://www.kdnuggets.com/2023/01/concepts-know-getting-transformer.html?utm_source=rss&utm_medium=rss&utm_campaign=concepts-you-should-know-before-getting-into-transformer
- 1
- a
- Om
- over
- tilføjet
- mod
- justeret
- Alle
- ,
- forbundet
- opmærksomhed
- forfattere
- fordi
- før
- jf. nedenstående
- mellem
- Bygning
- Bunch
- kaldet
- tilfælde
- Luk
- sammenlignet
- Compute
- computing
- Konceptet
- begreber
- tilslutning
- Bestem
- bestemmelse
- forskellige
- størrelse
- DOT
- hver
- skøn
- eksempel
- Forklar
- fyldt
- Endelig
- Fornavn
- Fokus
- efter
- funktion
- funktioner
- yderligere
- fremtiden
- få
- få
- GitHub
- giver
- Give
- Goes
- grab
- Hvordan
- HTTPS
- betydning
- vigtigt
- in
- Indeks
- individuel
- oplysninger
- indgang
- KDnuggets
- Nøgle
- nøgler
- Kend
- lag
- LÆR
- forlader
- kig op
- maske
- Matrix
- betyder
- midler
- mekanisme
- model
- mest
- Behov
- negativ
- netværk
- net
- Neural
- neurale netværk
- NLP
- numre
- original
- Andet
- Papir
- særlig
- Bestået
- tilladelse
- plato
- Platon Data Intelligence
- PlatoData
- position
- positioner
- positiv
- forarbejdning
- Produkt
- formål
- sætte
- pytorch
- Læsning
- ægte
- grund
- tilbagevenden
- reducere
- refererer
- relaterede
- repræsentere
- repræsentation
- repræsenterer
- resultere
- resulterer
- afkast
- samme
- dømme
- Sequence
- bør
- lignende
- Størrelse
- So
- nogle
- squared
- forhandler
- bord
- Tag
- opgaver
- fortæller
- vilkår
- tænkte
- Gennem
- til
- Tokens
- transformers
- TUR
- forståelse
- us
- værdi
- Værdier
- vægt
- som
- vilje
- ord
- ord
- zephyrnet
- nul