เมตริกสำหรับงาน NLP: Perplexity และ BLEU

Python เบื้องต้นสำหรับ LLMs

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

งานและเมตริกของ LLM

 

เมตริกสำหรับการประเมินงาน NLP

Python เบื้องต้นสำหรับ LLMs

Perplexity

  • ความสามารถของโมเดลในการทำนายคำถัดไปได้อย่างแม่นยำและมั่นใจ
  • Perplexity ต่ำ = ความมั่นใจสูง
input_text = "Latest research findings in Antarctica show"

generated_text = "Latest research findings in Antarctica show that the ice sheet 
is melting faster than previously thought."


# Encode the prompt, generate text and decode it input_text_ids = tokenizer.encode(input_text, return_tensors="pt") output = model.generate(input_text_ids, max_length=20) generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
Python เบื้องต้นสำหรับ LLMs

ผลลัพธ์ Perplexity

perplexity = evaluate.load("perplexity", module_type="metric")
results = perplexity.compute(predictions=generated_text, model_id="gpt2")

print(results)
{'perplexities': [245.63299560546875, 520.3106079101562, ....], 
 'mean_perplexity': 2867.7229790460497}
print(results["mean_perplexity"])
2867.7229790460497
  • เปรียบเทียบกับผลลัพธ์ baseline
Python เบื้องต้นสำหรับ LLMs

BLEU

  • วัดคุณภาพการแปลเทียบกับข้อความอ้างอิงของมนุษย์

  • Predictions: ผลลัพธ์จาก LLM

  • References: ข้อความอ้างอิงของมนุษย์
bleu = evaluate.load("bleu")


input_text = "Latest research findings in Antarctica show" references = [["Latest research findings in Antarctica show significant ice loss due to climate change.", "Latest research findings in Antarctica show that the ice sheet is melting faster than previously thought."]] generated_text = "Latest research findings in Antarctica show that the ice sheet is melting faster than previously thought."
Python เบื้องต้นสำหรับ LLMs

ผลลัพธ์ BLEU

results = bleu.compute(predictions=[generated_text], references=references)
print(results)
{'bleu': 1.0, 
 'precisions': [1.0, 1.0, 1.0, 1.0], 
 'brevity_penalty': 1.0, 
 'length_ratio': 1.2142857142857142, 
 'translation_length': 17, 
 'reference_length': 14}
  • คะแนน 0-1: ใกล้ 1 = ความคล้ายคลึงสูง
Python เบื้องต้นสำหรับ LLMs

มาฝึกกันเถอะ!

Python เบื้องต้นสำหรับ LLMs

Preparing Video For Download...