Mundarija (22)
- 1. Kirish va motivatsiya
- 2. Nazariya — chuqur tushuntirish
- 2.1. CRISP-DM olti bosqichi
- 2.2. Biznes va ma'lumot tushunish
- 2.3. Ma'lumot tayyorlash va modellashtirish
- 2.4. Baholash va joriy etish
- 2.5. Nega tsiklik (iterativ)
- 2.6. CRISP-DM amaliyoti
- 2.7. Jarayon tuzoqlari
- 2.8. CRISP-DM — chalkashlikni tartibga soladi
- 3. Tez ma'lumotnoma
- 4. Batafsil misollar
- Misol 1 — CRISP-DM bosqichlari
- Misol 2 — Ikki jamoa (jarayonli vs jarayonsiz)
- Misol 3 — Vaqt taqsimoti (80% tayyorlash)
- Misol 4 — Iteratsiya (asta yaxshilanish)
- 5. To'g'ri va noto'g'ri tushunishlar
- 6. Keng tarqalgan xatolar va yechimlari
- 7. Integratsiya — bu bilim qayerda kerak bo'ladi
- 8. Eng yaxshi amaliyotlar
- 9. Amaliy topshiriq
- Xulosa
1.4-dars: Data Science ish oqimi (CRISP-DM)
1-QISM — KIRISH: DATA SCIENCE · 4-dars
1. Kirish va motivatsiya
Yangi Data Scientist ko'pincha bir xatoga yo'l qo'yadi: ma'lumotni ko'rishi bilan darhol model qurishga yuguradi. Natija — chalkash ish, noaniq maqsad, foydasiz model. Tajribali mutaxassis esa tuzilgan jarayonga amal qiladi: avval muammoni tushunish, keyin ma'lumot, keyin model, keyin baholash, oxirida joriy etish. Bu jarayonning eng mashhur standarti — CRISP-DM (Cross-Industry Standard Process for Data Mining). U Data Science loyihasini oltita bosqichga bo'ladi va — muhimi — tsiklik (baholashdan yana boshiga qaytish mumkin). Bu dars CRISP-DM ni chuqur o'rgatadi: har bosqich nima qiladi, nega tartib muhim, nega bu tsikl. Tuzilgan jarayon — chalkashlik va behuda ishning eng yaxshi davosi.
CRISP-DM — Data Science loyihasining standart jarayoni (olti bosqich): 1. Biznes tushunish (muammo, maqsad — nima kerak?), 2. Ma'lumot tushunish (yig'ish, o'rganish — nima bor?), 3. Ma'lumot tayyorlash (tozalash, feature — 80% ish), 4. Modellashtirish (ML — model qurish), 5. Baholash (model maqsadga mos-mi?), 6. Joriy etish (deploy, foydalanish). Xususiyat: tsiklik (baholashdan qaytish, takrorlanadi), iterativ (bir marta emas). Foydalanish: har Data Science loyihasi. Bu 1.1 (ish oqimi), 29-qism (deploy) bilan bog'liq. CRISP-DM — 6 bosqich, tsiklik. Muammodan deploy. Tartibli.
Real vaziyat. Ikki jamoa bir loyiha — mijoz ketishini (churn) bashorat qilish. Birinchi jamoa darhol model qurdi (ma'lumotni tushunmasdan) — model 95% "aniq" edi, lekin noto'g'ri (ma'lumotda "ketgan" belgisi noto'g'ri edi — tushunilmagan). Ikkinchi jamoa CRISP-DM: avval muammoni aniqladi (nima "ketish"? qachon?), ma'lumotni tushundi (belgi to'g'ri-mi), tayyorladi (tozaladi), model qurdi, baholadi (real vaziyatda), joriy etdi. Ularning modeli ishladi (real mijozlarni topdi). Farq — tuzilgan jarayon (darhol model emas). CRISP-DM — muammodan boshlash.
Bu darsda CRISP-DM ish oqimini o'rganamiz.
Bu darsda:
- CRISP-DM olti bosqichi
- Biznes va ma'lumot tushunish
- Ma'lumot tayyorlash va modellashtirish
- Baholash va joriy etish
- Nega tsiklik (iterativ)
- CRISP-DM amaliyoti
- Jarayon tuzoqlari
- Amaliy: CRISP-DM modeli
ℹ Bu kirish dars — misollar CRISP-DM tushunchalarini (deterministik) modellashtiradi.
2. Nazariya — chuqur tushuntirish
2.1. CRISP-DM olti bosqichi
Tuzilgan jarayon:
CRISP-DM (tsiklik jarayon):
1. BIZNES TUSHUNISH → muammo, maqsad (nima kerak?)
↓
2. MA'LUMOT TUSHUNISH → yig'ish, o'rganish (nima bor?)
↓
3. MA'LUMOT TAYYORLASH → tozalash, feature (80% ish)
↓
4. MODELLASHTIRISH → ML model qurish
↓
5. BAHOLASH → maqsadga mosmi? ──→ (yo'q: 1-ga qayt)
↓ (ha)
6. JORIY ETISH → deploy, foydalanishCRISP-DM olti bosqichi — Data Science loyihasining standart tartibi: biznes tushunish (muammo, maqsad), ma'lumot tushunish (yig'ish, o'rganish), ma'lumot tayyorlash (tozalash, feature), modellashtirish (ML), baholash (maqsadga mos-mi), joriy etish (deploy). Sabab: Data Science loyihasi murakkab (darhol model — chalkashish); tuzilgan jarayon aniq (har bosqich bir vazifa, tartib bilan). CRISP-DM sanoat standarti (turli sohada ishlaydi). Muhim: muammodan boshlanadi (model emas — 2.2), deploy bilan tugaydi (natija foydali). Bu 1.1 (ish oqimi) ning to'liq shakli. CRISP-DM — 6 bosqich. Muammodan deploy. Standart.
2.2. Biznes va ma'lumot tushunish
Birinchi ikki bosqich — poydevor:
1. BIZNES TUSHUNISH (muammoni aniqlash):
nima muammo? (savdo pasaydi)
maqsad nima? (ketadigan mijozni topish)
muvaffaqiyat mezoni? (X% mijoz saqlash)
→ aniq savol (model emas)
2. MA'LUMOT TUSHUNISH (ma'lumotni bilish):
qanday ma'lumot bor? (xarid, faoliyat)
sifat qanday? (yetishmayotgan, xato)
naqshlar? (dastlabki EDA)
→ ma'lumotni tanishBiznes va ma'lumot tushunish — birinchi ikki bosqich (poydevor): biznes tushunish (muammoni aniqlash — nima muammo? maqsad? muvaffaqiyat mezoni? → aniq savol, model emas), ma'lumot tushunish (ma'lumotni bilish — qanday ma'lumot bor? sifat? naqshlar? → dastlabki EDA, ma'lumotni tanish). Sabab: bu ikki bosqich butun loyihani belgilaydi (noto'g'ri savol → noto'g'ri model; noto'g'ri ma'lumot → foydasiz); avval nima (muammo) va nima bor (ma'lumot) — keyin model. Boshlovchilar bu ikkini o'tkazib yuboradi (darhol model) — xato. Biznes tushunish eng muhim (noto'g'ri savol — hamma ish behuda). Biznes/ma'lumot tushunish — muammo + ma'lumot. Poydevor. Avval nima.
2.3. Ma'lumot tayyorlash va modellashtirish
Uchinchi va to'rtinchi bosqich:
3. MA'LUMOT TAYYORLASH (80% ish):
tozalash (xato, dublikat, yetishmayotgan)
feature engineering (yangi ustunlar)
kodlash (kategorik → raqam)
split (train/test)
→ model uchun toza ma'lumot
4. MODELLASHTIRISH:
algoritm tanlash (regressiya, daraxt...)
o'qitish (train)
sozlash (hyperparameter)
→ o'rgangan modelMa'lumot tayyorlash va modellashtirish — uchinchi/to'rtinchi bosqich: ma'lumot tayyorlash (80% ish — tozalash: xato/dublikat/yetishmayotgan 6-qism, feature engineering: yangi ustunlar 19-qism, kodlash: kategorik→raqam, split: train/test 14-qism → model uchun toza ma'lumot), modellashtirish (algoritm tanlash — regressiya/daraxt, o'qitish — train, sozlash — hyperparameter → o'rgangan model). Sabab: model toza ma'lumotga muhtoj (garbage in, garbage out — 1.1); tayyorlash eng ko'p vaqt (80% — ko'rinmas, lekin hal qiluvchi); model oxirida (tayyorlashdan keyin — nisbatan tez). Boshlovchilar model'ga vaqt sarflaydi, lekin tayyorlash muhimroq. Tayyorlash/model — 80% ma'lumot, 20% model. Toza → model.
2.4. Baholash va joriy etish
Beshinchi va oltinchi bosqich:
5. BAHOLASH:
model maqsadga mosmi? (biznes mezoni)
metrikalar (aniqlik, precision — 16-qism)
real vaziyatda ishlaydimi?
→ mos bo'lmasa: 1-bosqichga qayt (tsikl!)
6. JORIY ETISH (deploy):
modelni ishlab chiqarishga (API, 29-qism)
monitoring (ishlashda kuzatuv)
qayta o'qitish (vaqt o'tib)
→ real dunyoda foydaliBaholash va joriy etish — beshinchi/oltinchi bosqich: baholash (model maqsadga mos-mi — biznes mezoni, metrikalar 16-qism, real vaziyatda ishlaydi-mi; mos bo'lmasa → 1-bosqichga qaytish — tsikl!), joriy etish (deploy — modelni ishlab chiqarishga, API 29-qism, monitoring — kuzatuv, qayta o'qitish — vaqt o'tib → real dunyoda foydali). Sabab: baholash — model yaxshi-mi (texnik aniqlik emas — biznes maqsad; 95% aniq lekin foydasiz bo'lishi mumkin); joriy etish — model noutbukda emas, real dunyoda ishlashi kerak (deploy — 29-qism). Ko'p loyiha deploy'gacha yetmaydi (noutbukda qoladi — foydasiz). Baholash/joriy — maqsad + deploy. Real foyda. Tsikl.
2.5. Nega tsiklik (iterativ)
Bir marta emas — takroriy:
CRISP-DM tsiklik:
baholash → yomon → 1-bosqichga qayt
(yangi savol, ko'proq ma'lumot, boshqa model)
real loyiha:
iteratsiya 1: oddiy model (baseline)
iteratsiya 2: ko'proq feature
iteratsiya 3: yaxshiroq algoritm
→ asta yaxshilanadi (bir marta mukammal emas)Nega tsiklik (iterativ) — CRISP-DM bir marta emas, takroriy: baholash yomon bo'lsa — 1-bosqichga qaytish (yangi savol, ko'proq ma'lumot, boshqa model). Sabab: birinchi urinishda model mukammal emas (real dunyo murakkab); iteratsiya bilan yaxshilanadi (iteratsiya 1 — oddiy baseline, 2 — ko'proq feature, 3 — yaxshiroq algoritm). Bu agile kabi (kichik qadamlar, o'rganish — 31.4 Python kursi). Har iteratsiya o'rgatadi (nima ishlaydi, nima yo'q — keyingisi yaxshiroq). Boshlovchilar "bir marta mukammal" kutadi — noto'g'ri (iterativ). Tsiklik — takroriy, iteratsiya. Asta yaxshilanadi. Agile.
2.6. CRISP-DM amaliyoti
CRISP-DM amaliyoti: muammodan boshla (biznes tushunish — aniq savol, model emas); ma'lumotni tushun (sifat, naqsh — dastlabki EDA); tayyorlashga vaqt (80% — tozalash, feature); oddiy baseline (avval oddiy model — taqqoslash uchun); biznes mezoni (baholash — texnik emas, maqsad); tsikl (baholash yomon → qaytish, iteratsiya); deploy (real dunyo — noutbukda qolmasin); hujjat (har bosqich — takrorlash, jamoa). Tuzoqlar: darhol model (muammo/ma'lumot tushunmasdan), tayyorlashni o'tkazib (iflos ma'lumot), texnik aniqlik (biznes maqsad emas), deploy'gacha yetmaslik (noutbukda qoladi), bir marta (iterativ emas). Amaliyot — muammo, tayyorlash, tsikl, deploy. Tartibli, iterativ.
2.7. Jarayon tuzoqlari
CRISP-DM asosiy tuzoqlari: darhol model (biznes/ma'lumot tushunishni o'tkazib — noto'g'ri savol/ma'lumot, foydasiz model; avval muammo); tayyorlashni past baholash (80% ishni o'tkazib — iflos ma'lumot, garbage in garbage out; tozalashga vaqt); texnik aniqlikka e'tibor (95% aniq lekin biznes maqsad emas — masalan noto'g'ri metrika; biznes mezoni); deploy'gacha yetmaslik (model noutbukda qoladi — foydasiz; joriy etish); bir martalik (birinchi model mukammal deb — iterativ emas; tsikl); hujjatsiz (jarayon yozilmagan — takrorlab bo'lmaydi, jamoa bilmaydi); muammosiz ma'lumot ("qiziq ma'lumot bor, nima qilsam?" — teskari, avval savol). Sabab: jarayon tuzilgan bo'lishi kerak (tasodifiy — chalkashish); noto'g'ri — behuda ish, to'g'ri — samarali. Yechim: muammo, tayyorlash, tsikl, deploy. Tuzoqlar — darhol model, tayyorlash past, deploy yo'q.
2.8. CRISP-DM — chalkashlikni tartibga soladi
CRISP-DM asosiy g'oyasi — chalkashlikni tartibga solish: Data Science loyihasi murakkab (ko'p bosqich, noaniqlik); tuzilgan jarayon (6 bosqich, tsiklik) uni boshqariladigan qiladi (har bosqich aniq, tartib bilan). Bu muammodan boshlanadi (biznes — nima kerak, model emas) va deploy bilan tugaydi (real dunyo — foydali), tsiklik (iteratsiya — asta yaxshilanadi). Boshlovchilar darhol model qurgisi keladi (glamurli), lekin muammo + ma'lumot + tayyorlash (80% ish) — poydevor. CRISP-DM bu tartibni beradi (chalkashish o'rniga — tuzilgan). Bu 1.1 (ish oqimi) ning standart shakli, butun kurs (14-qism ML, 29-qism deploy) uchun ramka. Tuzilgan jarayon — behuda ishning davosi (aniq maqsad, tartib, iteratsiya). CRISP-DM — tartib. Muammodan deploy. Iterativ.
3. Tez ma'lumotnoma
CRISP-DM (6 bosqich, tsiklik):
1. Biznes tushunish — muammo, maqsad (aniq savol, model emas)
2. Ma'lumot tushunish — yig'ish, o'rganish (nima bor, sifat)
3. Ma'lumot tayyorlash — tozalash, feature, kodlash (80% ish)
4. Modellashtirish — algoritm, o'qitish, sozlash
5. Baholash — maqsadga mosmi? (yo'q → 1-ga qayt)
6. Joriy etish — deploy, monitoring (real dunyo)
XUSUSIYAT:
tsiklik (baholashdan qaytish) · iterativ (asta yaxshilanadi)
QOIDA: muammodan boshla · tayyorlashga vaqt (80%) · deploy · tsiklCRISP-DM xulosasi
CRISP-DM — Data Science standart jarayoni (6 bosqich, tsiklik)
Biznes/ma'lumot tushunish — muammo + ma'lumot (poydevor, avval)
Tayyorlash (80%) + model — toza ma'lumot → o'rgangan model
Baholash (maqsad) + deploy (real dunyo) — foydali natija
Tsiklik — iterativ (bir marta mukammal emas, asta yaxshilanadi)4. Batafsil misollar
Misollar CRISP-DM tushunchalarini (deterministik) modellashtiradi.
Misol 1 — CRISP-DM bosqichlari
"""CRISP-DM: 6 bosqich va vazifasi (model)."""
CRISP_DM = [
("1. Biznes tushunish", "muammo, maqsad (aniq savol)"),
("2. Ma'lumot tushunish", "yig'ish, sifat, naqsh"),
("3. Ma'lumot tayyorlash", "tozalash, feature (80% ish)"),
("4. Modellashtirish", "algoritm, o'qitish"),
("5. Baholash", "maqsadga mosmi (tsikl)"),
("6. Joriy etish", "deploy, monitoring"),
]
def main() -> None:
print("=== CRISP-DM bosqichlari ===")
for bosqich, vazifa in CRISP_DM:
print(f" {bosqich:24} {vazifa}")
print("\n=== Boshlanish va tugash ===")
print(" boshlanadi: muammo (biznes — model emas)")
print(" tugaydi: deploy (real dunyo — foydali)")
print("\n=== Tsiklik ===")
print(" baholash yomon → 1-bosqichga qayt (iteratsiya)")
print(" ⭐ CRISP-DM — muammodan deploy (tartibli)")
if __name__ == "__main__":
main()Natijaning muhim qismi:
=== CRISP-DM bosqichlari ===
1. Biznes tushunish muammo, maqsad (aniq savol)
2. Ma'lumot tushunish yig'ish, sifat, naqsh
3. Ma'lumot tayyorlash tozalash, feature (80% ish)
4. Modellashtirish algoritm, o'qitish
5. Baholash maqsadga mosmi (tsikl)
6. Joriy etish deploy, monitoring
=== Boshlanish va tugash ===
boshlanadi: muammo (biznes — model emas)
tugaydi: deploy (real dunyo — foydali)
=== Tsiklik ===
baholash yomon → 1-bosqichga qayt (iteratsiya)
⭐ CRISP-DM — muammodan deploy (tartibli)Nima ko'rsatdi: 2.1-bo'lim.
Misol 2 — Ikki jamoa (jarayonli vs jarayonsiz)
"""Ikki jamoa: CRISP-DM vs darhol model (model)."""
def natija(jarayon: bool) -> dict:
if jarayon:
return {"savol": "aniq", "malumot": "tushunilgan", "model": "ishlaydi (real)"}
return {"savol": "noaniq", "malumot": "tushunilmagan", "model": "95% aniq lekin noto'g'ri"}
def main() -> None:
print("=== 1. Darhol model (jarayonsiz) ===")
a = natija(jarayon=False)
print(f" savol: {a['savol']}, ma'lumot: {a['malumot']}")
print(f" model: {a['model']}")
print("\n=== 2. CRISP-DM (jarayonli) ===")
b = natija(jarayon=True)
print(f" savol: {b['savol']}, ma'lumot: {b['malumot']}")
print(f" model: {b['model']}")
print("\n=== 3. Farq ===")
print(" jarayonsiz: yuqori 'aniqlik', lekin foydasiz")
print(" jarayonli: to'g'ri muammo → ishlaydigan model")
print("\n=== 4. Saboq ===")
print(" muammodan boshla (darhol model emas)")
print(" ⭐ Tuzilgan jarayon — foydali natija")
if __name__ == "__main__":
main()Natijaning muhim qismi:
=== 1. Darhol model (jarayonsiz) ===
savol: noaniq, ma'lumot: tushunilmagan
model: 95% aniq lekin noto'g'ri
=== 2. CRISP-DM (jarayonli) ===
savol: aniq, ma'lumot: tushunilgan
model: ishlaydi (real)
=== 3. Farq ===
jarayonsiz: yuqori 'aniqlik', lekin foydasiz
jarayonli: to'g'ri muammo → ishlaydigan model
=== 4. Saboq ===
muammodan boshla (darhol model emas)
⭐ Tuzilgan jarayon — foydali natijaNima ko'rsatdi: 2.2-bo'lim.
Misol 3 — Vaqt taqsimoti (80% tayyorlash)
"""CRISP-DM vaqt taqsimoti (model)."""
VAQT = {
"Biznes tushunish": 10,
"Ma'lumot tushunish": 15,
"Ma'lumot tayyorlash": 45,
"Modellashtirish": 15,
"Baholash": 10,
"Joriy etish": 5,
}
def main() -> None:
print("=== CRISP-DM vaqt (%) ===")
for bosqich, foiz in VAQT.items():
chiziq = "#" * (foiz // 3)
print(f" {bosqich:22} {foiz:2}% {chiziq}")
malumot = VAQT["Ma'lumot tushunish"] + VAQT["Ma'lumot tayyorlash"]
print(f"\n Ma'lumot ishi: {malumot}% (tushunish + tayyorlash)")
print(f" Model: {VAQT['Modellashtirish']}% (kam!)")
print(" ⭐ 80% — ma'lumot (tayyorlash asosiy)")
if __name__ == "__main__":
main()Natijaning muhim qismi:
=== CRISP-DM vaqt (%) ===
Biznes tushunish 10% ###
Ma'lumot tushunish 15% #####
Ma'lumot tayyorlash 45% ###############
Modellashtirish 15% #####
Baholash 10% ###
Joriy etish 5% #
Ma'lumot ishi: 60% (tushunish + tayyorlash)
Model: 15% (kam!)
⭐ 80% — ma'lumot (tayyorlash asosiy)Nima ko'rsatdi: 2.3-bo'lim.
Misol 4 — Iteratsiya (asta yaxshilanish)
"""Iteratsiya: model asta yaxshilanadi (model)."""
ITERATSIYALAR = [
{"raqam": 1, "nima": "oddiy baseline", "aniqlik": 0.70},
{"raqam": 2, "nima": "ko'proq feature", "aniqlik": 0.82},
{"raqam": 3, "nima": "yaxshiroq algoritm", "aniqlik": 0.89},
]
def main() -> None:
print("=== Iteratsiyalar (tsiklik) ===")
oldingi = 0.0
for it in ITERATSIYALAR:
oshish = it["aniqlik"] - oldingi if oldingi else it["aniqlik"]
print(f" Iteratsiya {it['raqam']}: {it['nima']:20} → {it['aniqlik']:.2f} (+{oshish:.2f})")
oldingi = it["aniqlik"]
print("\n=== Xulosa ===")
print(" bir marta mukammal EMAS (asta yaxshilanadi)")
print(" har iteratsiya o'rgatadi (keyingisi yaxshiroq)")
print(" ⭐ Tsiklik — iterativ (baseline → yaxshilash)")
if __name__ == "__main__":
main()Natijaning muhim qismi:
=== Iteratsiyalar (tsiklik) ===
Iteratsiya 1: oddiy baseline → 0.70 (+0.70)
Iteratsiya 2: ko'proq feature → 0.82 (+0.12)
Iteratsiya 3: yaxshiroq algoritm → 0.89 (+0.07)
=== Xulosa ===
bir marta mukammal EMAS (asta yaxshilanadi)
har iteratsiya o'rgatadi (keyingisi yaxshiroq)
⭐ Tsiklik — iterativ (baseline → yaxshilash)Nima ko'rsatdi: 2.5-bo'lim.
5. To'g'ri va noto'g'ri tushunishlar
| Noto'g'ri fikr | To'g'risi |
|---|---|
| "Darhol model qur" | Avval muammo + ma'lumot (poydevor) |
| "Model — asosiy ish" | 80% — ma'lumot tayyorlash |
| "Yuqori aniqlik = yaxshi" | Biznes maqsadga mosmi (mezon) |
| "Bir marta mukammal" | Iterativ (asta yaxshilanadi) |
| "Baholash = metrika" | Real vaziyat, biznes maqsad |
| "Deploy shart emas" | Noutbukda model — foydasiz |
| "Ma'lumotdan boshla" | Muammodan (savol avval) |
| "Jarayon keraksiz" | Tartib — chalkashlik davosi |
6. Keng tarqalgan xatolar va yechimlari
1. Darhol model (jarayonsiz)
model.fit(data) # muammo/ma'lumot tushunilmagan # ⚠️
# avval: biznes tushunish → ma'lumot → tayyorlash # ✅2. Tayyorlashni o'tkazish
# iflos ma'lumot to'g'ridan model (garbage in) # ⚠️
# tozalash + feature (80% ish — 6/19-qism) # ✅3. Texnik aniqlikka e'tibor
# "95% aniq!" (lekin biznes maqsad emas) # ⚠️
# biznes mezon (X% mijoz saqlash — real qiymat) # ✅4. Deploy'gacha yetmaslik
# model noutbukda qoladi (foydasiz) # ⚠️
# deploy (API — real dunyoda ishlatish — 29-qism) # ✅5. Bir martalik (iterativ emas)
# birinchi model mukammal deb kutish # ⚠️
# baseline → iteratsiya (asta yaxshilash) # ✅6. Muammosiz ma'lumot
# "ma'lumot bor, nima qilsam?" (teskari) # ⚠️
# avval savol (muammo) → keyin ma'lumot # ✅7. Hujjatsizlik
# jarayon yozilmagan (takrorlab bo'lmaydi) # ⚠️
# har bosqich hujjat (jamoa, takrorlash) # ✅7. Integratsiya — bu bilim qayerda kerak bo'ladi
- 1.1-dars (o'tilgan): Data Science ish oqimi
- 6-qism: Ma'lumot tayyorlash (tozalash)
- 14-qism: Modellashtirish (ML)
- 20-qism: Baholash (metrikalar)
- 29-qism: Joriy etish (deploy, MLOps)
8. Eng yaxshi amaliyotlar
Muammodan boshla (aniq savol — model emas).
Ma'lumotni tushun (sifat, naqsh — avval).
Tayyorlashga vaqt (80% — tozalash, feature).
Oddiy baseline (avval — taqqoslash).
Biznes mezon (baholash — texnik emas).
Tsikl (baholash yomon → qaytish, iteratsiya).
Deploy (real dunyo — noutbukda qolmasin).
Hujjat (har bosqich — takrorlash, jamoa).
9. Amaliy topshiriq
Vazifa 1: Bashorat qiling
1. # CRISP-DM nima?
2. # necha bosqich?
3. # birinchi bosqich?
4. # oxirgi bosqich?
5. # eng ko'p vaqt qaysi?
6. # necha % tayyorlash?
7. # biznes tushunish nima?
8. # baholash nima?
9. # tsiklik nima?
10. # nega iterativ?
11. # deploy nima?
12. # asosiy g'oya?Javoblar
- Data Science standart jarayoni (6 bosqich)
- 6 (biznes, ma'lumot, tayyorlash, model, baholash, deploy)
- Biznes tushunish (muammo, maqsad)
- Joriy etish (deploy)
- Ma'lumot tayyorlash (~45%)
- ~80% (tushunish + tayyorlash)
- Muammoni aniqlash (aniq savol)
- Maqsadga mosmi (biznes mezon, tsikl)
- Baholashdan boshiga qaytish (takroriy)
- Bir marta mukammal emas (asta yaxshilash)
- Modelni ishlab chiqarishga (real dunyo)
- Chalkashlikni tartibga solish
Vazifa 2: Xatolarni tuzating
1. model.fit(data) # muammosiz
2. # iflos ma'lumot model'ga
3. # "95% aniq!" (biznes emas)
4. # model noutbukda qoladi
5. # birinchi model mukammal debJavoblar
1. avval biznes/ma'lumot tushunish
2. tozalash + feature (80%)
3. biznes mezon (real qiymat)
4. deploy (API)
5. baseline → iteratsiyaVazifa 3: Bosqichlar
Modellang:
- Biznes
- Tayyorlash
- Model
- Deploy
Vazifa 4: Tushunish
Modellang:
- Biznes tushunish
- Ma'lumot tushunish
- Poydevor
- Avval nima
Vazifa 5: Vaqt
Modellang:
- Tayyorlash
- Model
- 80%
- Ko'rinmas
Vazifa 6: Iteratsiya
Modellang:
- Baseline
- Yaxshilash
- Tsikl
- Asta
Vazifa 7: O'ylash
CRISP-DM'da eng katta xato — muammoni tushunmasdan darhol model qurish (yosh Data Scientist'larning klassik xatosi). Nima uchun "to'g'ri savolni topish" (muammoni aniqlash) "javobni topish"dan (model qurish) qiyinroq va muhimroq, va nega noto'g'ri savolga mukammal javob ham foydasiz?
Javob
Qisqa javob: "To'g'ri savolni topish" javobdan qiyinroq va muhimroq, chunki: savol yo'nalishni belgilaydi (noto'g'ri savol → noto'g'ri yo'nalish, qanchalik zo'r model ham foydasiz); javob (model) texnik (algoritm, kod — o'rganiladi), savol tushunish (muammo, kontekst, biznes — chuqurroq); noto'g'ri savolga mukammal javob — noto'g'ri narsani mukammal hal qilish (befoyda). "Nega savol qiyinroq": (1) noaniq — muammo ko'pincha aniq emas ("savdo pasaydi" — nega? qaysi? model nima bashorat qilsin?); savolni aniqlash qiyin (tushunish, savol berish); (2) kontekst — savol biznes/soha bilimi talab qiladi (nima muhim, nima o'lchanadi); (3) javob mexanik — model qurish texnik (sklearn — algoritm), savol topish ijodiy; (4) noto'g'ri savol jim — noto'g'ri savolga model quriladi (ishlaydi), lekin noto'g'ri muammo (foydasiz — sezilmaydi). "Nega noto'g'ri savolga mukammal javob foydasiz": model savolga javob beradi (savol noto'g'ri → javob noto'g'ri narsa haqida); masalan "kim ko'p xarid qiladi?" (noto'g'ri) vs "kim ketadi?" (to'g'ri) — 99% aniq "ko'p xarid" modeli ketuvchini topmaydi (foydasiz). Bu umumiy tamoyil: to'g'ri savol — muvaffaqiyat yarmi (Einstein: "muammoni aniqlashga ko'proq vaqt"); javob (yechim) savolga bog'liq (noto'g'ri savol — behuda yechim). Data Science saboqlari: to'g'ri savol > javob (yo'nalish — model emas); savol qiyinroq (noaniq, kontekst, ijodiy); noto'g'ri savolga mukammal javob foydasiz (noto'g'ri muammo); muammodan boshla (CRISP-DM 1-bosqich). CRISP-DM misolida: biznes tushunish (savol) birinchi — model (javob) keyin.
1. Nega savol qiyinroq
- Noaniq (muammo aniq emas — aniqlash qiyin)
- Kontekst (biznes/soha bilimi)
- Javob mexanik (model — texnik), savol ijodiy
- Noto'g'ri savol jim (model quriladi, muammo noto'g'ri)
2. Nega noto'g'ri savolga javob foydasiz
- Model savolga javob beradi (noto'g'ri savol → noto'g'ri)
- Noto'g'ri narsani mukammal hal (befoyda)
- Misol: "ko'p xarid" vs "ketish" (turli model)
3. Savol vs javob
| Jihat | Savol | Javob (model) |
|---|---|---|
| Tabiat | Tushunish (biznes) | Texnik (algoritm) |
| Qiyinlik | Ijodiy (noaniq) | Mexanik (o'rganiladi) |
| Ta'sir | Yo'nalish (hal qiladi) | Savolga bog'liq |
4. To'g'ri savol — muvaffaqiyat yarmi
Einstein: muammoni aniqlashga ko'proq vaqt. Yechim savolga bog'liq (noto'g'ri savol — behuda).
5. Data Science saboqlari
- To'g'ri savol > javob (yo'nalish)
- Savol qiyinroq (noaniq, kontekst)
- Noto'g'ri savolga mukammal javob foydasiz
- Muammodan boshla (CRISP-DM 1-bosqich)
6. Xulosa
- To'g'ri savol qiyinroq/muhimroq (yo'nalish)
- Noto'g'ri savolga mukammal javob befoyda
- Savol — tushunish (biznes), javob — texnik
- Muammodan boshla (darhol model emas)
Nimani mustahkamlaydi: 2.2, 2.8-bo'limlar.
Xulosa
Bu darsda CRISP-DM ish oqimini o'rgandik.
Eng muhim uch fikr:
Olti bosqich va tushunish. CRISP-DM — Data Science standart jarayoni (olti bosqich): biznes tushunish, ma'lumot tushunish, ma'lumot tayyorlash, modellashtirish, baholash, joriy etish; muammodan boshlanadi (model emas), deploy bilan tugaydi, tsiklik. Biznes va ma'lumot tushunish — birinchi ikki bosqich (poydevor): biznes (muammo, maqsad — aniq savol), ma'lumot (yig'ish, sifat, naqsh — tanish); bu ikki butun loyihani belgilaydi, boshlovchilar o'tkazib yuboradi (darhol model — xato).
Tayyorlash, model, baholash, deploy. Ma'lumot tayyorlash (80% ish — tozalash, feature, kodlash, split → toza ma'lumot) va modellashtirish (algoritm, o'qitish, sozlash → model); model toza ma'lumotga muhtoj (garbage in, garbage out). Baholash (maqsadga mos-mi — biznes mezon, real vaziyat; yomon → 1-bosqichga qaytish) va joriy etish (deploy — API, monitoring, real dunyo); ko'p loyiha deploy'gacha yetmaydi (noutbukda qoladi — foydasiz).
Tsiklik va tartib. CRISP-DM tsiklik (iterativ) — bir marta emas, takroriy: baholash yomon → qaytish (yangi savol/ma'lumot/model); iteratsiya bilan yaxshilanadi (baseline → ko'proq feature → yaxshiroq algoritm), agile kabi. CRISP-DM — chalkashlikni tartibga soladi: murakkab loyihani boshqariladigan qiladi (6 bosqich, tartib, tsikl); muammodan boshlash (biznes — nima kerak), tayyorlashga vaqt (80%), deploy (real dunyo). To'g'ri savolni topish (muammo) javobdan (model) qiyinroq/muhimroq — noto'g'ri savolga mukammal javob ham foydasiz (noto'g'ri muammoni mukammal hal qilish).
Keyingi darsda statistik fikrlash asoslarini o'rganamiz: Data Science'ning tafakkur poydevori — namuna va populyatsiya, o'zgaruvchanlik, noaniqlik va ma'lumotdan xulosa chiqarish.
Izohlar (0)
Izoh yozish uchun kiring.
- Hozircha izoh yo'q. Birinchi bo'ling!