14-bo‘lim

Halol baholash

Manba bo'yicha bo'lish, 100% dan 50% ga tushish, degenerat yechim va sun'iy ma'lumotning chegarasi.

🕑 7 daqiqa o‘qish 📄 766 so‘z 👁 2 marta ko‘rilgan
Ushbu bo‘lim mundarijasi
  1. Tajriba
  2. Natija
  3. Qo'lda yozilgan sinov
  4. Nega sun'iy ma'lumot yetmadi
  5. Bo'lish qoidasi
  6. Keyin nima qilish kerak
  7. Xulosa

13-bo'limda model test to'plamida 100% oldi, lekin yangi jumlalarda yiqildi. Bu bo'limda sababni o'lchab isbotlaymiz.

Tajriba #

To'plamga har jumlaning shablon nomini yozib qo'yamiz, keyin ikki xil bo'lishni solishtiramiz:

UsulQanday bo'linadiTest nimani sinaydi
1. TasodifiyJumlalar aralashtiriladiKo'rilgan shablonning yangi namunasi
2. Shablon bo'yicha8 shablon o'quvga, 4 tasi testgaButunlay yangi tuzilish
Python
test_shab = {"C1", "C2", "F1", "F2"}
oq = [d for d in data if d["shablon"] not in test_shab]
te = [d for d in data if d["shablon"] in test_shab]

Ikkala holatda ham bir xil model, bir xil sozlamalar, bir xil urug'.

Natija #

Natija
=== USUL 1: tasodifiy bo'lish (shablonlar aralashadi) ===
  tasodifiy bo'lish                  test aniqligi: 100.00%

=== USUL 2: shablon bo'yicha bo'lish (test shablonlari ko'rilmagan) ===
  o'quv: 397 (8 shablon) | test: 298 (4 shablon - ko'rilmagan)
  shablon bo'yicha bo'lish           test aniqligi: 50.34%

100.00% va 50.34%.

Ikkinchi son tasodifiy taxmin darajasi (50%). Ya'ni to'g'ri bo'lganda model hech nima o'rganmagani ma'lum bo'ldi.

Bir xil model, bir xil ma'lumot - faqat bo'lish usuli boshqa 100% 50% 0 tasodif 100.00% Tasodifiy bo'lish shablonlar ikkala to'plamda aldamchi natija 50.34% Shablon bo'yicha test shablonlari ko'rilmagan haqiqiy natija
Bo'lish usulini o'zgartirish natijani 100% dan tasodif darajasiga tushirdi
Baholash usuli natijadan muhimroq

Hech narsa o'zgarmadi - model ham, ma'lumot ham, sozlamalar ham o'sha. Faqat bo'lish chegarasi ko'chdi.

Agar biz birinchi o'lchov bilan to'xtaganimizda, hisobotga «100% aniqlik» deb yozardik va model ishlab chiqarishga chiqardi. U yerda esa u darhol yiqilardi.

Modelingiz haqida bilgan hamma narsangiz - baholash usulingiz qanchalik halol bo'lsa, shunchalik haqiqatga yaqin.

Qo'lda yozilgan sinov #

Uchinchi o'lchov - shablondan umuman bog'liq bo'lmagan, qo'lda yozilgan 10 ta jumla:

Natija
  tasodifiy bo'lish modeli       6/10 to'g'ri
  shablon bo'yicha modeli        5/10 to'g'ri

Ikkalasi ham tasodif darajasida. Endi javoblarga qaraymiz:

Natija
    OK  Bu darslik juda zo'r!                      -> IJOBIY (97%)
    XATO Menga umuman yoqmadi.                      -> IJOBIY (86%)
    OK  Mahsulot sifatli chiqdi, tavsiya qilaman.  -> IJOBIY (100%)
    XATO Pul isrofi bo'ldi, afsus.                  -> IJOBIY (99%)
    OK  Narxi baland, ammo sifati joyida.          -> IJOBIY (100%)
    XATO Ko'rinishi chiroyli, lekin tez buzildi.    -> IJOBIY (99%)
    OK  Yetkazib berish tez bo'ldi, rahmat.        -> IJOBIY (78%)
    XATO Bir hafta kutdim, hech narsa kelmadi.      -> IJOBIY (98%)
    OK  Yomon emas, kutganimdan yaxshiroq.         -> IJOBIY (99%)
    XATO Yaxshi deb o'ylagandim, adashibman.        -> IJOBIY (100%)

Hamma javob IJOBIY. Model 5 tasini to'g'ri topgandek ko'rinadi - lekin faqat shuning uchunki ularning yarmi haqiqatan ijobiy edi.

Degenerat yechim

Bu PyTorch darsligining 18-bo'limidagi «dangasa model» ning o'zi: hamma narsani bitta sinfga tashlash.

50% muvozanatli to'plamda bu aynan 50% beradi. Model buni «o'rganmadi» - u shunchaki eng oson yechimni topdi, chunki ma'lumot unga boshqa hech narsa o'rgatmadi.

Alomat: aniqlik sinf ulushiga teng va ishonch hamma joyda yuqori.

