Bird
Raised Fist0
NLPml~20 mins

T5 for text-to-text tasks in NLP - Practice Problems & Coding Challenges

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Challenge - 5 Problems
πŸŽ–οΈ
T5 Text-to-Text Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
What is the main advantage of T5's text-to-text framework?
T5 treats every problem as a text-to-text task. What is the main advantage of this approach?
AIt allows using the same model architecture and training procedure for many different NLP tasks.
BIt requires separate models for each task to improve accuracy.
CIt only works for translation tasks and not for classification.
DIt eliminates the need for any pre-training on large datasets.
Attempts:
2 left
πŸ’‘ Hint
Think about how treating all tasks as text input and output simplifies the model design.
❓ Predict Output
intermediate
2:00remaining
Output of T5 model generating summary
Given the input text: "summarize: The cat sat on the mat and looked outside." What is the most likely output of a T5 model fine-tuned for summarization?
NLP
from transformers import T5Tokenizer, T5ForConditionalGeneration

tokenizer = T5Tokenizer.from_pretrained('t5-small')
model = T5ForConditionalGeneration.from_pretrained('t5-small')

input_text = 'summarize: The cat sat on the mat and looked outside.'
input_ids = tokenizer(input_text, return_tensors='pt').input_ids

outputs = model.generate(input_ids, max_length=10)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
A"The mat was sat on by the cat."
B"The cat sat on the mat."
C"The cat sat on the mat and looked outside."
D"The cat looked outside."
Attempts:
2 left
πŸ’‘ Hint
Summarization usually shortens and keeps the main idea.
❓ Hyperparameter
advanced
2:00remaining
Choosing max_length for T5 text generation
When generating text with T5, which max_length value is best to avoid cutting off important output while keeping generation efficient?
ASet max_length to a very large number like 1000 to ensure full output.
BSet max_length to a small number like 5 to speed up generation.
CSet max_length to a reasonable length based on expected output size, e.g., 50 for summaries.
DDo not set max_length; let the model generate indefinitely.
Attempts:
2 left
πŸ’‘ Hint
Think about balancing output completeness and speed.
❓ Metrics
advanced
2:00remaining
Evaluating T5 model performance on summarization
Which metric is most appropriate to evaluate the quality of summaries generated by a T5 model?
ABLEU score - measures overlap of n-grams between generated and reference text.
BAccuracy - percentage of exact matches with reference summaries.
CMean Squared Error - difference between predicted and actual token IDs.
DPerplexity - measures how well the model predicts the next token.
Attempts:
2 left
πŸ’‘ Hint
Think about metrics that compare generated text to reference text.
πŸ”§ Debug
expert
3:00remaining
Why does T5 generate repetitive text?
You fine-tuned a T5 model for text generation, but the output repeats the same phrase multiple times. What is the most likely cause?
AThe model's max_length is too short, causing repetition.
BThe decoding strategy lacks diversity, e.g., greedy decoding without penalties.
CThe beam search size is too large, causing repeated phrases.
DThe tokenizer vocabulary is too small, causing repetition.
Attempts:
2 left
πŸ’‘ Hint
Consider how decoding methods affect output variety.

Practice

(1/5)
1. What is the main idea behind the T5 model in NLP?
easy
A. It treats all language tasks as text input and text output.
B. It uses images as input and text as output.
C. It only works for translation tasks.
D. It requires separate models for each task.

Solution

  1. Step 1: Understand T5's approach to tasks

    T5 converts every language task into a text-to-text format, meaning both input and output are text.
  2. Step 2: Compare options with this approach

    Only It treats all language tasks as text input and text output. correctly states this main idea; others describe different or incorrect approaches.
  3. Final Answer:

    It treats all language tasks as text input and text output. -> Option A
  4. Quick Check:

    T5 text-to-text = text input and text output [OK]
Hint: Remember: T5 always uses text input and output [OK]
Common Mistakes:
  • Thinking T5 uses images as input
  • Believing T5 only does translation
  • Assuming T5 needs multiple models
