Asosiy qismga o'tish

Intervyu savollari

47-bob 9 kod bloki 2327 so'z

Bu bob qanday tuzilgan

Har savol uchun uchta narsa bor: kuchsiz javob, kuchli javob va qaysi bobda o'rganilgani.

Kuchsiz javoblar — yodlangan ta'riflar. Kuchli javoblar — o'lchovga tayangan javoblar. Intervyuda farq aynan shunda ko'rinadi.

python4 qator
import pandas as pd

def savollar(royxat):
    show(pd.DataFrame(royxat))

Asoslar

python18 qator
savollar([
    {"Savol": "Overfitting nima?",
     "Kuchsiz javob": "Model train da yaxshi, test da yomon",
     "Kuchli javob": "Shu + 'uni o'quv egri chizig'i bilan aniqlayman: train va validation orasidagi farq kengaysa — overfitting, ikkisi ham past bo'lsa — underfitting'",
     "Bob": "10"},
    {"Savol": "Bias va variance farqi?",
     "Kuchsiz javob": "Bias — siljish, variance — tarqoqlik",
     "Kuchli javob": "Shu + 'bir xil modelni boshqa train bo'laklarida o'qitib, bashoratlar qanchalik farq qilishini o'lchayman'",
     "Bob": "10, 18"},
    {"Savol": "Qancha ma'lumot kerak?",
     "Kuchsiz javob": "Qanchalik ko'p bo'lsa, shunchalik yaxshi",
     "Kuchli javob": "'O'quv egri chizig'ini quraman: egri yassilansa, yangi ma'lumot foyda bermaydi — model yoki featureni o'zgartirish kerak'",
     "Bob": "10"},
    {"Savol": "Train/val/test nega uchta?",
     "Kuchsiz javob": "Shunday qabul qilingan",
     "Kuchli javob": "'Val da giperparametr tanlayman, test ga BIR MARTA qarayman. Test ga qarab qaror qilsam, u val ga aylanadi va menda halol baho qolmaydi'",
     "Bob": "5"},
])
SavolKuchsiz javobKuchli javobBob
Overfitting nima?Model train da yaxshi, test da yomonShu + 'uni o'quv egri chizig'i bilan aniqlayman: train va validation orasidagi farq kengaysa — overfitting, ikkisi ham past bo'lsa — underfitting'10
Bias va variance farqi?Bias — siljish, variance — tarqoqlikShu + 'bir xil modelni boshqa train bo'laklarida o'qitib, bashoratlar qanchalik farq qilishini o'lchayman'10, 18
Qancha ma'lumot kerak?Qanchalik ko'p bo'lsa, shunchalik yaxshi'O'quv egri chizig'ini quraman: egri yassilansa, yangi ma'lumot foyda bermaydi — model yoki featureni o'zgartirish kerak'10
Train/val/test nega uchta?Shunday qabul qilingan'Val da giperparametr tanlayman, test ga BIR MARTA qarayman. Test ga qarab qaror qilsam, u val ga aylanadi va menda halol baho qolmaydi'5

Metrikalar

