Bölüm 2: Notasyon ve Tanımlar (Notation and Definitions)
Kaynak: Andriy Burkov -- "The Hundred-Page Machine Learning Book" (theMLbook.com)
Bölüm 2: Notasyon ve Tanimlar
Bu bölüm, makine öğrenmesinde kullanilan temel matematiksel notasyonu ve istatistiksel kavramlari kapsar.
2.1 Notasyon
2.1.1 Skalerler, Vektorler ve Kumeler
Skaler (Scalar): Basit bir sayisal deger. Örnek: 15 veya -3.25. Skaler değerler italik harflerle gosterilir: x veya a.
Vektor (Vector): Siralanmis skaler değerler listesi. Her bir degere oznitelik (attribute) denir. Kalin harflerle gosterilir: x veya w.
- Vektorler, yonleri gosteren oklar veya cok boyutlu uzaydaki noktalar olarak görsellestirilebilir.
- Bir vektorun ozniteligi italik indeksli gosterilir:
w(j)veyax(j) - Indeks
j, vektordeki belirli bir boyutu/konumu gösterir - Örnek: a = [2, 3] ise
a(1) = 2vea(2) = 3
Dikkat:
x(j)notasyonu us operatoruyle karistirilmamalidir. Indeksli bir ozellige us uygulamak için(x(j))^2yazilir.
Bir değişkenin birden fazla indeksi olabilir: x_i(j) veya x_{l,u}(k). Örneğin sinir aglarinda x_{l,u}(j): l katmanindaki u biriminin j numarali girdi ozelligi.
Kume (Set): Benzersiz elemanlarin sirasiz koleksiyonu. Kaligrafi büyük harflerle gosterilir: S.
- Sonlu kume:
{1, 3, 18, 23, 235}veya{x_1, x_2, ..., x_n} - Kapali aralik:
[a, b]-- a ve b dahil tum değerler - Acik aralik:
(a, b)-- a ve b haric tum değerler - R kumesi: Eksi sonsuzluktan arti sonsuzluga tum gerçek sayilari içerir
Kume işlemleri:
- Elemanlik: x in S -- x elemani S kumesine aittir
- Kesisim: S_3 = S_1 kesisim S_2 -- her iki kumede de olan elemanlar. Örnek: {1,3,5,8} kesisim {1,8,4} = {1,8}
- Birlesim: S_3 = S_1 birlesim S_2 -- en az bir kumede olan elemanlar. Örnek: {1,3,5,8} birlesim {1,8,4} = {1,3,4,5,8}
2.1.2 Büyük Sigma Notasyonu (Toplam)
Bir koleksiyon veya vektorun elemanlari üzerindeki toplam su şekilde gosterilir:
Toplam(i=1..n) x_i = x_1 + x_2 + ... + x_{n-1} + x_n
Ayni şekilde vektor özelliklerini toplama:
Toplam(j=1..m) x(j) = x(1) + x(2) + ... + x(m-1) + x(m)
2.1.3 Büyük Pi Notasyonu (Carpim)
Elemanlarin carpimini gösterir:
Carpim(i=1..n) x_i = x_1 * x_2 * ... * x_{n-1} * x_n
2.1.4 Kumeler Uzerindeki Islemler
Turetilmis kume oluşturma: S' = {x^2 | x in S, x > 3} -- S kumesindeki 3'ten büyük tum x değerlerin karesi alinarak yeni bir kume olusturulur.
Kardinalite: |S| -- S kumesindeki eleman sayisini dondurur.
2.1.5 Vektorler Uzerindeki Islemler
| Islem | Tanim |
|---|---|
| Toplam: x + z | [x(1)+z(1), x(2)+z(2), ..., x(m)+z(m)] |
| Fark: x - z | [x(1)-z(1), x(2)-z(2), ..., x(m)-z(m)] |
| Skaler carpim: x * c | [c*x(1), c*x(2), ..., c*x(m)] |
| Ic Carpim (Dot product): w . x | Toplam(i=1..m) w(i)*x(i) -- sonuç bir skalerdir |
Ic carpim için iki vektor ayni boyutta olmalidir.
Matris-Vektor Carpimi
Bir W matrisinin x vektoru ile carpimi baska bir vektor üretir.
Örneğin 2x3'luk bir W matrisi ile 3 boyutlu x vektorunun carpimi, 2 boyutlu bir vektor verir. Her satir, matrisin ilgili satirinin x vektoru ile ic carpimina esittir:
Wx = [w(1).x, w(2).x]
Burada w(1) ve w(2), matrisin birinci ve ikinci satirlaridir.
Devrik (Transpose)
Bir vektorun devrigi x^T ile gosterilir. Sutun vektoru seklindeki bir vektoru satir vektoru haline getirir (veya tersi).
Vektor, matrisin solundaysa carpim oncesi devrik alinmalidir: x^T * W
Kural: Vektor ile matris carpilabilmesi için vektorun boyut sayisi, matrisin satir sayisina esit olmalidir.
2.1.6 Fonksiyonlar
Fonksiyon: X kumesinin (tanimlama kumesi / domain) her bir elemanini, Y kumesinin (değişim kumesi / codomain) tek bir elemanina eslestiren bir ilişki.
y = f(x)-- f fonksiyonunun x argumaniyla cagrilmasix-- arguman veya girdiy-- fonksiyonun değeri veya çıktı
Yerel minimum: f(x) >= f(c) esitsizligi, c etrafindaki acik bir aralikta gecerliyse, x = c noktasinda yerel minimum vardir.
Genel (global) minimum: Tum yerel minimumlar arasındaki en küçük deger.
Vektor fonksiyonu: y = f(x) -- bir vektor y donduren fonksiyon. Argumani vektor veya skaler olabilir.
2.1.7 Max ve Arg Max
max_{a in A} f(a)-- A kumesindeki tum elemanlar içinf(a)'nin en yüksek değerini dondurur.arg max_{a in A} f(a)--f(a)'yi maksimize eden A kumesinin elemanini dondurur.
min ve arg min operatorleri benzer şekilde çalışır, ancak minimum icin.
2.1.8 Atama Operatoru
a <- f(x) ifadesi, a değişkenine f(x) sonuçunun atandigini gösterir.
2.1.9 Turev ve Gradyan
Turev (Derivative): Bir f fonksiyonunun turevi f', fonksiyonun ne kadar hizli buyudugunu (veya azaldigini) tanimlar.
- Turev pozitifse: fonksiyon o noktada buyuyor
- Turev negatifse: fonksiyon o noktada azaliyor
- Turev sifirsa: fonksiyonun egimi yatay (muhtemel ekstremum noktasi)
Turev bulma işlemi turev alma (differentiation) olarak adlandirilir.
Temel turev örnekleri:
- f(x) = x^2 ise f'(x) = 2x
- f(x) = 2x ise f'(x) = 2
- f(x) = c (sabit) ise f'(x) = 0
Zincir Kurali (Chain Rule): Bileske fonksiyonlarin turevini bulmak için kullanılır.
F(x) = f(g(x)) ise F'(x) = f'(g(x)) * g'(x)
Örnek: F(x) = (5x + 1)^2 için g(x) = 5x + 1, f(u) = u^2.
F'(x) = 2(5x+1) * 5 = 50x + 10
Gradyan (Gradient): Birden fazla girdi alan fonksiyonlar için turev genellemesidir. Gradyan, kismi turevlerden olusan bir vektordur.
Kismi turev: Fonksiyonun bir girdisine odaklanarak ve diger tum girdileri sabit değer olarak kabul ederek turev alma işlemi.
Örnek: f([x(1), x(2)]) = a*x(1) + b*x(2) + c icin:
- df/dx(1) = a (x(2) ve c sabit kabul edilir)
- df/dx(2) = b (x(1) ve c sabit kabul edilir)
Gradyan: nabla f = [df/dx(1), df/dx(2)] = [a, b]
Zincir kurali kismi turevlerle de çalışır (Bölüm 4'te örneklenir).
2.2 Rasgele Degisken (Random Variable)
Rasgele değişken, rasgele bir olgunun sayisal sonuçlarini temsil eden bir değişkendir. Italik büyük harfle gosterilir: X.
Ayrik Rasgele Degisken (Discrete)
Sayilabilir sayida farkli değer alir: kirmizi, sari, mavi veya 1, 2, 3, ...
Olasilik kutle fonksiyonu (pmf -- probability mass function): Her bir degerle ilişkili olasıliklarin listesi.
- Örnek: Pr(X = kirmizi) = 0.3, Pr(X = sari) = 0.45, Pr(X = mavi) = 0.25
- Her olasılik >= 0
- Tum olasıliklarin toplami = 1
Surekli Rasgele Degisken (Continuous)
Bir aralikta sonsuz sayida değer alabilir. Örnekler: boy, kilo, zaman.
Surekli bir rasgele değişken X için herhangi bir c noktasindaki olasılik Pr(X = c) = 0'dir.
Olasilik yoğunluk fonksiyonu (pdf -- probability density function): Surekli olasılik dagilimlari bununla tanimlanir. - pdf'in değişim kumesi negatif degil - Egrinin altindaki alan = 1
Beklenen Deger (Expectation)
Ayrik değişken icin:
E[X] = Toplam(i=1..k) x_i * Pr(X = x_i)
Beklenen deger, ortalama (mean/average) olarak da adlandirilir ve mu ile gosterilir.
Surekli değişken icin:
E[X] = Integral(R) x * f_X(x) dx
Integral, fonksiyonun surekli bir tanima kumesindeki tum değerler üzerindeki toplamanin esdeğeridir. Egrinin altindaki alana esittir.
Standart Sapma (Standard Deviation)
Ayrik rasgele değişken için standart sapma sigma:
sigma = karekof(Toplam(i=1..k) Pr(X = x_i) * (x_i - mu)^2)
Standart sapma, değerlerin ortalamadan ne kadar yayildigini olcer.
2.3 Yansiz Tahminleyiciler (Unbiased Estimators)
Gerçek olasılik dagilimi genellikle bilinmez, ancak bir örneklem S_X = {x_i} (i = 1, ..., N) elde edebiliriz.
Bir istatistik theta için yansiz tahminleyici theta_sapka(S_X) su ozelligi saglar:
E[theta_sapka(S_X)] = theta
Bu, sinirsiz sayida örneklem alip her birinde theta_sapka'yi hesaplarsaniz, tum bu tahminlerin ortalmasinin gerçek theta'ya esit olacagi anlamina gelir.
Örneklem ortalamasi: Bilinmeyen E[X]'in yansiz tahminleyicisi:
(1/N) * Toplam(i=1..N) x_i
Bu, istatistikte örneklem ortalamasi (sample mean) olarak adlandirilir.
2.4 Bayes Kurali (Bayes' Rule)
Kosullu olasılik: Pr(X = x | Y = y) -- Y rasgele değişkeni y değerini aldiginda, X'in x değerine sahip olma olasıligi.
Bayes Kurali (Bayes Teoremi):
Pr(X = x | Y = y) = Pr(Y = y | X = x) * Pr(X = x) / Pr(Y = y)
Bu temel formul, makine öğrenmesinde parametre tahmini, sınıflandırma ve olasıliksal çıkarım için kritik oneme sahiptir.
2.5 Parametre Tahmini (Parameter Estimation)
Bayes Kurali, X'in dagilimi için parametrik bir model f_theta'miz oldugunda isimize yarar.
Gauss (Normal) Dagilim Ornegi
Gauss Fonksiyonu iki parametreye sahiptir -- mu (ortalama) ve sigma (standart sapma):
f_theta(x) = (1 / karekof(2*pi*sigma^2)) * exp(-(x - mu)^2 / (2*sigma^2))
Burada theta = [mu, sigma]. Bu fonksiyon, pdf'in tum özelliklerine sahiptir ve bilinmeyen dagilimin modeli olarak kullanilabilir.
Bayes Kurali ile Parametre Guncelleme
Pr(theta = theta_sapka | X = x) = Pr(X = x | theta = theta_sapka) * Pr(theta = theta_sapka) / Pr(X = x)
Eger olası theta değerleri sonlu ise, Bayes Kurali her seferinde bir örnek x kullanilarak yinelemeli olarak uygulanabilir.
Onsel (Prior): Pr(theta = theta_sapka) için başlangıç tahmini. Toplami 1 olmak uzere tahmin edilir.
Yinelemeli guncelleme süreçi:
1. Tum olası theta_sapka değerleri için Pr(theta = theta_sapka | X = x_1) hesaplanir
2. Bir sonraki örnek x_2 için guncelleme yapilmadan once, Pr(theta = theta_sapka) yeni tahminle degistirilir
3. Islem tum örnekler için tekrarlanir
Maksimum Olabilirlik Ilkesi (Maximum Likelihood)
Bir örnek verildeginde en iyi parametre değeri su ilkeyle elde edilir:
theta* = arg max_theta Carpim(i=1..N) Pr(theta = theta_sapka | X = x_i)
Olasi theta değerleri sonlu degilse, bu ifade doğrudan sayisal optimizasyon yöntemleri (örneğin Gradyan Inisi) ile optimize edilir.
Pratikte: Bir carpimin dogal logaritmasi alinarak toplama donusturulur. Bu, makinenin hesaplama yapmasini kolaylastirir ve sayisal tasmay (numerical overflow) onler.
2.6 Sınıflandırma ve Regresyon
Sınıflandırma (Classification)
Etiketsiz bir ornege otomatik olarak etiket atama problemi.
- Ikili sınıflandırma (Binary): Iki sinifli problemler ("hasta"/"saglikli", "spam"/"spam_degil")
- Cok sinifli sınıflandırma (Multiclass): Uc veya daha fazla sınıf içeren problemler
Sınıflandırma algoritmasi bir model üretir. Bu model, girdi olarak özellik vektoru alir ve doğrudan bir etiket veya bir olasılik cikarir.
Regresyon (Regression)
Etiketsiz bir örnek verildeginde gerçek degerli bir etiket (hedef) tahmin etme problemi.
Örnek: Evin özelliklerine (alan, yatak odasi sayisi, konum vb.) dayanarak fiyat tahmini.
Regresyon algoritmasi, girdi olarak özellik vektoru alan ve hedef değeri ureten bir model oluşturur.
2.7 Model Tabanli ve Örnek Tabanli Öğrenme
Model Tabanli Öğrenme (Model-Based)
- Eğitim verisini kullanarak parametreleri öğrenilen bir model olusturulur
- Örnek: SVM -- parametreler
w*veb* - Model olustuktan sonra eğitim verisi atilabilir
Örnek Tabanli Öğrenme (Instance-Based)
- Veri setinin tamami model olarak kullanılır
- Örnek: kNN (k-En Yakin Komsu) -- Sınıflandırmada, girdi örneğine özellik uzayinda en yakin
keğitim örneğine bakar ve bu komsuluktaki en sik gorulun etiketi çıktı olarak verir
2.8 Sig ve Derin Öğrenme
Sig Öğrenme (Shallow Learning)
Model parametreleri doğrudan eğitim örneklerinin özelliklerinden ogrenilir. Gozetimli öğrenme algoritmalarinin cogu sig öğrenmedir.
Derin Öğrenme (Deep Learning)
Birden fazla katmana sahip sinir aglari (neural networks) ile öğrenme. Derin sinir aglarinda model parametrelerinin cogu, eğitim örneklerinin özelliklerinden degil, onceki katmanlarin çıktılarindan ogrenilir.
Sinir aglari Bölüm 6'da ayrintili incelenir.
Ozet
| Kavram | Aciklama |
|---|---|
| Skaler | Tek sayisal değer |
| Vektor | Siralanmis skaler listesi |
| Kume | Benzersiz elemanlarin sirasiz koleksiyonu |
| Ic Carpim | Iki vektorun elemanlarinin carpimlarinin toplami (sonuç skaler) |
| Turev | Fonksiyonun buyume/azalma hizini tanımlar |
| Gradyan | Kismi turevlerden olusan vektor |
| Zincir Kurali | Bileske fonksiyonlarin turevini bulma yöntemi |
| Beklenen Deger | Rasgele değişkenin ağırlıkli ortalamasi |
| Standart Sapma | Degerlerin ortalamadan yayilim olcusu |
| Bayes Kurali | Kosullu olasıliklari hesaplama formulu |
| Maksimum Olabilirlik | Veriye en uygun parametreleri bulan ilke |
| Sınıflandırma | Örneklere sınıf etiketi atama |
| Regresyon | Gerçek degerli hedef tahmini |
| Model Tabanli | Parametre öğrenen öğrenme (SVM vb.) |
| Örnek Tabanli | Veri setinin tamamini kullanan öğrenme (kNN vb.) |
| Derin Öğrenme | Cok katmanli sinir aglariyla öğrenme |
Lisans ve Atıf
Bu sayfa, Andriy Burkov tarafından yazılan "The Hundred-Page Machine Learning Book" kitabına dayalı notlar içermektedir.
- Kitap: theMLbook.com
- GitHub: github.com/aburkov/theMLbook
- Lisans: MIT License — Copyright (c) 2019 Andriy Burkov
- İlke: "Read first, buy later" — Kitabı önce okuyun, beğenirseniz satın alın.
MIT Lisansı gereği bu copyright bildirimi ve izin bildirimi, Yazılımın tüm kopyalarına veya önemli bölümlerine dahil edilmelidir.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND. Bu içerik eğitim amaçlıdır ve orijinal eserin yerine geçmez. Tam kitap için themlbook.com adresini ziyaret edin.