Ruka hadi maudhui makuu
Mafunzo ya AI

Kuelewa na Kutumia Usanifu wa Transformer Wenye Mizunguko Inayojirudia

Mafunzo haya yanaeleza usanifu wa Transformer wenye mizunguko inayojirudia, hali yake ya kujirudia na kumbukumbu za umakini, pamoja na mfumo wake wa utekelezaji uliounganishwa kwa mafunzo, uundaji na marudio ya ujifunzaji wa kuimarisha. Pia yanaonyesha jinsi ya kuchunguza hazina ya utafiti na kutafsiri majaribio ya awali ya ufuatiliaji wa hali.

Kuelewa na Kutumia Usanifu wa Transformer Wenye Mizunguko Inayojirudia

Transformer Inayojirudia kwa Mizunguko ni Nini?

Transformer Inayojirudia kwa Mizunguko (RLT) ni usanifu wa utafiti ulioundwa kubeba ukokotoaji fiche katika kila tokeni ya mfuatano. Kisimbaji cha kisababishi huunda kumbukumbu ya kimataifa ya funguo–thamani, huku kisimbuaji kinachojirudia kikichanganya kumbukumbu hiyo na umakini wa dirisha linaloteleza pamoja na mrejesho kutoka hali yake fiche ya mwisho iliyotangulia.

Hii huunda njia ya ukokotoaji wa muda inayoweza kupanuliwa. Ikiwa kisimbuaji kina tabaka L_D, kuchakata tokeni t huzalisha njia inayojirudia kupitia vizuizi tL_D vya kisimbuaji, ingawa modeli hutekeleza idadi isiyobadilika ya vizuizi kwa kila tokeni.

Katika mradi huu, “kina cha muda kisicho na kikomo” kinamaanisha kwamba njia ya ukokotoaji inaweza kukua kulingana na urefu wa mfuatano. Haimaanishi kwamba modeli hufanya ukokotoaji usio na kikomo ndani ya tokeni moja.

Muhtasari wa usanifu wa Transformer inayojirudia kwa mizunguko

Kanuni Muhimu za Usanifu

1. Hoja fiche katika muda

Matokeo ya mwisho ya kisimbuaji kwa tokeni moja huwa ingizo la tokeni inayofuata. Kwa hiyo, modeli inaweza kusambaza hali fiche katika himizo na jibu linalozalishwa, badala ya kuchukulia mpaka wa himizo–jibu kama sehemu ya kuanzia upya.

2. Usanifu wa pamoja wa modeli na maunzi

Usanifu unaopendekezwa unaonyesha fursa kadhaa za uboreshaji:

  • Ukokotoaji sambamba wa kisimbaji kisababishi juu ya tokeni zinazojulikana
  • Kuweka katika mafungu mfuatano huru
  • Utumiaji tena wa kumbukumbu inayotokana na kisimbaji
  • Kuhifadhi vituo vya uamilisho kuzunguka utekelezaji wa kisimbuaji kinachojirudia

Hizi ni fursa za usanifu na malengo ya utafiti. Ripoti haidai kuwa kuna uongezaji kasi uliopimwa wa maunzi kwa kiwango kikubwa.

3. Semantiki zinazoshirikiwa kwa mafunzo na ujifunzaji wa kuimarisha

Mafunzo ya awali, urekebishaji mzuri unaosimamiwa, usampulishaji, na marudio ya ujifunzaji wa kuimarisha kwa sera ya sasa yote hutumia mpito uleule wa hali kamili. Hali hii inajumuisha kujirudia kwa himizo pamoja na akiba za funguo–thamani za umakini wa dirisha linaloteleza za kisimbuaji.

Jinsi Usanifu Unavyofanya Kazi

Kwa tokeni x_t, kisimbaji kisababishi huzalisha uwakilishi e_t na kumbukumbu ya kimataifa inayotokana na kisimbaji M_≤t. Hali ya kisimbuaji ina matokeo yanayojirudia pamoja na akiba ya umakini wa dirisha linaloteleza kwa kila tabaka:

H_t = (s_t, C_t^D)
H_0 = (s_*, empty)

Mpito wa hali ni:

(s_t, C_t^D) = D_phi(
  Merge(e_t, s_(t-1)),
  M_≤t,
  C_(t-1)^D,
  t
)

Usambazaji wa tokeni inayofuata hukokotolewa kutoka kwa matokeo ya mwisho yanayojirudia:

p(x_(t+1) | x_(1:t)) = softmax(W_o RMSNorm_o(s_t))

Aina tatu za muktadha

  • Muktadha wa kimataifa wa kisimbaji: Umakini mtambuka wa kisimbuaji husoma kumbukumbu ya kisimbaji kupitia nafasi ya sasa pekee, hivyo kudumisha tabia kisababishi.
  • Kumbukumbu ya ndani ya kisimbuaji: Umakini wa dirisha linaloteleza husoma maingizo ya hivi karibuni ya funguo–thamani ya kisimbuaji pamoja na ingizo la tokeni ya sasa. Dirisha la ukubwa W linajumuisha tokeni ya sasa, na kuacha angalau W - 1 maingizo ya kihistoria kwa sasisho linalofuata.
  • Mrejesho wa muda: Matokeo ya mwisho ya awali ya kisimbuaji huunganishwa na uwakilishi wa sasa wa kisimbaji.

Matokeo yanayojirudia wala akiba ya kisimbuaji hazianzi upya mfuatano unapovuka kutoka himizoni kwenda kwenye jibu.

Usanidi halisi wa modeli

Ripoti inaeleza usanidi wenye tabaka 48 za kisimbaji na tabaka 48 za kisimbuaji. Uzani unaooana wa umakini na wa ulishaji-mbele hushirikiwa kati ya hatua. Vizuizi vya kisimbuaji hufanya pia umakini mtambuka juu ya kumbukumbu ya kisimbaji, kwa hiyo idadi sawa ya tabaka haimaanishi idadi sawa ya shughuli za nukta zinazoelea.

Usakinishaji na Usanidi wa Hazina

README inawasilisha ripoti ya usanifu badala ya kifurushi cha programu kilichoandikwa kwa kina. Haitoi mahitaji ya utegemezi, amri ya usakinishaji, hati ya umma ya mafunzo, wala API inayoweza kuendeshwa. Bado unaweza kunakili hazina ili kusoma karatasi na nyenzo za ziada:

git clone https://github.com/yifanzhang-pro/recurrent-looped-tranformer.git
cd recurrent-looped-tranformer

Anza na Recurrent_Looped_Transformer.pdf iliyojumuishwa. Unaweza pia kutembelea tovuti ya mradi na kupitia maelezo kuhusu kutolingana kwa kernel ya prefill–decode.

Kwa kuwa README haiandiki utekelezaji unaoweza kuendeshwa, maelekezo ya kusakinisha kifurushi au msimbo wa modeli ulio tayari kuendeshwa hayapaswi kukisiwa kutokana na maelezo ya hazina.

Matumizi ya Msingi: Kufuatilia Muundo wa Utekelezaji wa RLT

Njia yenye manufaa zaidi ya kutumia ripoti hii ni kuichukulia kama mwongozo wa utekelezaji. Msimbo bandia wa kimawazo unaofuata unatoa muhtasari wa mpito mmoja wa hali; si API iliyotolewa na hazina:

state = (initial_recurrent_state, empty_decoder_cache)

for each token x_t:
    e_t = causal_encoder_representation(x_t)
    memory = encoder_memory_through_position(t)

    merged = Merge(e_t, state.recurrent_output)
    state = recurrent_decoder(
        merged,
        memory,
        state.decoder_cache,
        position=t
    )

    next_token_distribution = output_head(state.recurrent_output)

Ujazaji wa awali wa himizo

  1. Endesha kisimbaji kisababishi juu ya tokeni za himizo zinazojulikana kama fungu.
  2. Rudia kupitia kila tokeni ya himizo kwa kutumia kisimbuaji.
  3. Unda akiba ya funguo–thamani ya dirisha linaloteleza ya kisimbuaji wakati wa marudio haya.
  4. Hifadhi matokeo ya mwisho yanayojirudia na akiba kwa ajili ya uzalishaji.

Kuendesha kisimbaji pekee wakati wa kujaza awali kidokezo hakungezalisha tena hali kamili ya RLT iliyoelezwa katika ripoti.