python18 qator
savollar([
    {"Savol": "Accuracy qachon yaroqsiz?",
     "Kuchsiz javob": "Nomutanosib ma'lumotda",
     "Kuchli javob": "'99% salbiy bo'lsa, hammaga yo'q deydigan model 99% accuracy oladi va foydasiz. Shuning uchun avval baza accuracy ni hisoblayman — model undan oshmasa, model yo'q'",
     "Bob": "6, 7"},
    {"Savol": "Precision va recall orasida qanday tanlaysiz?",
     "Kuchsiz javob": "Vazifaga qarab",
     "Kuchli javob": "'Xato NARXIga qarab. Kasallik skriningida FN qimmat — recall. Spam filtrida FP qimmat (muhim xat yo'qoladi) — precision'",
     "Bob": "7, 8"},
    {"Savol": "ROC-AUC va PR-AUC?",
     "Kuchsiz javob": "Ikkisi ham egri chiziq ostidagi maydon",
     "Kuchli javob": "'Kuchli nomutanosiblikda ROC-AUC optimistik ko'rinadi, chunki TN soni katta. Kam uchraydigan sinf muhim bo'lsa, PR-AUC ni olaman'",
     "Bob": "8"},
    {"Savol": "Threshold 0.5 bo'lishi shartmi?",
     "Kuchsiz javob": "Ha, standart",
     "Kuchli javob": "'Yo'q. U shunchaki predict() ning standart qiymati. Men uni validation da biznes maqsadiga qarab tanlayman'",
     "Bob": "8"},
])
SavolKuchsiz javobKuchli javobBob
Accuracy qachon yaroqsiz?Nomutanosib ma'lumotda'99% salbiy bo'lsa, hammaga yo'q deydigan model 99% accuracy oladi va foydasiz. Shuning uchun avval baza accuracy ni hisoblayman — model undan oshmasa, model yo'q'6, 7
Precision va recall orasida qanday tanlaysiz?Vazifaga qarab'Xato NARXIga qarab. Kasallik skriningida FN qimmat — recall. Spam filtrida FP qimmat (muhim xat yo'qoladi) — precision'7, 8
ROC-AUC va PR-AUC?Ikkisi ham egri chiziq ostidagi maydon'Kuchli nomutanosiblikda ROC-AUC optimistik ko'rinadi, chunki TN soni katta. Kam uchraydigan sinf muhim bo'lsa, PR-AUC ni olaman'8
Threshold 0.5 bo'lishi shartmi?Ha, standart'Yo'q. U shunchaki predict() ning standart qiymati. Men uni validation da biznes maqsadiga qarab tanlayman'8

Leakage — eng ko'p so'raladigan mavzu

python14 qator
savollar([
    {"Savol": "Data leakage nima?",
     "Kuchsiz javob": "Test ma'lumoti train ga tushib qolishi",
     "Kuchli javob": "'Modelga bashorat paytida MAVJUD BO'LMAYDIGAN ma'lumot tushishi. U bir necha shaklda keladi — eng xavflisi ustun nomidan bilinmaydigani'",
     "Bob": "5"},
    {"Savol": "Leakage ning qanday turlarini bilasiz?",
     "Kuchsiz javob": "Test ni train ga qo'shib yuborish",
     "Kuchli javob": "'Scaler ni split dan oldin fit qilish; target encoding ni butun ma'lumotda hisoblash; feature selection ni Pipeline tashqarisida qilish; vaqt qatorini tasodifiy bo'lish; bitta obyektning ikki qatori train va test ga tushishi'",
     "Bob": "5, 22, 34, 37"},
    {"Savol": "Leakage borligini qanday aniqlaysiz?",
     "Kuchsiz javob": "Natija juda yaxshi bo'lsa",
     "Kuchli javob": "'Natija kutilganidan yuqori chiqsa, feature importance ga qarayman. Bitta ustun hukmron bo'lsa, o'zimdan so'rayman: bu ustun bashorat paytida mavjudmi? Keyin uni olib tashlab, natija qanchalik tushishini o'lchayman'",
     "Bob": "5, 25, 44"},
])
SavolKuchsiz javobKuchli javobBob
Data leakage nima?Test ma'lumoti train ga tushib qolishi'Modelga bashorat paytida MAVJUD BO'LMAYDIGAN ma'lumot tushishi. U bir necha shaklda keladi — eng xavflisi ustun nomidan bilinmaydigani'5
Leakage ning qanday turlarini bilasiz?Test ni train ga qo'shib yuborish'Scaler ni split dan oldin fit qilish; target encoding ni butun ma'lumotda hisoblash; feature selection ni Pipeline tashqarisida qilish; vaqt qatorini tasodifiy bo'lish; bitta obyektning ikki qatori train va test ga tushishi'5, 22, 34, 37
Leakage borligini qanday aniqlaysiz?Natija juda yaxshi bo'lsa'Natija kutilganidan yuqori chiqsa, feature importance ga qarayman. Bitta ustun hukmron bo'lsa, o'zimdan so'rayman: bu ustun bashorat paytida mavjudmi? Keyin uni olib tashlab, natija qanchalik tushishini o'lchayman'5, 25, 44

Modellar

