Buckets:
Quiz la final de capitol [[quiz-la-final-de-capitol]]
1. Care este ordinea pipeline-ului de modelare a limbajului?
<Question choices={[ { text: "Primul, modelul, care gestionează textul și returnează predicții brute. Apoi, tokenizatorul interpretează aceste predicții și le convertește înapoi în text atunci când este necesar.", explain: "Modelul nu poate înțelege textul! Tokenizatorul trebuie mai întâi să tokenizeze textul și să îl convertească în ID-uri, astfel încât să poată fi înțeles de model." }, { text: "Primul este tokenizatorul, care gestionează textul și returnează ID-uri. Modelul gestionează aceste ID-uri și generează o predicție, care poate fi un text.", explain: "Predicția modelului nu poate fi transformată imediat în text. Trebuie utilizat tokenizatorul pentru a converti predicția înapoi în text!" }, { text: "Tokenizatorul gestionează textul și returnează ID-uri. Modelul gestionează aceste ID-uri și generează o predicție. Tokenizatorul poate fi apoi utilizat din nou pentru a converti aceste predicții înapoi în text.", explain: "Corect! Tokenizatorul poate fi utilizat atât pentru tokenizare, cât și pentru de-tokenizare.", correct: true } ]} />
2. Câte dimensiuni are tensorul generat de modelul Transformer și care sunt acestea?
<Question choices={[ { text: "2: Lungimea secvenței și mărimea lotului", explain: "Fals! Tensor-ul generat de model are a treia dimensiune: mărimea ascunsă." }, { text: "2: Lungimea secvenței și mărimea ascunsă", explain: "Fals! Toate modelele Transformer gestionează loturi, chiar și cu o singură secvență; aceasta ar fi o dimensiune a lotului de 1!" }, { text: "3: Lungimea secvenței, dimensiunea lotului și dimensiunea ascunsă", explain: "Corect!", correct: true } ]} />
3. Care dintre următoarele este un exemplu de tokenizare a cuvintelor secundare?
<Question choices={[ { text: "WordPiece", explain: "Da, acesta este un exemplu de tokenizare a cuvintelor secundare!", correct: true }, { text: "Tokenizare bazată pe caractere", explain: "Tokenizarea bazată pe caractere nu este un tip de tokenizare a cuvintelor secundare." }, { text: "Separarea pe baza spațiului și a punctuației", explain: "Corect, aceasta este o schemă de tokenizare bazată pe cuvinte!" }, { text: "BPE", explain: "Da, acesta este un exemplu de tokenizare a cuvintelor secundare!", correct: true }, { text: "Unigram", explain: "Da, acesta este un exemplu de tokenizare a cuvintelor secundare!", correct: true }, { text: "Nimic din cele de mai sus", explain: "Incorect!" } ]} />
4. Ce este un model head?
<Question choices={[ { text: "O componentă a rețelei Transformer de bază care redirecționează tensorii către straturile lor corecte", explain: "Incorect! Nu există o astfel de componentă." }, { text: "Cunoscut și sub denumirea de mecanism de auto-atenție, acesta adaptează reprezentarea unui token în funcție de celelalte token-uri din secvență", explain: "Incorect! Layerul de auto-atenție conține „heads” de atenție, dar nu acestea sunt adaptation heads." }, { text: "O componentă suplimentară, alcătuită de obicei din unul sau mai multe straturi, pentru a converti predicțiile transformatorului într-o sarcină specifică de ieșire", explain: "Corect. Adaptation heads (sau simplu heads) apar în diverse forme: language modeling heads, question answering heads, sequence classification heads...", correct: true } ]} />
{#if fw === 'pt'}
5. Ce este un AutoModel?
<Question
choices={[
{
text: "Un model care se antrenează automat pe baza datelor dumneavoastră",
explain: "Incorect. Poate îl confundați cu produsul nostru AutoTrain?"
},
{
text: "Un obiect care returnează arhitectura corespunzătoare bazată pe checkpoint.",
explain: "Exact: AutoModel are nevoie doar să știe checkpoint-ul din care să se inițializeze pentru a returna arhitectura corectă.",
correct: true
},
{
text: "Un model care detectează automat limba utilizată pentru intrările sale pentru a încărca ponderile corecte",
explain: "Incorect; deși unele checkpoint-uri și modele pot gestiona mai multe limbi, nu există instrumente integrate pentru selectarea automată a checkpoint-ului în funcție de limbă. Ar trebui să consultați Model Hub pentru a găsi cel mai bun checkpoint pentru sarcina dumneavoastră!"
}
]}
/>
{:else}
5. Ce este un TFAutoModel?
<Question
choices={[
{
text: "Un model care se antrenează automat pe baza datelor dumneavoastră",
explain: "Incorect. Poate îl confundați cu produsul nostru AutoTrain?"
},
{
text: "Un obiect care returnează arhitectura corespunzătoare bazată pe checkpoint",
explain: "Exact: TFAutoModel are nevoie doar să știe checkpoint-ul din care să se inițializeze pentru a returna arhitectura corectă.",
correct: true
},
{
text: "Un model care detectează automat limba utilizată pentru intrările sale pentru a încărca ponderile corecte",
explain: "Incorect; deși unele checkpoint-uri și modele pot gestiona mai multe limbi, nu există instrumente integrate pentru selectarea automată a checkpoint-ului în funcție de limbă. Ar trebui să consultați Model Hub pentru a găsi cel mai bun checkpoint pentru sarcina dumneavoastră!"
}
]}
/>
{/if}
6. Care sunt tehnicile de care trebuie să țineți cont atunci când grupați secvențe de diferite lungimi?
<Question choices={[ { text: "Trunchierea", explain: "Da, trunchierea este o modalitate corectă de a uniformiza secvențele astfel încât acestea să se încadreze într-o formă dreptunghiulară. Este totuși singura modalitate?", correct: true }, { text: "Returning tensors", explain: "Deși celelalte tehnici vă permit să returnați tensori dreptunghiulari, doar a returna tensori nu ajută când combinați secvențele într-un lot." }, { text: "Padding", explain: "Da, padding-ul este o modalitate corectă de a egaliza secvențele, astfel încât să se potrivească într-o formă dreptunghiulară. Este, însă, singura?", correct: true }, { text: "Attention masking", explain: "Absolut! Măștile de atenție sunt extrem de importante atunci când gestionați secvențe de lungimi diferite. Totuși, nu este singura tehnică de care trebuie să țineți cont.", correct: true } ]} />
7. Care este scopul aplicării unei funcții SoftMax asupra logit-urilor produse de un model de clasificare a secvențelor?
<Question choices={[ { text: "Le atenuează logiturile pentru a fi mai de încredere.", explain: "Nu, funcția SoftMax nu afectează fiabilitatea rezultatelor." }, { text: "Aplică o limită inferioară și superioară astfel încât valorile să fie inteligibile.", explain: "Corect! Valorile rezultate sunt cuprinse între 0 și 1. Totuși, nu este singurul motiv pentru care folosim o funcție SoftMax.", correct: true }, { text: "Suma totală a ieșirii devine 1, ducând la o interpretare probabilistică posibilă.", explain: "Corect! Totuși, nu este singurul motiv pentru care folosim o funcție SoftMax.", correct: true } ]} />
8. În jurul cărei metode se concentrează cea mai mare parte a API-ului tokenizer?
<Question
choices={[
{
text: "encode, deoarece poate codifica textul în ID-uri și ID-urile în predicții",
explain: "Greșit! Deși metoda encode există pe tokenizers, ea nu există pe modele."
},
{
text: "Apelarea directă a obiectului tokenizer.",
explain: "Exact! Metoda call a tokenizatorului este foarte puternică și poate gestiona aproape orice. Este și metoda folosită pentru a obține predicții de la un model.",
correct: true
},
{
text: "pad",
explain: "Greșit! Padding-ul este foarte util, dar este doar o parte a API-ului tokenizer."
},
{
text: "tokenize",
explain: "Metoda tokenize este, fără îndoială, una dintre cele mai utile, dar nu reprezintă nucleul API-ului tokenizer."
}
]}
/>
9. Ce conține variabila result în acest exemplu de cod?
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
result = tokenizer.tokenize("Hello!")
<Question
choices={[
{
text: "O listă de șiruri de caractere, fiecare șir fiind un token",
explain: "Desigur! Convertiți aceste șiruri în ID-uri și transmiteți-le către un model!",
correct: true
},
{
text: "O listă de ID-uri",
explain: "Incorect; pentru asta folosim metoda call sau convert_tokens_to_ids!"
},
{
text: "Un șir care conține toate token-urile",
explain: "Nu ar fi optim, deoarece scopul este de a separa șirul inițial în mai multe token-uri."
}
]}
/>
{#if fw === 'pt'}
10. Este ceva greșit în următorul cod?
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
model = AutoModel.from_pretrained("gpt2")
encoded = tokenizer("Hey!", return_tensors="pt")
result = model(**encoded)
<Question choices={[ { text: "Nu, pare corect.", explain: "Din păcate, asocierea unui model cu un tokenizator care a fost antrenat cu un alt checkpoint rareori este o idee bună. Modelul nu a fost antrenat să interpreteze ieșirea acestui tokenizator, așa că ieșirea modelului (dacă va rula chiar!) nu va avea sens." }, { text: "Tokenizerul și modelul trebuie să provină întotdeauna din același checkpoint.", explain: "Corect!", correct: true }, { text: "Este o bună practică să folosiți trunchierea și padding-ul cu tokenizatorul, întrucât fiecare intrare este un lot.", explain: "Este adevărat că orice intrare de model are nevoie să fie sub formă de lot. Totuși, trunchierea sau padding-ul acestei secvențe nu ar avea neapărat sens deoarece este singura intrare, iar aceste tehnici se folosesc pentru a trata o listă de propoziții." } ]} />
{:else}
10. Este ceva greșit în următorul cod?
from transformers import AutoTokenizer, TFAutoModel
tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
model = TFAutoModel.from_pretrained("gpt2")
encoded = tokenizer("Hey!", return_tensors="pt")
result = model(**encoded)
<Question choices={[ { text: "Nu, pare corect.", explain: "Din păcate, asocierea unui model cu un tokenizator care a fost antrenat cu un alt checkpoint rareori este o idee bună. Modelul nu a fost antrenat să interpreteze ieșirea acestui tokenizator, așa că ieșirea modelului (dacă va rula chiar!) nu va avea sens." }, { text: "Tokenizerul și modelul trebuie să provină întotdeauna din același checkpoint.", explain: "Corect!", correct: true }, { text: "Este o bună practică să folosiți trunchierea și padding-ul cu tokenizatorul, întrucât fiecare intrare este un lot.", explain: "Este adevărat că orice intrare de model trebuie să fie sub formă de batch. Totuși, trunchierea sau padding-ul acestei secvențe nu ar avea neapărat sens deoarece este singura intrare, iar aceste tehnici se folosesc pentru a grupa o listă de propoziții într-un batch." } ]} />
{/if}
Xet Storage Details
- Size:
- 12 kB
- Xet hash:
- c328fd00759cc11e0740d009db4c6be497bf5959eed6e06615fc6d72758ba318
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.