Praktik terbaik melatih model spaCy

NLP Lanjutan dengan spaCy

Ines Montani

spaCy core developer

Masalah 1: Model bisa “melupakan” hal

  • Model yang ada bisa overfit pada data baru
    • mis.: jika hanya dilatih dengan WEBSITE, model bisa “melupakan” PERSON
  • Juga dikenal sebagai masalah “catastrophic forgetting”
NLP Lanjutan dengan spaCy

Solusi 1: Campurkan prediksi benar sebelumnya

  • Contoh: saat melatih WEBSITE, sertakan juga contoh PERSON
  • Jalankan model spaCy yang ada pada data dan ekstrak entitas relevan lain

BAD:

TRAINING_DATA = [
    ('Reddit is a website', {'entities': [(0, 6, 'WEBSITE')]})
]

GOOD:

TRAINING_DATA = [
    ('Reddit is a website', {'entities': [(0, 6, 'WEBSITE')]}),
    ('Obama is a person', {'entities': [(0, 5, 'PERSON')]})
]
NLP Lanjutan dengan spaCy

Masalah 2: Model tidak bisa mempelajari semuanya

  • Model spaCy membuat prediksi berdasarkan konteks lokal
  • Model bisa kesulitan belajar jika keputusan sulit dari konteks
  • Skema label harus konsisten dan tidak terlalu spesifik
    • Contoh: CLOTHING lebih baik daripada ADULT_CLOTHING dan CHILDRENS_CLOTHING
NLP Lanjutan dengan spaCy

Solusi 2: Rancang skema label dengan cermat

  • Pilih kategori yang tercermin dalam konteks lokal
  • Lebih umum lebih baik daripada terlalu spesifik
  • Gunakan aturan untuk memetakan dari label umum ke kategori spesifik

BAD:

LABELS = ['ADULT_SHOES', 'CHILDRENS_SHOES', 'BANDS_I_LIKE']

GOOD:

LABELS = ['CLOTHING', 'BAND']
NLP Lanjutan dengan spaCy

Ayo berlatih!

NLP Lanjutan dengan spaCy

Preparing Video For Download...