Uzalishaji wa kujirudia kiotomatiki

  1. Tumia hali iliyotangulia kukokotoa usambazaji wa tokeni inayofuata.
  2. Chagua tokeni kutoka kwenye usambazaji huo.
  3. Simbua tokeni iliyochaguliwa hatua kwa hatua.
  4. Pitisha tokeni hiyo kupitia kisimbuaji cha kujirudia mara moja pekee.
  5. Sasisha pato la kujirudia na akiba ya dirisha linaloteleza.

Mpangilio huu huzuia tokeni iliyozalishwa kutumiwa mara mbili na huhifadhi semantiki zilezile za mabadiliko ya hali zinazotumika wakati wa mafunzo.

Ujifunzaji wa awali na urekebishaji mzuri unaosimamiwa

Wakati wa ujifunzaji wa awali, kisimbaji huendesha kwa mtiririko wa kisababishi na kisimbuaji cha kujirudia hutumia uenezaji kamili wa gradienti kupitia muda. Kila lengo halali la tokeni inayofuata husimamiwa.

Wakati wa urekebishaji mzuri unaosimamiwa, hali husasishwa kwenye tokeni zote za muktadha, lakini hasara hutumika tu kwenye malengo ya msaidizi. Kidokezo bado hushiriki katika uundaji wa hali ya kujirudia hata tokeni zake zisiposimamiwa.

Uchezaji wa Tena wa Ujifunzaji wa Kuimarisha wa Sera ya Sasa

Uchezaji wa tena wa sera ya sasa lazima ujenge upya historia kamili ya mfuatano kwa kutumia uzani wa sasa wa modeli. Hii inajumuisha mapato ya kujirudia, kumbukumbu ya kisimbaji, na akiba zote za dirisha linaloteleza za visimbuaji.

  1. Jenga upya uwakilishi wa kisimbaji na kumbukumbu kwa kutumia vigezo vya sasa.
  2. Cheza tena kila tokeni iliyotangulia ili kujenga upya hali ya kujirudia na akiba za kisimbuaji.
  3. Tathmini uwezekano wa kitendo kabla ya kutumia tokeni ya kitendo hicho.
  4. Tumia kitendo hicho mara moja ili kusonga hadi hali inayofuata.

Akiba zinazotegemea vigezo huwa za zamani baada ya sasisho la uzani, kwa hiyo uchezaji sahihi wa tena unahitaji zijengwe upya. Gradienti kamili hupitia mapato ya kujirudia, maingizo ya funguo–thamani ya kisimbuaji, na kumbukumbu ya kisimbaji. Kutenganisha sehemu yoyote kati ya hizi ni ukadiriaji wa gradienti.

Uwezekano wa kumbukumbu wa tabia lazima ulingane na usambazaji uliotumika hasa kuchagua sampuli. Usampulishaji sahihi wa umuhimu pia huhitaji kufunikwa kwa usaidizi. Semantiki za pamoja za utekelezaji hupunguza kutolingana kwa mipaka ya kidokezo kimuundo, lakini hazihakikishi usawa wa nambari kati ya kerneli au lengo lisilo na upendeleo la sera isiyo ya sasa.

Matokeo ya Awali ya Sintetiki

README inaripoti majaribio huru ya uthibitisho wa dhana ya ufuatiliaji wa hali, yakitumia utekelezaji mdogo wenye takriban vigezo 79,000 na mbegu tatu za nasibu. Miundo ilifunzwa kwenye mfuatano wa oparesheni 32 na kutathminiwa kwenye hadi oparesheni 128, ikiwa na programu 2,048 za majaribio kwa kila kazi na urefu.

Matokeo ya ufuatiliaji wa hali ya RLT kwenye mfuatano mrefu wa tathmini

Kazi ya usawa

  • Kwenye oparesheni 32, RLT ilifikia takriban usahihi wa 100% wa hali ya mwisho.
  • Kwenye oparesheni 64, ilifikia takriban 82%.
  • Kwenye oparesheni 128, ilifikia 60.8%.
  • Usahihi wa kubahatisha kwa usawa ni 50%.