Nega sun'iy ma'lumot yetmadi #

Bizning to'plam 12 ta shablondan 695 ta jumla yasadi. Ko'rinishdan xilma-xil, aslida esa juda tor:

Nima borNima yo'q
12 ta jumla tuzilishiOdamlar yozadigan cheksiz variantlar
8 ta ijobiy, 8 ta salbiy sifatKinoya, shevalar, qisqartmalar
Toza yozuvXato yozilgan so'zlar, emoji, aralash til
Bitta sohaTurli mavzular

Model 8 shablonni o'rgandi, 4 tasini esa hech qachon ko'rmadi - va ularni tushunolmadi.

Sun'iy ma'lumot haqiqiy ma'lumot o'rnini bosmaydi

Sun'iy to'plam quvurni sinash uchun juda foydali: kod ishlayaptimi, shakl to'g'rimi, o'qitish yurayaptimi.

Lekin model undan til haqida hech nima o'rganmaydi. U shablonni o'rganadi - chunki o'rganadigan boshqa narsa yo'q.

Haqiqiy natija uchun haqiqiy matn kerak: to'plangan sharhlar, yorliq qo'yilgan hujjatlar, foydalanuvchi xabarlari. Kamida bir necha ming namuna, va ular turli manbalardan bo'lishi kerak.

Bo'lish qoidasi #

Ma'lumot turiBo'lish chegarasi
Shablondan yasalganShablon bo'yicha
Foydalanuvchi sharhlariFoydalanuvchi bo'yicha
Maqoladan olingan jumlalarMaqola bo'yicha
Vaqtga bog'liq (narx, ob-havo)Sana bo'yicha - kelajak testga
Bemor yozuvlariBemor bo'yicha

Qoida bitta: bir manbadan chiqqan namunalar ikkala to'plamga tushmasin.

Keyin nima qilish kerak #

Kayfiyat tahlili uchun yechim bitta: haqiqiy, yorliqlangan ma'lumot to'plash. Qisqa yo'l yo'q.

Lekin bu barcha masalalarga tegishli emas. Ba'zi masalalar - masalan qidiruv va o'xshashlik - tayyor modelning ma'no vektorlari bilan o'qitishsiz yechiladi. Keyingi bo'limda shu vektorlarni o'rganamiz va ular nimani yecha olishini, nimani yecholmasligini o'lchab ko'ramiz.

Fine-tuning qachon to'g'ri tanlov
  • Sizda kamida bir necha ming haqiqiy, yorliqlangan namuna bor.
  • Ular turli manbalardan yig'ilgan.
  • Masala tor va aniq (masalan, tibbiy hujjatlarni turkumlash).
  • Sizda baholash uchun alohida, ishonchli to'plam bor.

Shartlarning biri bajarilmasa - avval embedding yondashuvini sinang.

Amaliy topshiriq
  1. To'plamingizdagi har namunaga manba belgisini qo'shing.
  2. Tasodifiy bo'lish bilan model o'qitib, aniqlikni yozing.
  3. Manba bo'yicha bo'lib, xuddi shu modelni qayta o'qiting.
  4. Ikki natijani solishtirib, farqni izohlang.
  5. Qo'lda 10 ta yangi jumla yozib, modelni sinang.
  6. Model hamma narsani bitta sinfga tashlayaptimi - tekshiring.
  7. Degenerat yechimning ikkita alomatini ayting.
  8. To'plamingizda nechta turli tuzilish borligini sanang.
  9. O'z masalangiz uchun to'g'ri bo'lish chegarasini tanlang va asoslang.
  10. Sun'iy ma'lumot qaysi maqsadda foydali ekanini yozing.

Xulosa #

  • Bir xil model va ma'lumotda bo'lish usuli natijani 100% dan 50.34% ga tushirdi.
  • Ikkinchi son tasodif darajasi - demak model umumlashtira oladigan hech nima o'rganmagan.
  • Qo'lda yozilgan 10 ta jumlada model hammasini «ijobiy» dedi.
  • Bu degenerat yechim: eng oson javobni tanlash.
  • Alomati - aniqlik sinf ulushiga teng, ishonch esa hamma joyda yuqori.
  • Sabab: 695 ta jumla atigi 12 ta shablondan yasalgan edi.
  • Sun'iy ma'lumot quvurni sinash uchun yaxshi, til o'rgatish uchun emas.
  • Bo'lish chegarasi namuna bo'yicha emas, manba bo'yicha o'tkaziladi.
  • Foydalanuvchi, maqola, sana yoki bemor - masalaga qarab tanlanadi.
  • Ma'lumot kam bo'lsa, fine-tuning o'rniga tayyor ma'no vektorlarini sinang.

Keyingi bo'limda o'qitishsiz ishlaydigan yondashuvga - embedding vektorlariga o'tamiz.

Xatolik topdingizmi?

Imlo xatosi, ishlamaydigan kod yoki noto‘g‘ri ma‘lumotni ko‘rsangiz - bizga xabar bering. Har bir xabar administrator tomonidan ko‘rib chiqiladi.