2. Which of the following is the correct way to tell T5 to perform a summarization task?
easy
A. Add the prefix generate image: before the input text.
B. Add the prefix translate English to French: before the input text.
C. Add the prefix classify sentiment: before the input text.
D. Add the prefix summarize: before the input text.

Solution

  1. Step 1: Identify the task prefix for summarization

    T5 uses specific prefixes to indicate tasks; for summarization, the prefix is "summarize:".
  2. Step 2: Match prefixes to tasks

    Add the prefix summarize: before the input text. correctly uses "summarize:"; others are for different tasks or invalid.
  3. Final Answer:

    Add the prefix summarize: before the input text. -> Option D
  4. Quick Check:

    Summarization prefix = summarize: [OK]
Hint: Use task name as prefix, e.g., summarize: for summaries [OK]
Common Mistakes:
  • Using wrong prefixes like translate for summarization
  • Confusing classification prefix with summarization
  • Adding unrelated prefixes like generate image
3. Given the input to T5: translate English to German: The cat is on the mat. What is the expected output?
medium
A. Die Katze liegt auf der Matte.
B. Le chat est sur le tapis.
C. The cat is on the mat.
D. El gato estΓ‘ en la alfombra.

Solution

  1. Step 1: Identify the task from the prefix

    The prefix "translate English to German:" tells T5 to translate the English sentence into German.
  2. Step 2: Match the correct German translation

    Die Katze liegt auf der Matte. is the correct German translation of "The cat is on the mat." Others are French, English, and Spanish translations.
  3. Final Answer:

    Die Katze liegt auf der Matte. -> Option A
  4. Quick Check:

    English to German translation = Die Katze liegt auf der Matte. [OK]
Hint: Match prefix language to output language translation [OK]
Common Mistakes:
  • Choosing output in wrong language
  • Ignoring the prefix and returning input
  • Confusing similar languages like French and German
4. You wrote this input for T5: summarize The quick brown fox jumps over the lazy dog. but the output is not a summary. What is the likely error?
medium
A. The input text is too short for summarization.
B. You forgot to add a colon after the prefix 'summarize'.
C. T5 cannot summarize sentences with animals.
D. You need to add 'translate:' prefix instead.

Solution

  1. Step 1: Check the prefix syntax

    T5 requires the task prefix to end with a colon, e.g., "summarize:" not "summarize".
  2. Step 2: Understand impact of missing colon

    Without the colon, T5 treats the whole input as text, not as a task instruction, so it won't summarize.
  3. Final Answer:

    You forgot to add a colon after the prefix 'summarize'. -> Option B
  4. Quick Check:

    Prefix colon missing = You forgot to add a colon after the prefix 'summarize'. [OK]
Hint: Always end task prefix with a colon ':' [OK]
Common Mistakes:
  • Ignoring colon after prefix
  • Thinking T5 can't summarize short text
  • Using wrong prefix like translate for summarization
5. You want T5 to answer questions based on a paragraph. Which input format correctly uses T5's text-to-text approach?
hard
A. What is the capital of France? Paris is the capital city of France.
B. translate English to French: What is the capital of France?
C. answer question: What is the capital of France? Context: Paris is the capital city of France.
D. summarize: Paris is the capital city of France.

Solution

  1. Step 1: Identify the task prefix for question answering

    T5 uses prefixes like "answer question:" to specify question answering tasks.
  2. Step 2: Check input format includes question and context

    answer question: What is the capital of France? Context: Paris is the capital city of France. correctly includes the question and context with the proper prefix. Others either miss the prefix or use wrong tasks.
  3. Final Answer:

    answer question: What is the capital of France? Context: Paris is the capital city of France. -> Option C
  4. Quick Check:

    QA prefix with context = answer question: What is the capital of France? Context: Paris is the capital city of France. [OK]
Hint: Use 'answer question:' prefix plus context for QA tasks [OK]
Common Mistakes:
  • Omitting task prefix for question answering
  • Using translation or summarization prefix wrongly
  • Not providing context with the question