Jadval vazifalarida pseudo-labeling nima?
sobes.tech AI
AIdan javob
Pseudo-labeling — bu yarim nazoratli o‘rganish usuli bo‘lib, u ko‘pincha jadval ma’lumotlar bilan ishlashda qo‘llaniladi. G‘oyasi shundan iboratki, belgilangan ma’lumotlar asosida o‘qitilgan modelni ishlatib, belgilamasdan olingan ma’lumotlarga belgilashlar qilish va keyin bu taxmin qilingan (pseudo-belgilashlar) belgilashlarni o‘quv to‘plamiga qo‘shish orqali o‘qitishni davom ettirish.
Boosting bilan jadval vazifalarida, bu o‘quv ma’lumotlar hajmini oshirishga yordam beradi, ayniqsa, belgilangan ma’lumotlar kam bo‘lsa. Masalan, model belgilangan ma’lumotlar asosida birinchi bosqichda o‘qitilgandan so‘ng, model belgilamasdan olingan yozuvlar uchun belgilashlar qilishadi. So‘ngra, bu yozuvlar pseudo-belgilashlar bilan o‘quv to‘plamiga qo‘shiladi va model kengaytirilgan to‘plamda yana o‘qitiladi.
Pseudo-belgilashlarning sifatini nazorat qilish muhim, masalan, model ishonchli deb hisoblagan (probabilite asosida) faqatgina taxminlarni tanlab olish, shunda o‘qitish sifatini yomonlashtirmaslik uchun.
Pseudokod misoli:
# Belgilangan ma’lumotlar bilan o‘qitish
model.fit(X_labeled, y_labeled)
# Belgilamasdan olingan ma’lumotlar uchun taxmin qilish
pseudo_labels = model.predict(X_unlabeled)
# Ishonchli taxminlarni tanlash
confident_indices = [i for i, p in enumerate(model.predict_proba(X_unlabeled)) if max(p) > threshold]
# Pseudo-belgilashlarni o‘quv to‘plamiga qo‘shish
X_extended = np.concatenate([X_labeled, X_unlabeled[confident_indices]])
y_extended = np.concatenate([y_labeled, pseudo_labels[confident_indices]])
# Modelni yana o‘qitish
model.fit(X_extended, y_extended)