python18 qator
savollar([
    {"Savol": "Random Forest va Gradient Boosting farqi?",
     "Kuchsiz javob": "Ikkisi ham daraxtlar ansambli",
     "Kuchli javob": "'RF — parallel, mustaqil daraxtlar, variance ni kamaytiradi. Boosting — ketma-ket, har biri oldingining xatosini tuzatadi, bias ni kamaytiradi va overfitting ga moyilroq'",
     "Bob": "18, 19"},
    {"Savol": "Qaysi modeldan boshlaysiz?",
     "Kuchsiz javob": "XGBoost, u eng kuchli",
     "Kuchli javob": "'Avval baza (DummyClassifier), keyin logistic regression yoki bitta daraxt. Ular tez va tushunarli. Murakkab model faqat oddiy model yetmaganda'",
     "Bob": "6"},
    {"Savol": "Deep learning qachon kerak?",
     "Kuchsiz javob": "Hozir hamma shuni ishlatadi",
     "Kuchli javob": "'Rasm, matn, audio, ketma-ketlikda. Jadval ma'lumotida gradient boosting odatda yutadi. Bu kitobda jadval ma'lumotida neyron tarmoq oddiy modellardan ustun kelmagani O'LCHANGAN'",
     "Bob": "29-35"},
    {"Savol": "Scaling qaysi modellarga kerak?",
     "Kuchsiz javob": "Hammasiga",
     "Kuchli javob": "'Masofaga va gradientga tayanadiganlarga: KNN, SVM, neyron tarmoq, regularizatsiyali chiziqli modellar. Daraxtlarga kerak emas — ular chegara bo'yicha bo'ladi'",
     "Bob": "16, 20, 21"},
])
SavolKuchsiz javobKuchli javobBob
Random Forest va Gradient Boosting farqi?Ikkisi ham daraxtlar ansambli'RF — parallel, mustaqil daraxtlar, variance ni kamaytiradi. Boosting — ketma-ket, har biri oldingining xatosini tuzatadi, bias ni kamaytiradi va overfitting ga moyilroq'18, 19
Qaysi modeldan boshlaysiz?XGBoost, u eng kuchli'Avval baza (DummyClassifier), keyin logistic regression yoki bitta daraxt. Ular tez va tushunarli. Murakkab model faqat oddiy model yetmaganda'6
Deep learning qachon kerak?Hozir hamma shuni ishlatadi'Rasm, matn, audio, ketma-ketlikda. Jadval ma'lumotida gradient boosting odatda yutadi. Bu kitobda jadval ma'lumotida neyron tarmoq oddiy modellardan ustun kelmagani O'LCHANGAN'29-35
Scaling qaysi modellarga kerak?Hammasiga'Masofaga va gradientga tayanadiganlarga: KNN, SVM, neyron tarmoq, regularizatsiyali chiziqli modellar. Daraxtlarga kerak emas — ular chegara bo'yicha bo'ladi'16, 20, 21

Amaliy savollar

python18 qator
savollar([
    {"Savol": "Bo'sh qiymatlar bilan nima qilasiz?",
     "Kuchsiz javob": "Median bilan to'ldiraman",
     "Kuchli javob": "'Avval NEGA bo'sh ekanini tekshiraman — tasodifanmi yoki tizimlimi. Bo'shligi o'zi signal bo'lsa, bayroq ustun qo'shaman. Imputer Pipeline ICHIDA bo'ladi, aks holda leakage'",
     "Bob": "4"},
    {"Savol": "Kategorik ustunni qanday kodlaysiz?",
     "Kuchsiz javob": "LabelEncoder bilan",
     "Kuchli javob": "'Kam toifali bo'lsa OneHot. Ko'p toifali bo'lsa target encoding — lekin u faqat train da hisoblanishi SHART. LabelEncoder tartib yaratadi va tartibsiz toifada xato'",
     "Bob": "4, 22"},
    {"Savol": "Nomutanosib sinflarni qanday hal qilasiz?",
     "Kuchsiz javob": "SMOTE bilan",
     "Kuchli javob": "'Avval metrikani to'g'rilayman (F1, PR-AUC). Keyin class_weight. SMOTE ni faqat train da, Pipeline ichida va natijani o'lchab — u har doim ham yordam bermaydi'",
     "Bob": "8"},
    {"Savol": "Model ishlab chiqarishda yomonlashdi. Nega?",
     "Kuchsiz javob": "Qayta o'qitish kerak",
     "Kuchli javob": "'Avval sababni topaman: kirish taqsimoti o'zgardimi (drift), tayyorlash zanjiri bir xilmi, offline baho leakagesiz edimi. Qayta o'qitish — sabab aniqlangandan KEYIN'",
     "Bob": "10, 39, 40"},
])
SavolKuchsiz javobKuchli javobBob
Bo'sh qiymatlar bilan nima qilasiz?Median bilan to'ldiraman'Avval NEGA bo'sh ekanini tekshiraman — tasodifanmi yoki tizimlimi. Bo'shligi o'zi signal bo'lsa, bayroq ustun qo'shaman. Imputer Pipeline ICHIDA bo'ladi, aks holda leakage'4
Kategorik ustunni qanday kodlaysiz?LabelEncoder bilan'Kam toifali bo'lsa OneHot. Ko'p toifali bo'lsa target encoding — lekin u faqat train da hisoblanishi SHART. LabelEncoder tartib yaratadi va tartibsiz toifada xato'4, 22
Nomutanosib sinflarni qanday hal qilasiz?SMOTE bilan'Avval metrikani to'g'rilayman (F1, PR-AUC). Keyin class_weight. SMOTE ni faqat train da, Pipeline ichida va natijani o'lchab — u har doim ham yordam bermaydi'8
Model ishlab chiqarishda yomonlashdi. Nega?Qayta o'qitish kerak'Avval sababni topaman: kirish taqsimoti o'zgardimi (drift), tayyorlash zanjiri bir xilmi, offline baho leakagesiz edimi. Qayta o'qitish — sabab aniqlangandan KEYIN'10, 39, 40

