Mundarija (22)
- 1. Kirish va motivatsiya
- 2. Nazariya — chuqur tushuntirish
- 2.1. Bernulli taqsimoti
- 2.2. Binomial taqsimot
- 2.3. Poisson taqsimoti
- 2.4. Geometrik taqsimot
- 2.5. Binomial va Poisson aloqasi
- 2.6. Taqsimot tanlash qoidalari
- 2.7. Diskret taqsimot tuzoqlari
- 2.8. Diskret taqsimotlar — sanoq modellari
- 3. Tez ma'lumotnoma
- 4. Batafsil misollar
- Misol 1 — A/B test: binomial shovqin
- Misol 2 — Poisson: buyurtmalar va masshtablash
- Misol 3 — Geometrik: birinchi sotuvgacha
- Misol 4 — Binomial ≈ Poisson
- 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
9.7-dars: Diskret taqsimotlar
9-QISM — EHTIMOLLIK · 7-dars
1. Kirish va motivatsiya
4.5-darsda taqsimotlar bilan tanishdik. Endi Data Science'da eng ko'p uchraydigan diskret taqsimotlarni chuqur o'rganamiz: qachon qaysi biri, parametrlari nima, kutilma va dispersiyasi qanday, va real savollarga qanday javob beradi. Har bir taqsimot — ma'lum turdagi jarayonning modeli: to'g'ri modelni tanlash — to'g'ri xulosaning yarmi.
To'rt asosiy diskret taqsimot: Bernulli (bitta ha/yo'q tajriba — mijoz xarid qildimi), binomial (n ta mustaqil ha/yo'q tajribadagi muvaffaqiyatlar soni — 1000 tashrifdan nechta xarid; A/B test), Poisson (vaqt/makon birligidagi hodisalar soni — soatiga buyurtmalar, kuniga xatolar), geometrik (birinchi muvaffaqiyatgacha urinishlar — nechanchi qo'ng'iroqda sotuv). Qo'shimcha — gipergeometrik (qaytarmasdan tanlash, 9.2).
Real vaziyat. A/B test: eski sahifa konversiyasi 10%. Yangi sahifani 500 kishiga ko'rsatishdi — 62 ta xarid (12.4%). Menejer: "2.4% o'sish — yangi sahifa yaxshiroq!". Data Scientist binomial modeldan so'raydi: agar yangi sahifa ham aslida 10% bo'lsa, 500 kishidan 62 yoki undan ko'p xarid ehtimoli qancha? binom(500, 0.1).sf(61) ≈ 0.047. Ya'ni ~5% ehtimol bilan bu tasodif bo'lishi mumkin — dalil bor, lekin kuchli emas; testni davom ettirish kerak. Taqsimotni bilish — "shovqin"ni "signal"dan ajratadi.
Bu darsda diskret taqsimotlarni o'rganamiz.
Bu darsda:
- Bernulli taqsimoti
- Binomial taqsimot
- Poisson taqsimoti
- Geometrik taqsimot
- Binomial va Poisson aloqasi
- Taqsimot tanlash qoidalari
- Diskret taqsimot tuzoqlari
- Amaliy: A/B test, buyurtmalar, qo'ng'iroqlar
ℹ Misollar real numpy/scipy bilan (Python 3.14).
2. Nazariya — chuqur tushuntirish
2.1. Bernulli taqsimoti
X ~ Bernoulli(p) — bitta tajriba: 1 (muvaffaqiyat) yoki 0
P(X = 1) = p, P(X = 0) = 1 - p
E[X] = p
Var(X) = p × (1 - p) ← p = 0.5 da eng katta (eng noaniq)
Misollar: mijoz xarid qildi (0/1), email ochildi, tranzaksiya firibgar, klikBernulli — eng oddiy taqsimot, lekin hamma narsaning "g'ishti": binomial — Bernullilar yig'indisi, geometrik — Bernullilar ketma-ketligi. Kutilma = p (0/1 ustunning o'rtachasi — ulush!). Dispersiya p(1 - p) — p = 0.5 da maksimal: 50/50 hodisa eng noaniq. ML: binar klassifikatsiya nishoni (target) — Bernulli; logistik regressiya p ni modellaydi.
2.2. Binomial taqsimot
X ~ Binomial(n, p) — n ta MUSTAQIL Bernulli, bir xil p; X = muvaffaqiyatlar soni
P(X = k) = C(n, k) × p^k × (1 - p)^(n - k) (C — kombinatsiya, 9.2)
E[X] = n × p
Var(X) = n × p × (1 - p)
Shartlar: (1) n belgilangan, (2) har tajriba 0/1, (3) mustaqil, (4) p bir xil
Misol: 500 tashrif, p = 0.1 → E = 50, SD = sqrt(45) ≈ 6.7Binomial — "n tadan nechtasi": konversiyalar, nuqsonli mahsulotlar, to'g'ri javoblar. Formula: k ta muvaffaqiyat joylashuvi C(n, k) × har birining ehtimoli. Kutilma va dispersiya — n ta Bernulli yig'indisi (chiziqlilik va mustaqil dispersiya, 9.6). Ulush X / n: E = p, SD = sqrt(p(1 - p) / n) — A/B test va so'rovnomalar xatosi asosi. Shartlar buzilsa (mustaqil emas — bir oiladan; p har xil — segmentlar) — dispersiya kattaroq bo'ladi (overdispersion).
2.3. Poisson taqsimoti
X ~ Poisson(lambda) — belgilangan oraliqda (vaqt, makon) hodisalar soni
P(X = k) = lambda^k × e^(-lambda) / k!
E[X] = lambda
Var(X) = lambda ← kutilma = dispersiya (Poisson "imzosi")
Shartlar: hodisalar mustaqil, o'rtacha tezlik o'zgarmas, bir vaqtda ikkita yo'q
Misollar: soatiga buyurtmalar, kuniga server xatolari, sahifadagi imlo xatolariPoisson — "belgilangan oraliqda nechta" (yuqori chegara yo'q): buyurtmalar, qo'ng'iroqlar, avariyalar. Yagona parametr lambda — o'rtacha tezlik. Masshtablash: soatiga lambda = 5 → 8 soatda lambda = 40 (mustaqil Poissonlar yig'indisi — Poisson). Tekshiruv: ma'lumotda o'rtacha ≈ dispersiya bo'lishi kerak; dispersiya ancha katta bo'lsa (overdispersion — "to'lqinli" talab, dam olish kunlari) — Poisson mos emas → manfiy binomial. 9.5-darsdagi kuryer misoli — Poisson.
2.4. Geometrik taqsimot
X ~ Geometric(p) — birinchi muvaffaqiyatgacha urinishlar soni (1, 2, 3, ...)
P(X = k) = (1 - p)^(k - 1) × p
E[X] = 1 / p
P(X > k) = (1 - p)^k ← "k ta urinishda hali muvaffaqiyat yo'q"
Misol: sotuvchi qo'ng'irog'i, p = 0.05 → o'rtacha 20 qo'ng'iroqda birinchi sotuv
Xotirasizlik: allaqachon 10 ta muvaffaqiyatsiz — kelgusi kutish yana 1/p Geometrik — "qachon birinchi marta": nechanchi qo'ng'iroqda sotuv, nechanchi urinishda login, mijoz nechanchi tashrifda xarid qiladi. Kutilma 1/p — intuitiv: 5% ehtimol → o'rtacha 20 urinish. Xotirasizlik: oldingi muvaffaqiyatsizliklar kelajakni o'zgartirmaydi (o'yinchi xatosining teskarisi, 9.1). Diqqat: scipy geom 1 dan boshlab sanaydi (urinishlar soni); ba'zi manbalar "muvaffaqiyatsizliklar soni" (0 dan) ishlatadi.
2.5. Binomial va Poisson aloqasi
Poisson — binomialning chegaraviy holati: n katta, p kichik, n × p = lambda o'rtacha bo'lsa, Binomial(n, p) ≈ Poisson(n × p). Misol: 10 000 mijoz, har biri 0.05% ehtimol bilan shikoyat yozadi → Binomial(10 000, 0.0005) ≈ Poisson(5). Amaliy ma'nosi: "ko'p imkoniyat, har birida kam ehtimol" — Poisson; n noma'lum bo'lsa ham (saytga necha kishi kirishi aniq emas) faqat o'rtacha tezlik bilan modellash mumkin. Katta n va o'rta p da ikkalasi ham normalga yaqin (MLT, 4.7).
2.6. Taqsimot tanlash qoidalari
SAVOL TAQSIMOT
bitta ha/yo'q? Bernoulli(p)
n ta ha/yo'qdan nechtasi? (n ma'lum) Binomial(n, p)
oraliqda nechta hodisa? (yuqori chegara yo'q) Poisson(lambda)
birinchi muvaffaqiyatgacha nechta urinish? Geometric(p)
qaytarmasdan tanlashda nechta "maxsus"? Hypergeometric(N, K, n)
dispersiya >> o'rtacha (sanoq)? Manfiy binomialTanlash — jarayonning tabiatidan: nimani sanayapmiz? n chegarasi bormi? tajribalar mustaqilmi? Keyin ma'lumot bilan tekshirish: kutilma/dispersiya nisbati (Poisson: ≈ 1; binomial: np(1 - p)), empirik PMF va nazariy PMF solishtirish 9.5-bob, grafik. Model — soddalashtirish; "barcha modellar noto'g'ri, ba'zilari foydali" (G. Box).
2.7. Diskret taqsimot tuzoqlari
Asosiy tuzoqlar: mustaqillik buzilishi (bir foydalanuvchining ko'p tashrifi — binomial xatosi kam baholanadi; tashrif emas, foydalanuvchi darajasida tahlil); p o'zgaruvchan (segmentlar aralash — overdispersion); Poisson'ni o'rtacha ≠ dispersiya ma'lumotga qo'llash (dam olish kunlari cho'qqisi — 95% sig'im kam baholanadi); sf chegarasi (P(X ≥ 62) = sf(61), sf(62) emas); geom indeksatsiyasi (1 dan yoki 0 dan); kichik farqni signal deb o'qish (12.4% vs 10% — binomial shovqin ichida bo'lishi mumkin); binomial'ni katta ulushda qaytarmasdan tanlashga (N kichik → gipergeometrik).
2.8. Diskret taqsimotlar — sanoq modellari
Diskret taqsimotlar: Bernulli (0/1, E = p, Var = p(1 - p)); binomial (n tadan nechta: E = np, Var = np(1 - p); A/B test, ulush xatosi); Poisson (oraliqda nechta: E = Var = lambda; talab, xatolar; masshtablanadi); geometrik (birinchi muvaffaqiyatgacha: E = 1/p; xotirasiz); Poisson ≈ binomial (n katta, p kichik); tanlash — jarayon tabiatidan, tekshirish — ma'lumotdan (o'rtacha/dispersiya, PMF). Bog'lanishlar: 9.2 (C(n, k)), 9.5 (scipy interfeysi), 9.6 (E, Var), 11-qism (A/B test, proporsiya testi), ML (logistik regressiya — Bernulli, Poisson regressiya).
3. Tez ma'lumotnoma
from scipy import stats
stats.bernoulli(0.1) # 0/1
stats.binom(n=500, p=0.1) # n tadan nechta
stats.poisson(mu=20) # oraliqda nechta
stats.geom(p=0.05) # birinchi muvaffaqiyatgacha (1 dan)
stats.hypergeom(M=100, n=5, N=10) # M jami, n maxsus, N tanlov
X = stats.binom(500, 0.1)
X.mean(), X.var() # 50, 45
X.pmf(50) # P(X = 50)
X.sf(61) # P(X >= 62) ← sf(k) = P(X > k)
X.ppf([0.025, 0.975]) # 95% oraliq
# Poisson tekshiruvi
s.mean(), s.var() # yaqinmi?
QOIDA: nimani sanaymiz? · n bormi? · mustaqilmi? · o'rtacha ≈ dispersiya?Diskret taqsimotlar xulosasi
Bernoulli(p) — 0/1; E = p, Var = p(1-p)
Binomial(n, p) — n tadan nechta; E = np, Var = np(1-p)
Poisson(lambda) — oraliqda nechta; E = Var = lambda
Geometric(p) — birinchi muvaffaqiyatgacha; E = 1/p; xotirasiz
n katta, p kichik: Binomial ≈ Poisson(np)
P(X >= k) = sf(k - 1)4. Batafsil misollar
Misollar real numpy/scipy bilan (Python 3.14).
Misol 1 — A/B test: binomial shovqin
"""Binomial: 500 tashrifdan 62 xarid — signalmi yoki shovqinmi? (real scipy/numpy)."""
import numpy as np
from scipy import stats
def main() -> None:
n, p0, kuzatildi = 500, 0.10, 62
X = stats.binom(n, p0)
print("=== 1. Eski konversiya (10%) bo'lsa, 500 kishidan ===")
print(f" E = {X.mean():.0f}, SD = {X.std():.2f}")
a, b = X.ppf([0.025, 0.975])
print(f" 95% oraliq: {a:.0f}..{b:.0f} xarid")
print("\n=== 2. 62 yoki undan ko'p xarid ehtimoli ===")
print(f" P(X >= 62) = sf(61) = {X.sf(kuzatildi - 1):.4f}")
print(f" (xato: sf(62) = {X.sf(kuzatildi):.4f})")
print("\n=== 3. Ulush xatosi ===")
se = np.sqrt(p0 * (1 - p0) / n)
print(f" SE(ulush) = {se:.4f} → 12.4% farqi {(0.124 - p0) / se:.2f} SE")
print("\n=== 4. 5000 kishida xuddi shu 12.4% ===")
X2 = stats.binom(5000, p0)
print(f" P(X >= 620) = {X2.sf(619):.2e}")
print(" ⭐ Katta n — kichik farq ham ishonchli")
if __name__ == "__main__":
main()Natijaning muhim qismi:
=== 1. Eski konversiya (10%) bo'lsa, 500 kishidan ===
E = 50, SD = 6.71
95% oraliq: 37..64 xarid
=== 2. 62 yoki undan ko'p xarid ehtimoli ===
P(X >= 62) = sf(61) = 0.0465
(xato: sf(62) = 0.0344)
=== 3. Ulush xatosi ===
SE(ulush) = 0.0134 → 12.4% farqi 1.79 SE
=== 4. 5000 kishida xuddi shu 12.4% ===
P(X >= 620) = 2.41e-08
⭐ Katta n — kichik farq ham ishonchliNima ko'rsatdi: 2.2, 2.7-bo'limlar.
Misol 2 — Poisson: buyurtmalar va masshtablash
"""Poisson: soatlik buyurtmalar, masshtablash, E = Var tekshiruvi (real numpy/scipy)."""
import numpy as np
from scipy import stats
def main() -> None:
soatlik = 5
print("=== 1. Soatiga lambda = 5 ===")
X = stats.poisson(soatlik)
for k in [0, 5, 10]:
print(f" P(X = {k:>2}) = {X.pmf(k):.4f}")
print(f" P(X >= 10) = {X.sf(9):.4f}")
print("\n=== 2. 8 soatlik smena: lambda = 40 ===")
Y = stats.poisson(soatlik * 8)
print(f" 95% smenani qoplash: {Y.ppf(0.95):.0f} buyurtma")
print("\n=== 3. Ma'lumot bilan tekshirish ===")
rng = np.random.default_rng(0)
toza = rng.poisson(40, 300)
# to'lqinli talab: dam olish kunlari 2 baravar
lam = np.where(np.arange(300) % 7 >= 5, 70, 28)
tolqin = rng.poisson(lam)
for nom, s in [("barqaror", toza), ("to'lqinli", tolqin)]:
print(f" {nom:>9}: o'rtacha {s.mean():.1f}, dispersiya {s.var(ddof=1):.1f}")
print(" ⭐ Poisson: o'rtacha ≈ dispersiya; aks holda — boshqa model")
if __name__ == "__main__":
main()Natijaning muhim qismi:
=== 1. Soatiga lambda = 5 ===
P(X = 0) = 0.0067
P(X = 5) = 0.1755
P(X = 10) = 0.0181
P(X >= 10) = 0.0318
=== 2. 8 soatlik smena: lambda = 40 ===
95% smenani qoplash: 51 buyurtma
=== 3. Ma'lumot bilan tekshirish ===
barqaror: o'rtacha 40.9, dispersiya 42.9
to'lqinli: o'rtacha 39.9, dispersiya 429.2
⭐ Poisson: o'rtacha ≈ dispersiya; aks holda — boshqa modelNima ko'rsatdi: 2.3, 2.6-bo'limlar.
Misol 3 — Geometrik: birinchi sotuvgacha
"""Geometrik: birinchi muvaffaqiyatgacha urinishlar va xotirasizlik (real numpy/scipy)."""
import numpy as np
from scipy import stats
def main() -> None:
p = 0.05
G = stats.geom(p)
print("=== 1. Sotuvchi qo'ng'iroqlari (p = 5%) ===")
print(f" o'rtacha: {G.mean():.0f} qo'ng'iroq")
print(f" median: {G.median():.0f} qo'ng'iroq")
print(f" 10 ta ichida sotuv: {G.cdf(10):.3f}")
print(f" 50 tadan ham ko'p kerak: {G.sf(50):.3f}")
print("\n=== 2. Xotirasizlik (simulyatsiya) ===")
rng = np.random.default_rng(1)
x = rng.geometric(p, 1_000_000)
qoldiq = x[x > 10] - 10
print(f" hammasi uchun o'rtacha: {x.mean():.2f}")
print(f" 10 ta muvaffaqiyatsizdan keyin qolgan o'rtacha: {qoldiq.mean():.2f}")
print("\n=== 3. p oshsa ===")
for p2 in [0.02, 0.05, 0.10, 0.25]:
print(f" p = {p2:.2f}: o'rtacha {1 / p2:.0f} urinish")
print(" ⭐ E = 1/p; oldingi omadsizlik kelajakni o'zgartirmaydi")
if __name__ == "__main__":
main()Natijaning muhim qismi:
=== 1. Sotuvchi qo'ng'iroqlari (p = 5%) ===
o'rtacha: 20 qo'ng'iroq
median: 14 qo'ng'iroq
10 ta ichida sotuv: 0.401
50 tadan ham ko'p kerak: 0.077
=== 2. Xotirasizlik (simulyatsiya) ===
hammasi uchun o'rtacha: 19.96
10 ta muvaffaqiyatsizdan keyin qolgan o'rtacha: 19.95
=== 3. p oshsa ===
p = 0.02: o'rtacha 50 urinish
p = 0.05: o'rtacha 20 urinish
p = 0.10: o'rtacha 10 urinish
p = 0.25: o'rtacha 4 urinish
⭐ E = 1/p; oldingi omadsizlik kelajakni o'zgartirmaydiNima ko'rsatdi: 2.4-bo'lim.
Misol 4 — Binomial ≈ Poisson
"""Binomial(n, p) ≈ Poisson(np): n katta, p kichik (real scipy)."""
from scipy import stats
def main() -> None:
print("=== 1. 10 000 mijoz, shikoyat ehtimoli 0.05% ===")
B = stats.binom(10_000, 0.0005)
P = stats.poisson(5)
print(" k binomial poisson")
for k in [0, 3, 5, 8, 12]:
print(f" {k:>2} {B.pmf(k):.5f} {P.pmf(k):.5f}")
print("\n=== 2. p katta bo'lsa yaqinlik yo'qoladi ===")
for n, p in [(10_000, 0.0005), (100, 0.05), (10, 0.5)]:
B2, P2 = stats.binom(n, p), stats.poisson(n * p)
farq = max(abs(B2.pmf(k) - P2.pmf(k)) for k in range(n + 1))
print(f" n={n:>6}, p={p:<6}: max farq {farq:.4f}")
print("\n=== 3. Dispersiya ===")
print(f" binomial: np(1-p) = {B.var():.4f}, poisson: np = {P.var():.4f}")
print(" ⭐ Ko'p imkoniyat × kichik ehtimol → Poisson")
if __name__ == "__main__":
main()Natijaning muhim qismi:
=== 1. 10 000 mijoz, shikoyat ehtimoli 0.05% ===
k binomial poisson
0 0.00673 0.00674
3 0.14037 0.14037
5 0.17551 0.17547
8 0.06527 0.06528
12 0.00343 0.00343
=== 2. p katta bo'lsa yaqinlik yo'qoladi ===
n= 10000, p=0.0005: max farq 0.0000
n= 100, p=0.05 : max farq 0.0046
n= 10, p=0.5 : max farq 0.0706
=== 3. Dispersiya ===
binomial: np(1-p) = 4.9975, poisson: np = 5.0000
⭐ Ko'p imkoniyat × kichik ehtimol → PoissonNima ko'rsatdi: 2.5-bo'lim.
5. To'g'ri va noto'g'ri tushunishlar
| Noto'g'ri fikr | To'g'risi |
|---|---|
| "12.4% > 10% — yangi sahifa yaxshi" | Binomial shovqinni tekshiring |
| "P(X >= k) = sf(k)" | sf(k - 1) |
| "Har qanday sanoq — Poisson" | O'rtacha ≈ dispersiya kerak |
| "Tashriflar mustaqil" | Bir foydalanuvchi — bog'liq |
| "10 ta omadsizlikdan keyin muvaffaqiyat yaqin" | Geometrik xotirasiz |
| "Binomial va Poisson — butunlay boshqa" | n katta, p kichik — yaqin |
| "p = 0.5 — eng oson bashorat" | Eng noaniq (Var maksimal) |
| "Taqsimot — faqat nazariya" | Jarayon modeli (tanlash + tekshirish) |
6. Keng tarqalgan xatolar va yechimlari
1. sf chegarasi
p = X.sf(62) # P(X > 62) # ⚠️
p = X.sf(61) # P(X >= 62) # ✅2. Poisson'ni tekshirmasdan
model = stats.poisson(s.mean()) # ⚠️
print(s.mean(), s.var()) # avval tekshiring # ✅3. Ulush xatosini unutish
print("yangi yaxshi:", 0.124 > 0.10) # ⚠️
se = np.sqrt(0.1 * 0.9 / 500); print((0.124 - 0.1) / se) # ✅4. Tashrif darajasida binomial
n = tashriflar_soni # bir kishi ko'p marta # ⚠️
n = foydalanuvchilar_soni # mustaqil birlik # ✅5. Masshtablashda lambda
Y = stats.poisson(5) # 8 soatlik smena uchun # ⚠️
Y = stats.poisson(5 * 8) # ✅6. geom indeksi
muvaffaqiyatsiz = stats.geom(p).mean() # 1/p — urinishlar # ⚠️
muvaffaqiyatsiz = stats.geom(p).mean() - 1 # (1 - p)/p # ✅7. Kichik to'plamda binomial
stats.binom(10, 5 / 20) # 20 tadan 10 tasi, qaytarmasdan # ⚠️
stats.hypergeom(M=20, n=5, N=10) # ✅7. Integratsiya — bu bilim qayerda kerak bo'ladi
- 4.5-dars (o'tilgan): Taqsimotlar bilan tanishuv
- 9.2-dars (o'tilgan): Kombinatsiya (binomial formula)
- 9.5-9.6-darslar (o'tilgan): scipy interfeysi, E va Var
- 11-qism (reja): A/B test, proporsiya testi, xi-kvadrat
- ML qismlari: Logistik regressiya (Bernulli), Poisson regressiya
8. Eng yaxshi amaliyotlar
Taqsimotni jarayon tabiatidan tanlang.
Ma'lumot bilan tekshiring (o'rtacha, dispersiya, PMF).
Mustaqil birlikni to'g'ri aniqlang.
"k yoki ko'p" — sf(k - 1).
Farqni SE bilan o'lchang.
Poisson'ni vaqt oralig'iga masshtablang.
Qaytarmasdan kichik to'plam — gipergeometrik.
Natijani simulyatsiya bilan tekshiring.
9. Amaliy topshiriq
Vazifa 1: Bashorat qiling
1. # Bernoulli(0.3) E va Var?
2. # Binomial(100, 0.2) E?
3. # Binomial(100, 0.2) Var?
4. # Poisson(7) Var?
5. # Geometric(0.1) E?
6. # soatiga 3 → kuniga (24 soat) lambda?
7. # P(X >= 10) scipy'da?
8. # "1000 mijozdan nechtasi qaytadi" — qaysi?
9. # "kuniga nechta avariya" — qaysi?
10. # "nechanchi urinishda parol topiladi" — qaysi?
11. # binomial ≈ Poisson qachon?
12. # o'rtacha 20, dispersiya 80 — Poisson mosmi?Javoblar
- 0.3 va 0.21
- 20
- 16
- 7
- 10
- 72
- X.sf(9)
- Binomial
- Poisson
- Geometrik
- n katta, p kichik
- Yo'q (overdispersion)
Vazifa 2: Xatolarni tuzating
1. p = stats.binom(200, 0.1).sf(30) # P(X >= 30)
2. model = stats.poisson(s.mean()) # s.var() = 5 × s.mean()
3. stats.poisson(4) # soatiga 4, hafta (40 ish soati)
4. stats.binom(8, 3 / 12) # 12 tadan 8 tasi qaytarmasdan, 3 ta maxsus
5. print(0.13 > 0.11) # A/B natijasi, n = 300Javoblar
1. p = stats.binom(200, 0.1).sf(29)
2. # manfiy binomial yoki segmentlarga ajratish
3. stats.poisson(4 * 40)
4. stats.hypergeom(M=12, n=3, N=8)
5. se = np.sqrt(0.11 * 0.89 / 300); print((0.13 - 0.11) / se)Vazifa 3: A/B test
Modellang:
- Nazorat 8%, test 1200 kishi, 115 xarid
- P(X >= 115) nazorat bo'lsa
- 95% oraliq
- Qancha n kerak bo'lardi
Vazifa 4: Qo'ng'iroq markazi
Modellang:
- Soatiga 30 qo'ng'iroq (Poisson)
- 95% soatni qoplash
- Ma'lumotda dispersiya tekshiruvi
- Tushlik cho'qqisi (to'lqinli talab)
Vazifa 5: Sotuv voronkasi
Modellang:
- Qo'ng'iroq muvaffaqiyati 4% (geometrik)
- Kuniga 60 qo'ng'iroq — kamida bitta sotuv
- Kuniga sotuvlar soni (binomial)
- Simulyatsiya bilan tekshirish
Vazifa 6: Integratsiya
Modellang:
- Kombinatsiya (9.2)
- Kutilma/dispersiya (9.6)
- scipy cdf/sf/ppf (9.5)
- Empirik PMF solishtirish
Vazifa 7: O'ylash
Ikki do'kon filiali: A — 20 ta tashrifdan 5 ta xarid (25%), B — 2000 ta tashrifdan 400 ta xarid (20%). Menejer A filialni "eng yaxshi" deb mukofotlamoqchi. Binomial taqsimot nuqtai nazaridan bu qaror nima uchun xavfli? Kichik namunalar reyting jadvallarida (eng yaxshi/eng yomon filial, maktab, shifokor) qanday xatoga olib keladi?
Javob
Qisqa javob: A filialning 25% i atigi 20 kuzatuvdan — binomial shovqin juda katta (SE ≈ 9.7%), haqiqiy konversiya 10% dan 45% gacha bo'lishi mumkin. B ning 20% i 2000 kuzatuvdan — SE ≈ 0.9%. Kichik namunalar tasodifan eng yuqori va eng past o'rinlarni egallaydi: reyting jadvalining ikki chekkasida doim kichik birliklar turadi.
1. Noaniqlik
| Filial | n | Ulush | SE | ~95% oraliq |
|---|---|---|---|---|
| A | 20 | 25% | 9.7% | 6%..44% |
| B | 2000 | 20% | 0.9% | 18%..22% |
2. Kichik namuna paradoksi
- Kichik maktablar "eng yaxshi" va "eng yomon" ro'yxatlarida ham ko'p (Gates fondi misoli)
- Kichik tumanlarda kasallik darajasi eng yuqori ham, eng past ham
- Sabab: dispersiya p(1-p)/n — kichik n da katta tebranish
3. Oqibatlari
- Tasodifni "mahorat" deb mukofotlash
- Keyingi davrda natija o'rtachaga qaytadi (regressiya) — "mukofot yomonlashtirdi" degan xato xulosa
- Resurslarni noto'g'ri taqsimlash
4. Data Scientist qanday
- Har bir reytingda n va ishonch oralig'ini ko'rsatadi
- Kichik birliklarni umumiy o'rtachaga "tortadi" (Bayescha qisqartirish — shrinkage)
- Minimal n chegarasini qo'yadi
- Bir necha davr bo'yicha barqarorlikni tekshiradi
5. Xulosa
- Ulush — n bilan birga ma'noga ega
- Kichik namuna — ekstremal natijalarga moyil
- Reyting chekkalari — ko'pincha shovqin
- Ishonch oralig'i va shrinkage — halol taqqoslash
Nimani mustahkamlaydi: 2.2, 2.7-bo'limlar.
Xulosa
Bu darsda diskret taqsimotlarni o'rgandik.
Eng muhim uch fikr:
To'rt model. Bernulli (0/1; E = p, Var = p(1 - p)); binomial (n tadan nechta; E = np, Var = np(1 - p)); Poisson (oraliqda nechta; E = Var = lambda; vaqtga masshtablanadi); geometrik (birinchi muvaffaqiyatgacha; E = 1/p; xotirasiz). n katta, p kichik: binomial ≈ Poisson(np).
Signal va shovqin. Binomial shovqin: ulush SE = sqrt(p(1 - p) / n); kichik n da katta farq ham tasodif bo'lishi mumkin (12.4% vs 10%, n = 500 → P ≈ 0.047); reyting chekkalarida kichik birliklar. scipy'da P(X ≥ k) =
sf(k - 1).Tanlash va tekshirish. Taqsimotni jarayon tabiatidan tanlang (nimani sanaymiz, n bormi, mustaqilmi), keyin ma'lumot bilan tekshiring: Poisson uchun o'rtacha ≈ dispersiya (aks holda overdispersion — manfiy binomial, segmentlar); mustaqil birlik — foydalanuvchi, tashrif emas.
Keyingi darsda uzluksiz taqsimotlarni o'rganamiz: tekis, eksponensial (kutish vaqti — Poisson'ning "egizagi"), normal va log-normal (narx, daromad), va ma'lumotga taqsimot moslash (fit) hamda uni tekshirish.
Izohlar (0)
Izoh yozish uchun kiring.
- Hozircha izoh yo'q. Birinchi bo'ling!