Formüller ve kolay yollar
Python · 97
Bu kurstaki tüm formüller ve onları hatırlamanın kolay yolları tek sayfada.
1Fonksiyonlar ve modüllerOrta
Fonksiyonlar
Derse git- FFahrenheit derecesi cinsinden sıcaklık
- CSantigrat (Celsius) derecesi cinsinden sıcaklık
Bu formülü bir fonksiyona dönüştürelim
2Derinlemesine Pythonİleri
Yineleyiciler ve üreteçler
Derse gitDekoratörler ve kapanışlar
Derse gitBağlam yöneticileri ve with deyimi
Derse gitTip ipuçları ve dataclass'lar
Derse gitİleri NYP: özel metotlar, özellikler ve MRO
Derse gitDüzenli ifadeler: re modülü
Derse gitAsenkron Python: async ve await
Derse gitPaketler, modüller ve sanal ortamlar
Derse gitPerformans, Büyük O ve collections modülü
Derse git3Web ve otomasyonİleri
JSON ve CSV ile çalışmak
Derse gitWeb API'leri ve requests kütüphanesi
Derse gitFastAPI ile web servisi
Derse gitOtomasyon betikleri
Derse git4Veri bilimi: NumPy, pandas, matplotlibÜniversite
NumPy'ın temelleri: diziler
Derse git- neksen sayısı (
ndim) - dₖk. eksen boyunca uzunluk (
shapeiçindeki bir değer) - itemsizebir elemanın bayt cinsinden boyutu:
float64veint64için 8,float32veint32için 4,boolveint8için 1
Şekli (2, 3) olan m için size = 2 · 3 = 6. temps için nbytes = 4 · 8 = 32 bayt.
- h
linspacenoktaları arasındaki adım - n
arangedizisindeki eleman sayısı - ⌈ ⌉yukarı yuvarlama (tavan)
np.linspace(0, 1, 5): h = 1 / 4 = 0,25. np.arange(0, 10, 2): n = ⌈10 / 2⌉ = 5 eleman.
- x̄aritmetik ortalama (
mean) - ndeğer sayısı
- σstandart sapma (
std): değerlerin ortalamadan tipik olarak ne kadar uzaklaştığı - ddof0 — ana kütle için (NumPy'da varsayılan), 1 — örneklem için (yansız varyans)
np.std varsayılan olarak n'ye böler; istatistik kitapları ve pandas'taki Series.std ise n − 1'e böler. Aynı sonucu almak için ddof=1 ver.
NumPy: vektörleştirme ve doğrusal cebir
Derse git- xᵢⱼi. örneğin j. özniteliği
- μⱼ, σⱼj. sütunun ortalaması ve standart sapması
- zᵢⱼstandartlaştırılmış değer (z-puanı): ortalaması 0, standart sapması 1
- aᵢₖA matrisinin i. satır, k. sütun elemanı
- bₖⱼB matrisinin k. satır, j. sütun elemanı
- nA'nın sütun ve B'nin satır sayısı (ortak)
- det Adeterminant; 0 ise matris tekildir ve tersi yoktur
- A⁻¹ters matris: A · A⁻¹ = I (birim matris)
- vözvektör (v ≠ 0)
- λözdeğer
- Ibirim matris
İkinci eşitlik karakteristik denklemdir: (A − λI)v = 0 sisteminin sıfırdan farklı bir çözümü ancak determinant 0 olduğunda vardır.
- Xn × d öznitelik matrisi (ilk sütun birlerden oluşur)
- yhedef değerler vektörü
- wkaresel hataların toplamını en küçük yapan katsayılar
pandas'ın temelleri: Series ve DataFrame
Derse git- qdüzey: 0,25 (birinci çeyrek), 0,5 (medyan), 0,75 (üçüncü çeyrek)
- x₍ₖ₎artan sırada dizildikten sonraki k. değer (0'dan sayarak)
- hsıralanmış verideki “kesirli konum”
pandas ve NumPy varsayılan olarak nicelikleri iki komşu değer arasında doğrusal enterpolasyonla hesaplar.
pandas ile veri analizi
Derse git- xᵢi. grubun ortalaması (örneğin ortalama fiş tutarı)
- wᵢgrubun ağırlığı: genellikle gözlem sayısı
Ağırlıklı ortalama. pandas'ta: np.average(x, weights=w) ya da yalnızca genel toplamı genel sayıya bölmek.
- xₜmevcut dönemin değeri
- xₜ₋₁önceki dönemin değeri
Büyüme oranı; pandas'ta pct_change() bunu hesaplar (100 ile çarpmadan). İlk dönemin önceki değeri olmadığı için NaN çıkar.
matplotlib ile görselleştirme
Derse git- kkutu sayısı (Sturges kuralı)
- hkutu genişliği (Freedman–Diaconis kuralı), verinin biriminde
- ngözlem sayısı
- IQRçeyrekler açıklığı Q3 − Q1
Sturges, yaklaşık normal ve çok büyük olmayan veriler için uygundur; Freedman–Diaconis aykırı değerlere karşı dayanıklıdır. ax.hist(x, bins='fd') ikincisini otomatik uygular.
- nᵢi. kutuya düşen gözlemler
- fᵢ
density=Trueile çubuk yüksekliği (yoğunluk) - hkutu genişliği
ax.hist(x, density=True) çubuk alanlarının toplamını 1 yapar; böyle bir histogram bir olasılık yoğunluğu eğrisiyle karşılaştırılabilir.
Python ile istatistik
Derse git- nörneklem büyüklüğü
- s²örneklem varyansı (birimi verinin biriminin karesi)
- sörneklem standart sapması (veriyle aynı birimde); NumPy'da
std(ddof=1)
- Q1, Q3birinci ve üçüncü çeyrek (%25 ve %75)
- IQRQ3 − Q1, verinin orta yarısının genişliği
Tukey kuralı: bu aralığın dışındaki değerler aykırı değer sayılır. Burada: 14,75 + 1,5 · 1,75 = 17,375, yani 45 aykırı bir değerdir.
- μdağılımın ortalaması
- σstandart sapma (σ > 0)
- f(x)olasılık yoğunluğu; P(a < X < b), a ile b arasında eğrinin altındaki alandır
- zz-puanı: standart normal dağılımdaki (μ = 0, σ = 1) konum
- SEortalamanın standart hatası
- σ, sana kütlenin ve örneklemin standart sapması
- t*t-dağılımının kritik değeri; %95 için α = 0,05
- n − 1serbestlik derecesi
Ortalama için %95 güven aralığı. stats.t.ppf(0.975, df=n - 1) t* değerini, stats.t.interval ise aralığın tamamını döndürür.
- x̄₁, x̄₂grup ortalamaları
- s₁², s₂²grupların örneklem varyansları
- n₁, n₂grup büyüklükleri
Welch t istatistiği: ortalamaların farkının kendi standart hatasına bölümü. |t| ne kadar büyükse p o kadar küçüktür.
- r−1 ≤ r ≤ 1; işaret yönü, |r| gücü gösterir
- x̄, ȳher değişkenin ortalaması
scikit-learn ile makine öğrenmesi
Derse git- yᵢ, ŷᵢgerçek değer ve tahmin
- RMSEhedefle aynı birimde tipik hata (burada bin manat)
- R²açıklanan değişimin payı: 1 mükemmel, 0 her zaman ortalamayı tahmin eden modelin düzeyi
Model 1,48 ve 11,06 katsayılarını buldu; gerçek 1,5 ve 12'ye yakın. RMSE ≈ 9,8, eklediğimiz gürültünün (σ = 10) düzeyidir: model sinyali tamamen yakaladı, gürültü ise tahmin edilemez.
- σ(z)sigmoid: her sayıyı (0; 1) aralığına taşır, σ(0) = 0,5
- pörneğin pozitif sınıfa ait olma olasılığı; p ≥ 0,5 olduğunda “1” tahmin edilir
- pₖdüğümdeki k sınıfının payı
- G0 saf bir düğüm demektir (tek sınıf); iki sınıf için en fazla 0,5
- nL, nRsol ve sağ alt düğümlerdeki örnek sayısı
- Precisionspam dediğimiz iletilerin ne kadarı gerçekten spam
- Recalltüm spamin ne kadarını yakalayabildik
- F1kesinlik ve duyarlılığın harmonik ortalaması
- Ntoplam örnek sayısı
- kkat sayısı, genellikle 5 ya da 10
- scoreᵢi. kat test kümesiyken elde edilen skor
5Yapay zekâ ve PyTorch ile derin öğrenmeÜniversite
Makine öğrenmesinin temel kavramları
Derse git- nörnek sayısı
- yᵢi. örneğin gerçek değeri (etiket)
- ŷᵢmodelin tahmini
Ortalama karesel hata (mean squared error). Kare alma, büyük hataları çok daha ağır cezalandırır; birimi etiketin biriminin karesidir.
- Ksınıf sayısı
- yₖk sınıfı doğruysa 1, değilse 0 (one-hot)
- pₖmodelin k sınıfına verdiği olasılık
- pₜdoğru sınıfın olasılığı
Çapraz entropi (cross-entropy). İki sınıf için: BCE = −[y · ln p + (1 − y) · ln(1 − p)]. Doğru sınıfın olasılığı 1'e yaklaştıkça kayıp 0'a yaklaşır.
- θmodelin tüm parametreleri (ağırlıklar ve sapmalar)
- ηöğrenme oranı, genellikle 0,0001–0,1
- ∇L(θ)gradyan: kaybın her parametreye göre kısmi türevlerinden oluşan vektör
Gradyan inişinin güncelleme kuralı. Her tekrar bir adımdır; eğitim kümesinden bir kez tam geçişe epok (dönem) denir.
- w, bdoğrunun eğimi (ağırlık) ve sabit terimi (sapma)
- ŷᵢ − yᵢi. örnekteki hata
- f̂(x)rastgele bir eğitim kümesiyle eğitilmiş modelin tahmini
- Biasyanlılık: modelin fazla basit varsayımlarından doğan ortalama hata
- Varvaryans: tahminin belirli eğitim kümesine ne kadar bağlı olduğu
- σ²verideki giderilemeyen gürültü
MSE'nin yanlılık–varyans ayrışımı. Model karmaşıklaştıkça yanlılık azalır, varyans artar; en iyi model toplamı en küçük yapar.
- λdüzenlileştirme gücü (doğrulama kümesiyle seçilen bir hiperparametre)
- ∑ⱼ θⱼ²ağırlıkların karelerinin toplamı; büyük ağırlıkları cezalandırır
L2 düzenlileştirme (weight decay): model daha “pürüzsüz” fonksiyonları tercih eder ve gürültüyü ezberlemeye daha az yatkın olur.
PyTorch: tensörler
Derse git- d₁ … dₖshape'teki boyutlar
- numeleleman sayısı (
x.numel()) - sbir elemanın bayt cinsinden boyutu (
x.element_size())
- A, Bboyutları m × n ve n × p olan matrisler
- niç boyut; iki matriste de aynı olmalıdır
- CᵢⱼA'nın i. satırı ile B'nin j. sütununun iç çarpımı
Matris çarpımı sinir ağlarının temel işlemidir: (N, D) boyutlu girdileri (D, K) boyutlu ağırlık matrisiyle çarparak tüm yığını tek seferde işleriz. Daha çok eksenli tensörlerde @ son iki eksene uygulanır, diğer eksenler yığın ekseni sayılır.
PyTorch: autograd ve otomatik türev
Derse git- Lkayıp (grafın kökü)
- y, ŷara değerler (grafın iç düğümleri)
- x, wyapraklar: girdiler ve parametreler
Bileşik bir fonksiyonun türevi, yerel türevlerin çarpımına eşittir. Bir değişken kaybı birkaç yol üzerinden etkiliyorsa tüm yollardaki çarpımlar toplanır: ∂L/∂x = ∑ₖ ∂L/∂yₖ · ∂yₖ/∂x.
- σ(z)sigmoid fonksiyonu, değerleri (0; 1) aralığında
- σ′(z)türevi; en büyük değeri z = 0'da 0,25'tir
İspat: σ′(z) = e⁻ᶻ / (1 + e⁻ᶻ)² = σ(z) · e⁻ᶻ / (1 + e⁻ᶻ); son kesir 1 − σ(z)'ye eşittir.
PyTorch: sinir ağları kurmak
Derse git- xgirdi vektörü (n öznitelik)
- wağırlıklar; her girdinin önemi
- bsapma (bias); aktivasyon eşiğini kaydırır
- φaktivasyon fonksiyonu (ReLU, sigmoid…)
- anöronun çıktısı (aktivasyon)
- ReLUnegatif değerleri sıfırlar; türevi z > 0 için 1, z < 0 için 0
- σsigmoid: değerler (0; 1) aralığında, olasılık olarak yorumlanır
- tanhhiperbolik tanjant: değerler (−1; 1) aralığında, sıfıra göre simetrik
- zK sınıf için ham puanlar (logitler)
- softmax(z)ᵢi sınıfının olasılığı; hepsi pozitiftir ve toplamı 1'dir
Softmax, çok sınıflı sınıflandırmada son katmanın logitlerini bir olasılık dağılımına çevirir.
- Xgirdi yığını, şekil (N, nin)
- Wağırlıklar, şekil (nout, nin);
layer.weight - bsapmalar, şekil (nout,);
layer.bias - Yçıktılar, şekil (N, nout)
Her çıktı nöronunun nin ağırlığı ve bir sapması vardır; bu yüzden tam bağlantılı bir katmanda (nin + 1) · nout parametre bulunur.
PyTorch: eğitim döngüsü
Derse git- Neğitim kümesindeki örnek sayısı
- Byığın boyutu (batch size)
- ⌈ ⌉yukarı yuvarlama: son eksik yığın da bir adımdır
- zmodelin ham logitleri
- tdoğru sınıfın numarası
nn.CrossEntropyLoss, log-softmax ile çapraz entropiyi birleştirir: −ln softmax(z)ₜ = −zₜ + ln ∑ eᶻʲ. Bir yığın için kayıpların ortalaması alınır.
- gₜt adımındaki gradyan
- mₜ, vₜgradyanın ve karesinin kayan ortalamaları (momentum ve ölçek)
- m̂ₜ, v̂ₜbaşlangıç sapması düzeltilmiş değerler: mₜ/(1 − β₁ᵗ), vₜ/(1 − β₂ᵗ)
- β₁, β₂, ε, ηPyTorch'ta varsayılan 0,9; 0,999; 10⁻⁸; 0,001
Adam optimizasyon aracı. Her parametre kendi adım boyunu alır: gradyanı sürekli büyük olan parametre temkinli, küçük olan daha cesurca güncellenir. Momentumlu SGD ise v ← μ·v + g, θ ← θ − η·v formülüyle çalışır.
- argmax(zᵢ)i. örnek için en büyük logitin sınıfı; yani tahmin
- [ … ]koşul doğruysa 1, değilse 0
Evrişimli sinir ağları (CNN)
Derse git- x[0; 1] aralığındaki piksel değeri
- μ, σkanalın eğitim kümesindeki ortalaması ve standart sapması (MNIST için 0,1307 ve 0,3081)
Normalleştirmeden sonra girdiler kabaca sıfır etrafında ve birim ölçektedir; bu, gradyan inişini hızlandırır.
- Xgirdi görüntüsü (ya da önceki katmanın haritası)
- KK × K boyutunda filtre; öğrenilen ağırlıklar
- bfiltrenin sapması
- Y[i, j]öznitelik haritasının (i, j) elemanı
Tek kanal için 2B evrişim. Birden çok girdi kanalı olduğunda toplam kanallar üzerinden de alınır.
- Wgirdinin genişliği (ya da yüksekliği), piksel
- Kçekirdek boyutu
- Pdolgu (padding): kenarlara eklenen sıfır pikseller
- Sadım (stride): filtrenin kaç piksel kaydığı
- Oçıktı genişliği; ⌊ ⌋ aşağı yuvarlamadır
Çıktı boyutu formülü; yükseklik için de aynısı geçerlidir. Havuzlamada genellikle P = 0 ve S = K alınır.
- Cin, Coutgirdi ve çıktı kanallarının sayısı
Bir evrişim katmanının parametre sayısı görüntü boyutuna bağlı değildir; ağırlıklar tüm konumlarda paylaşılır.
Transformerlar ve büyük dil modelleri
Derse git- X(T, d) şeklinde token vektörleri
- WQ, WK, WVöğrenilen (d, dₖ) matrisleri
- Q · Kᵀ(T, T) puan matrisi: her sorgunun her anahtarla benzerliği
- √dₖölçek çarpanı; dₖ anahtar boyutudur
- softmaxsatır satır uygulanır: dikkat ağırlıkları pozitiftir ve toplamı 1'dir
- Vdeğerler; çıktı onların ağırlıklı ortalamasıdır
Ölçekli iç çarpım dikkati (scaled dot-product attention).
- hbaş sayısı; her başın boyutu d / h'dir
- WObirleştirilmiş başları karıştıran (d, d) matris
Her baş farklı bir ilişkiye dikkat etmeyi öğrenebilir: biri dil bilgisel bağlara, diğeri bir zamirin neyi gösterdiğine. Parametreler: WQ, WK, WV, WO için 4 · d² ağırlık ve 4 · d sapma.
- postokenin konumu: 0, 1, 2, …
- ibileşen çiftinin numarası; küçük i hızlı, büyük i yavaş salınır
- dgömme boyutu
- xₜmetindeki t. token
- p(xₜ₊₁ | x₁, …, xₜ)önceki tokenler verildiğinde modelin doğru sonraki tokene verdiği olasılık
- PPLperpleksite; ne kadar düşükse model o kadar iyidir
- τsıcaklık: τ < 1 daha emin ve tekrarlı, τ > 1 daha çeşitli ve riskli metin verir
Sıcaklıklı softmax ile sonraki tokenin seçilmesi.