Deploy va muhandislik

python18 qator
savollar([
    {"Savol": "Modelni qanday saqlaysiz?",
     "Kuchsiz javob": "joblib.dump(model)",
     "Kuchli javob": "'Butun Pipeline ni saqlayman, faqat modelni emas. Yoniga manifest qo'yaman: versiyalar, kutilgan ustunlar, metrikalar. Va saqlash-yuklash aylanma sinovini o'tkazaman'",
     "Bob": "39"},
    {"Savol": "pickle xavfsizmi?",
     "Kuchsiz javob": "Ha, standart kutubxona",
     "Kuchli javob": "'Yo'q. pickle yuklash KOD BAJARADI. Foydalanuvchi yuborgan faylni hech qachon yuklamayman. Nazoratsiz muhitda ONNX ishlataman — u ma'lumot, kod emas'",
     "Bob": "39"},
    {"Savol": "API da modelni qayerda yuklaysiz?",
     "Kuchsiz javob": "View ichida",
     "Kuchli javob": "'Modul darajasida, bir marta. View ichida yuklash har so'rovda diskdan o'qiydi va xotirani ko'paytiradi. Bu kitobda farq o'lchangan'",
     "Bob": "40"},
    {"Savol": "Kirishni qayerda tekshirasiz?",
     "Kuchsiz javob": "Model o'zi xato beradi",
     "Kuchli javob": "'Chegarada, model ko'rmasdan oldin. Tip, diapazon, ruxsat etilgan qiymatlar. Chunki model noto'g'ri kirishda xato bermasligi ham mumkin — JIM noto'g'ri javob beradi'",
     "Bob": "37, 39, 40"},
])
SavolKuchsiz javobKuchli javobBob
Modelni qanday saqlaysiz?joblib.dump(model)'Butun Pipeline ni saqlayman, faqat modelni emas. Yoniga manifest qo'yaman: versiyalar, kutilgan ustunlar, metrikalar. Va saqlash-yuklash aylanma sinovini o'tkazaman'39
pickle xavfsizmi?Ha, standart kutubxona'Yo'q. pickle yuklash KOD BAJARADI. Foydalanuvchi yuborgan faylni hech qachon yuklamayman. Nazoratsiz muhitda ONNX ishlataman — u ma'lumot, kod emas'39
API da modelni qayerda yuklaysiz?View ichida'Modul darajasida, bir marta. View ichida yuklash har so'rovda diskdan o'qiydi va xotirani ko'paytiradi. Bu kitobda farq o'lchangan'40
Kirishni qayerda tekshirasiz?Model o'zi xato beradi'Chegarada, model ko'rmasdan oldin. Tip, diapazon, ruxsat etilgan qiymatlar. Chunki model noto'g'ri kirishda xato bermasligi ham mumkin — JIM noto'g'ri javob beradi'37, 39, 40

Tuzoq savollar