Kazi ya mabadiliko ya hali tano

  • Kwenye oparesheni 32, RLT ilifikia takriban usahihi wa 100% wa hali ya mwisho.
  • Kwenye oparesheni 64, ilifikia takriban 49%.
  • Kwenye oparesheni 128, ilifikia 20.7%.
  • Usahihi wa kubahatisha kwa kazi hii ni 20%.

Matokeo yanaonyesha kuwa RLT ililingana na kazi zote mbili katika urefu wa mafunzo, lakini usahihi wake ulipungua kwenye mfuatano mrefu zaidi. Thamani zilizoonyeshwa kuwa za kukadiria zilisomwa kutoka kwenye mchoro wa awali, huku thamani za RLT za oparesheni 128 zikiwa zimewekewa lebo za nambari.

Bajeti za vigezo na data zililinganishwa, lakini bajeti za oparesheni za nukta zinazoelea hazikulinganishwa. Majaribio haya ni maonyesho ya sintetiki, si ushahidi wa maboresho ya kufikiri kwa kiwango kikubwa, uharakishaji wa maunzi, au upanuzi wa ujifunzaji wa kuimarisha.

Vidokezo vya Juu vya Utekelezaji

  • Chukulia hali kamili kuwa kitu kisichogawanyika: Hifadhi s_t na C_t^D. Kurejesha vekta ya kujirudia pekee hakuzalishi tena mabadiliko yaliyoandikwa.
  • Usiweke upya kwenye mipaka ya majibu: Kujirudia kwa kidokezo na akiba yake ya kisimbuaji lazima zitiririke moja kwa moja hadi kwenye uzalishaji wa jibu.
  • Fafanua dirisha kwa usahihi: Dirisha linaloteleza la ukubwa W linajumuisha tokeni ya sasa, kwa hiyo ni maingizo W - 1 tu ya kihistoria yanayobaki kupatikana kwa sasisho linalofuata.
  • Jenga upya akiba baada ya masasisho: Uchezaji wa tena wa sera ya sasa huhitaji akiba zilizozalishwa na uzani wa sasa badala ya thamani zilizohifadhiwa kutoka sera ya awali.
  • Weka mpangilio wa uchukuaji sampuli na uchezaji wa tena ukiwa sawa: Tathmini kitendo kilichozalishwa kutoka kwenye hali iliyotangulia, kisha kitumie mara moja.
  • Tenganisha gradienti sahihi na makadirio: Kutenganisha hali ya kujirudia, akiba za kisimbuaji, au kumbukumbu ya kisimbaji hubadilisha njia ya gradienti.
  • Pima ukokotoaji kando: Bajeti sawa za vigezo au data hazithibitishi FLOPs sawa, hasa kwa sababu tabaka za kisimbuaji huongeza umakini mtambuka kwenye kumbukumbu ya kisimbaji.
  • Thibitisha tabia ya nambari: Semantiki za utekelezaji wa kiwango cha juu zinazoshirikiwa haziondoi moja kwa moja tofauti kati ya kerneli za kujaza awali na za kusimbua.

Hitimisho

Recurrent Looped Transformer huunganisha kumbukumbu ya kisimbaji ya kisababishi ya kimataifa, umakini wa kisimbuaji wa dirisha linaloteleza wa eneo, na mrejesho wa kujirudia kutoka tokeni hadi tokeni. Kanuni yake kuu ya utekelezaji ni uthabiti: kila tokeni ya kidokezo na jibu lazima ishiriki katika mabadiliko yale yale ya hali kamili wakati wa ujifunzaji wa awali, urekebishaji mzuri, uzalishaji, na uchezaji wa tena wa sera ya sasa.

Majaribio ya awali yanapendekeza ujumuishaji mzuri wa urefu kwenye kazi ndogo za ufuatiliaji wa hali, lakini utendaji bado hupungua zaidi ya urefu wa mafunzo. Kwa hiyo, usanifu huu unapaswa kuonekana kama pendekezo la utafiti na uthibitisho wa dhana, badala ya mfumo uliothibitishwa wa kufikiri kwa kiwango kikubwa.

Kuelewa na Kutumia Usanifu wa Transformer Wenye Mizunguko Inayojirudia