python18 qator
savollar([
    {"Savol": "Modelim 99% accuracy berdi. Nima deysiz?",
     "Kuchsiz javob": "Juda yaxshi natija",
     "Kuchli javob": "'Avval ikkita savol: sinflar taqsimoti qanday va baza nima beradi? Keyin uchinchisi: leakage yo'qmi? 99% ko'pincha xato belgisi, muvaffaqiyat emas'",
     "Bob": "5, 6, 7"},
    {"Savol": "Feature importance ustunni muhim deb ko'rsatdi. Demak u sabab?",
     "Kuchsiz javob": "Ha",
     "Kuchli javob": "'Yo'q. Muhimlik — model shu ustundan foydalanganini bildiradi, sababni emas. Sabab uchun tajriba kerak'",
     "Bob": "25, 45"},
    {"Savol": "Cross-validation natijasi 0.85. Test da ham shunday bo'ladimi?",
     "Kuchsiz javob": "Ha",
     "Kuchli javob": "'Agar CV to'g'ri qurilgan bo'lsa — taxminan. Lekin CV ni ko'p marta ishlatib model tanlagan bo'lsam, CV natijasi optimistik bo'ladi'",
     "Bob": "9, 23"},
    {"Savol": "Qaysi algoritm eng yaxshi?",
     "Kuchsiz javob": "XGBoost / neyron tarmoq",
     "Kuchli javob": "'Ma'lumotga bog'liq, oldindan aytib bo'lmaydi. Shuning uchun bazani qo'yaman va bir nechta modelni bir xil sharoitda o'lchayman'",
     "Bob": "6, 19, 24"},
])
SavolKuchsiz javobKuchli javobBob
Modelim 99% accuracy berdi. Nima deysiz?Juda yaxshi natija'Avval ikkita savol: sinflar taqsimoti qanday va baza nima beradi? Keyin uchinchisi: leakage yo'qmi? 99% ko'pincha xato belgisi, muvaffaqiyat emas'5, 6, 7
Feature importance ustunni muhim deb ko'rsatdi. Demak u sabab?Ha'Yo'q. Muhimlik — model shu ustundan foydalanganini bildiradi, sababni emas. Sabab uchun tajriba kerak'25, 45
Cross-validation natijasi 0.85. Test da ham shunday bo'ladimi?Ha'Agar CV to'g'ri qurilgan bo'lsa — taxminan. Lekin CV ni ko'p marta ishlatib model tanlagan bo'lsam, CV natijasi optimistik bo'ladi'9, 23
Qaysi algoritm eng yaxshi?XGBoost / neyron tarmoq'Ma'lumotga bog'liq, oldindan aytib bo'lmaydi. Shuning uchun bazani qo'yaman va bir nechta modelni bir xil sharoitda o'lchayman'6, 19, 24

O'zingizdan so'raladigan savol

python9 qator
savollar([
    {"Savol": "Bizga nima savolingiz bor?",
     "Kuchsiz javob": "Yo'q, hammasi tushunarli",
     "Kuchli javob": "'Modellaringizni qanday baholaysiz va ishlab chiqarishda qanday kuzatasiz?' — bu savol sizning tajribangizni ko'rsatadi",
     "Bob": "-"},
])
print("Intervyuda eng kuchli javob — 'men buni O'LCHAB ko'rganman' deb aytib,")
print("qanday o'lchaganini tushuntirish. Shuning uchun bu kitobdagi har bob")
print("o'lchov bilan tugaydi: sizda aytadigan gap bo'lsin.")
Chiqish
Intervyuda eng kuchli javob — 'men buni O'LCHAB ko'rganman' deb aytib,
qanday o'lchaganini tushuntirish. Shuning uchun bu kitobdagi har bob
o'lchov bilan tugaydi: sizda aytadigan gap bo'lsin.
SavolKuchsiz javobKuchli javobBob
Bizga nima savolingiz bor?Yo'q, hammasi tushunarli'Modellaringizni qanday baholaysiz va ishlab chiqarishda qanday kuzatasiz?' — bu savol sizning tajribangizni ko'rsatadi-

Bu bobni bepul o'qidingiz.

Kitob o'rgatadi, lekin sizning kodingiz nega ishlamaganini ayta olmaydi. Kursda uy vazifangiz tekshiriladi.

Telegramda yozish Narxlar