tag Sınıflandırma
Bu sayfada Sınıflandırma etiketi ile işaretlenmiş 16 yapay zeka kavramını bulabilirsiniz.
Karar ağacı (Decision Tree), gözetimli öğrenme (supervised learning) kategorisinde yer alan, hem sınıflandırma hem de regresyon problemleri için kullanılan temel bir makine öğrenimi algoritmasıdır. Veriyi, ağaç benzeri bir yapı oluşturarak ardışık karar kurallarına göre alt kümelere böler. Yapının her iç düğümü bir özellik üzerinde yapılan bir testi, her dal o testin olası sonucunu, her yaprak düğümü ise nihai tahmin değerini ya da sınıfı temsil eder. Algoritma, veriyi bölmek için en iyi özelliği seçerken genellikle iki ölçütten birini kullanır: **Gini safsızlığı** (CART algoritmasında) veya **Bilgi Kazanımı/Entropi** (ID3 ve C4.5 algoritmalarında). Gini safsızlığı, bir düğümdeki örneklerin ne ölçüde saf bir sınıfa ait olduğunu; bilgi kazanımı ise bölme işleminin belirsizliği ne kadar azalttığını ölçer. Her adımda safsızlığı en çok düşüren özellik seçilerek ağaç büyütülür. Karar ağaçlarının en büyük güçlü yönü **yorumlanabilirliğidir**: elde edilen kurallar, uzman olmayanlar tarafından bile kolayca anlaşılabilir grafiksel ağaçlara dönüştürülebilir. Bu özellik tıbbi teşhis, kredi risk değerlendirmesi ve sahtekârlık tespiti gibi alanlarda şeffaf karar sistemleri kurulmasına zemin hazırlar. Öte yandan tek bir ağaç, verideki küçük değişikliklere karşı aşırı duyarlı olabilir (yüksek varyans) ve derin büyürse aşırı öğrenme (overfitting) riski taşır. Bu sınırlılıkları aşmak için rastgele ormanlar (Random Forest) ve gradyan artırma (Gradient Boosting) gibi topluluk öğrenmesi yöntemleri geliştirilmiştir. Karar ağaçlarının bir diğer önemli avantajı, özellik ölçeklemesi gerektirmemesidir; sayısal ve kategorik veriler birlikte işlenebilir. Eğitim karmaşıklığı O(n log n) düzeyinde olup tahmin ise yalnızca O(derinlik) adımda tamamlanır. Scikit-learn kütüphanesi, CART algoritmasını temel alarak budama (pruning) ve çapraz doğrulama desteğiyle tam işlevsel bir uygulama sunar. Algoritmanın parametrik olmayan doğası, verinin herhangi bir istatistiksel dağılıma uymasını zorunlu kılmaz; bu da onu farklı veri yapılarına karşı esnek kılar.
Decision Tree (Karar Ağacı)
Karar ağacı (Decision Tree), gözetimli öğrenme (supervised learning) kategorisinde yer alan, hem sınıflandırma hem de regresyon problemleri için kullanılan temel bir makine öğrenimi algoritmasıdır. Veriyi, ağaç benzeri bir yapı oluşturarak ardışık karar kurallarına göre alt kümelere böler. Yapının her iç düğümü bir özellik üzerinde yapılan bir testi, her dal o testin olası sonucunu, her yaprak düğümü ise nihai tahmin değerini ya da sınıfı temsil eder. Algoritma, veriyi bölmek için en iyi özelliği seçerken genellikle iki ölçütten birini kullanır: **Gini safsızlığı** (CART algoritmasında) veya **Bilgi Kazanımı/Entropi** (ID3 ve C4.5 algoritmalarında). Gini safsızlığı, bir düğümdeki örneklerin ne ölçüde saf bir sınıfa ait olduğunu; bilgi kazanımı ise bölme işleminin belirsizliği ne kadar azalttığını ölçer. Her adımda safsızlığı en çok düşüren özellik seçilerek ağaç büyütülür. Karar ağaçlarının en büyük güçlü yönü **yorumlanabilirliğidir**: elde edilen kurallar, uzman olmayanlar tarafından bile kolayca anlaşılabilir grafiksel ağaçlara dönüştürülebilir. Bu özellik tıbbi teşhis, kredi risk değerlendirmesi ve sahtekârlık tespiti gibi alanlarda şeffaf karar sistemleri kurulmasına zemin hazırlar. Öte yandan tek bir ağaç, verideki küçük değişikliklere karşı aşırı duyarlı olabilir (yüksek varyans) ve derin büyürse aşırı öğrenme (overfitting) riski taşır. Bu sınırlılıkları aşmak için rastgele ormanlar (Random Forest) ve gradyan artırma (Gradient Boosting) gibi topluluk öğrenmesi yöntemleri geliştirilmiştir. Karar ağaçlarının bir diğer önemli avantajı, özellik ölçeklemesi gerektirmemesidir; sayısal ve kategorik veriler birlikte işlenebilir. Eğitim karmaşıklığı O(n log n) düzeyinde olup tahmin ise yalnızca O(derinlik) adımda tamamlanır. Scikit-learn kütüphanesi, CART algoritmasını temel alarak budama (pruning) ve çapraz doğrulama desteğiyle tam işlevsel bir uygulama sunar. Algoritmanın parametrik olmayan doğası, verinin herhangi bir istatistiksel dağılıma uymasını zorunlu kılmaz; bu da onu farklı veri yapılarına karşı esnek kılar.
Decision Trees (Karar Ağaçları)
Karar ağaçları (decision trees), bir veri setini özellik değerlerine göre ardışık ikili bölmelere ayırarak sınıflandırma veya regresyon görevi gerçekleştiren yorumlanabilir makine öğrenmesi modelidir. Kök düğümden yaprak düğümlerine uzanan her dal bir karar kuralını, her yaprak ise bir tahmin değerini veya sınıf etiketini temsil eder. Karar ağacı eğitimi özyinelemeli ikili bölme algoritmasıyla çalışır. Her adımda tüm özellikler ve olası bölme noktaları değerlendirilir; en yüksek bilgi kazancı (information gain) veya en düşük Gini safsızlığı veren kombinasyon seçilerek düğüm bölünür. Bu işlem yaprak düğüm saf hâle gelene ya da önceden belirlenen maksimum derinliğe ulaşılana kadar tekrarlanır. Karar ağaçlarının en güçlü yanı yorumlanabilirliktir. Model her tahminini adım adım açıklayan doğal kural seti üretir; bir müşterinin kredi başvurusunun neden reddedildiğini "gelir 30.000 TL altı VE borç oranı 0.4 üstü" gibi sade mantıksal ifadelerle görmek mümkündür. Bu şeffaflık, GDPR ve yapay zeka şeffaflığı düzenlemeleri kapsamındaki görevlerde önemli bir avantaj sunar. Öte yandan sınırlandırılmamış karar ağaçları kolayca eğitim verisini ezberler; her yaprak tek bir örneği temsil eden aşırı derin bir ağaç oluşabilir. Minimum örnekle yaprak parametresi, maksimum derinlik kısıtı ve maliyet-karmaşıklık budaması bu soruna karşı temel çözüm araçlarıdır. Tek bir karar ağacının sınırlamalarını aşmak için topluluk (ensemble) yöntemleri geliştirilmiştir. Random Forest, her biri rastgele özellik alt kümesiyle eğitilen yüzlerce ağacın oy çokluğunu kullanır. Gradient Boosting yöntemleri olan XGBoost ve LightGBM ise hataları ardışık ağaçlarla düzelterek yapısal verili görevlerde çoğu zaman derin öğrenme modellerini geride bırakır. Karar ağaçları hem sayısal hem kategorik özelliklerle çalışabilir; ölçeklendirme gerektirmez ve aykırı değerlere karşı görece sağlamlıdır. Özellik önemi hesaplaması, modelin hangi değişkenlere ne ölçüde dayandığını sayısal olarak ortaya koyar ve veri analizi süreçlerinde yol gösterici bir araç işlevi görür.
Lojistik Regresyon (Lojistik Regresyon)
Lojistik regresyon, sınıflandırma problemleri için kullanılan temel bir denetimli makine öğrenimi algoritmasıdır. İsmindeki "regresyon" sözcüğüne karşın algoritma, sürekli değer tahmini değil; olayların gerçekleşme olasılığını tahmin etmek için tasarlanmıştır. Temel matematiksel yapısı, doğrusal regresyon çıktısını [0, 1] aralığına sıkıştıran sigmoid (lojistik) fonksiyonuna dayanır: σ(z) = 1 / (1 + e^−z). Algoritma, istatistikçi David Cox tarafından 1958 yılında literatüre kazandırılmıştır. Girdi özelliklerinin ağırlıklı toplamını hesapladıktan sonra sigmoid fonksiyonunu uygular; sonuç 0,5'in üzerindeyse pozitif sınıf, altındaysa negatif sınıf olarak etiketlenir. Bu karar eşiği kullanım senaryosuna göre ayarlanabilir; tıbbi tanı sistemlerinde yanlış negatif oranını düşürmek için eşik değeri azaltılır. Eğitim sürecinde kayıp fonksiyonu olarak ikili çapraz entropi (log-loss) minimize edilir. Bu işlem genellikle stokastik gradyan inişi veya sınırlı bellek BFGS (L-BFGS) optimizasyon yöntemiyle gerçekleştirilir. L1 düzenlileştirme (Lasso) gereksiz özellikleri sıfıra çekerek özellik seçimi yaparken, L2 (Ridge) ağırlıkları küçük tutarak aşırı öğrenmeyi önler; ElasticNet her iki yaklaşımı dengeli biçimde birleştirir. Eğitim öncesinde özniteliklerin StandardScaler ile normalleştirilmesi yakınsama hızını önemli ölçüde artırır. Lojistik regresyon, yapay sinir ağlarının temel birimi olan tek nöronun davranışıyla doğrudan ilişkilidir: sigmoid aktivasyon fonksiyonu kullanan yalnızca bir nörondan oluşan ağ, matematiksel olarak bir lojistik regresyon modelidir. Bu ilişki, çok katmanlı derin öğrenme modellerinin lojistik regresyon üzerine inşa edildiğini anlamamızı kolaylaştırır. Çok sınıflı problemler için iki temel yaklaşım mevcuttur: OvR (One-vs-Rest) stratejisi her sınıf için bağımsız bir ikili sınıflandırıcı eğitir; multinomial lojistik regresyon (softmax regresyon) ise tüm sınıfları aynı anda modeler ve olasılıkların toplamını bire zorlar. Çok sınıflı metinsel görevlerde multinomial yaklaşım genellikle daha tutarlı sonuçlar üretir. Lojistik regresyon; e-posta spam tespiti, kredi riski değerlendirmesi, tıbbi tanı, metin sınıflandırma ve dijital pazarlamada dönüşüm oranı tahmini gibi geniş bir uygulama yelpazesine sahiptir. Yorumlanabilir yapısı ve hesaplanabilir katsayı güven aralıkları sayesinde, kararların açıklanması gereken finans ve sağlık sektörlerinde derin öğrenme modellerine tercih edilir.
Naive Bayes (Naif Bayes Sınıflandırıcı)
Naive Bayes, Bayes teoremini temel alan olasılıksal bir makine öğrenmesi sınıflandırma algoritmasıdır. "Naive" (saf/naif) adı, algoritmanın tüm özellikler arasında koşullu bağımsızlık varsayımından gelir; bir özelliğin değerinin diğer özelliklerden bağımsız olduğu kabul edilir. Bu güçlü varsayım gerçek dünyada nadiren tam olarak geçerlidir; ancak Naive Bayes pek çok uygulamada şaşırtıcı derecede yüksek performans gösterir. Algoritmanın matematiksel temeli Bayes teoremidir: P(sınıf | özellikler) ∝ P(sınıf) × ∏ P(özellik_i | sınıf). Burada P(sınıf) öncül (prior) olasılık, P(özellik | sınıf) koşullu olasılıktır ve eğitim verisinden doğrudan tahmin edilir. Bu oran en yüksek olan sınıf tahmin olarak döndürülür. Üç temel Naive Bayes türü bulunur. Gaussian Naive Bayes, sürekli sayısal özelliklerin normal dağılım izlediğini varsayar; tıbbi veri sınıflandırma ve bilimsel ölçümler için uygundur. Multinomial Naive Bayes, metin sınıflandırma ve spam tespitinde yaygın olarak kullanılan türdür; belgede kaç kez geçtiği önemli olan kelime sayım verisiyle çalışır. Bernoulli Naive Bayes ise bir kelimenin belgede bulunup bulunmadığını ikili (0/1) özellik olarak modeller ve kısa metinlerde avantaj sağlar. Naive Bayes'in belirgin avantajları şunlardır: eğitim hızı son derece yüksektir, küçük veri setlerinde de iyi genelleme sağlar, sıfır frekans sorununu Laplace düzeltmesiyle aşar ve olasılıksal çıktısı sayesinde belirsizlik tahmini sunar. Metin sınıflandırma, spam filtresi, duygu analizi ve tıbbi teşhis alanlarında on yıllardır endüstriyel ölçekte kullanılmaktadır; erken dönem Gmail spam filtresi Naive Bayes tabanlı sistemlere dayanmaktaydı. Sınırlamalar açısından, özellikler arasındaki güçlü korelasyon performansı düşürür. Ayrıca eğitim verisinde hiç görülmemiş özellik kombinasyonları zero-probability sorununa yol açar. Bu kısıtlamalar nedeniyle karmaşık yapısal ilişkilerin kritik olduğu görevlerde gradient boosting veya derin öğrenme yöntemleri tercih edilmektedir. Buna karşın Naive Bayes, hızı, yorumlanabilirliği ve az veriyle çalışabilmesi nedeniyle temel bir başlangıç çizgisi (baseline) olarak modern makine öğrenmesi iş akışlarında yerini korumaktadır.
Precision-Recall (Kesinlik-Duyarlılık)
Precision (Kesinlik) ve Recall (Duyarlılık), makine öğrenmesinde sınıflandırma modellerinin performansını değerlendirmek için kullanılan iki temel ölçüttür. Her ikisi de Confusion Matrix üzerinden türetilir ve birbirini tamamlayan iki farklı bakış açısını yansıtırken aynı zamanda uygulamanın gereksinimlerine göre farklı öncelikler taşır. Precision formülü: TP / (TP + FP). Model "Evet" dediği tahminler arasında gerçekten doğru olanların oranıdır. Örneğin spam tespitinde yüksek Precision, meşru e-postaların yanlışlıkla spam klasörüne atılmadığını güvence altına alır. Düşük Precision, sistemin fazla sayıda yanlış alarm ürettiğini gösterir ve kullanıcı deneyimini olumsuz etkiler. Recall formülü: TP / (TP + FN). Tüm gerçek pozitif örnekler arasında modelin doğru yakaladıklarının oranıdır. Tıbbi teşhiste yüksek Recall, hasta bireylerin gözden kaçırılmadığını garantiler. Düşük Recall, sistemin gerçek pozitiflerin önemli bir bölümünü atladığını ve ciddi sonuçlara yol açabileceğini gösterir. Precision-Recall Dengesi (Trade-off): İki ölçüt birbiriyle ters orantılıdır. Model eşik değeri düşürüldüğünde daha fazla pozitif tahmin yapılır, Recall yükselirken Precision düşer. Eşik yükseltildiğinde tam tersi gerçekleşir. Hangi dengenin tercih edileceği, uygulamanın kaçırma maliyetine ve yanlış alarm maliyetine bağlıdır. F1-Score ve AUC-PR: İki ölçütü tek değerde özetlemek için harmonik ortalamayı kullanan F1-Score tercih edilir: 2 × (Precision × Recall) / (Precision + Recall). Precision-Recall Eğrisi (PR Curve), farklı eşiklerdeki dengeyi görselleştirir; eğrinin altındaki alan (AUC-PR) özellikle dengesiz (imbalanced) veri kümelerinde ROC-AUC'a göre daha bilgilendirici bir genel performans göstergesidir. LLM ve RAG sistemlerinde Precision@k ile Recall@k metrikleri, geri çekilen ilk k belge arasında kaçının alaka düzeyinde olduğunu ve tüm alakalı belgelerin ne kadarının döndürüldüğünü ölçer. RAGAS ve TruLens gibi RAG değerlendirme çerçeveleri bu ölçütleri merkeze alır ve boru hattının retrieval kalitesini sistematik biçimde izler.
Random Forest (Rastgele Orman)
Rastgele Orman (Random Forest), tek bir karar ağacının aşırı uyum (overfitting) zayıflığını aşmak için yüzlerce veya binlerce bağımsız karar ağacının bir arada çalıştırıldığı topluluk öğrenimi (ensemble learning) yöntemidir. Her ağaç, verinin rastgele seçilmiş bir alt kümesi üzerinde eğitilir; tahmin aşamasında tüm ağaçların çıktısı oylamaya (sınıflandırma) ya da ortalalamaya (regresyon) tabi tutularak nihai sonuç elde edilir. Yöntemin temel ilkesi "bagging" (Bootstrap Aggregating) olarak adlandırılır: eğitim verisi yerine her ağaç için rastgele örneklem çekilerek ağaçlar arasındaki korelasyon azaltılır. Ayrıca her dal bölünme noktasında yalnızca rastgele seçilmiş bir özellik alt kümesi değerlendirilir; böylece ağaçların birbirinden bağımsız kalması güvence altına alınır. Rastgele Orman'ın avantajları şunlardır: yüksek boyutlu verilerde iyi performans gösterir; eksik değerlere ve gürültüye karşı dirençlidir; özellik önem skorları (feature importance) üretir; hiperparametre ayarı görece basittir. Sınıflandırma ve regresyon görevlerinin yanı sıra anomali tespiti ve boyut azaltma uygulamalarında da kullanılır. Dezavantajları arasında büyük ağaç sayılarında yavaş tahmin süresi ve yorumlanabilirlik güçlüğü sayılabilir: binlerce ağaçtan oluşan bir ormanın "neden bu kararı verdiği" tek bir karar ağacına göre açıklamak daha zordur. Bu nedenle yorum gerektiren finans ve sağlık uygulamalarında SHAP değerleri gibi açıklanabilirlik araçlarıyla birlikte kullanılır. scikit-learn kütüphanesinde `RandomForestClassifier` ve `RandomForestRegressor` sınıfları ile kolayca uygulanır. `n_estimators` (ağaç sayısı), `max_depth` (maksimum derinlik) ve `max_features` (dal başına değerlendirilen özellik sayısı) en kritik hiperparametrelerdir. Büyük veri setlerinde XGBoost veya LightGBM gibi gradient boosting alternatifleri tercih edilse de Rastgele Orman, hızlı prototipleme ve temel performans ölçütü oluşturma açısından hâlâ standart başlangıç modeli olarak kabul görmektedir. Uygulama alanları açısından Rastgele Orman; kredi riski puanlaması, hastalık teşhisi, müşteri kaybı tahmini (churn prediction), nesne tanıma ve metin sınıflandırması gibi geniş bir yelpazede başarıyla kullanılmıştır. Türkiye'deki veri bilimi projelerinde ise bankacılık ve e-ticaret sektörlerinde sık başvurulan bir yöntem olduğu gözlemlenmektedir. Açıklanabilir yapay zeka (XAI) bağlamında SHAP kütüphanesi, Rastgele Orman modellerinin bireysel tahminlerini yorumlamak için doğrudan entegre edilebilir.
Supervised Learning (Denetimli Öğrenme)
Denetimli Öğrenme (Supervised Learning), makine öğrenmesinin temel paradigmalarından biridir. Bu yaklaşımda model, her girdinin (X) karşılığında doğru çıktının (y/etiket) önceden bilindiği ve işaretlendiği bir veri setiyle eğitilir. Model, bu etiketli örneklerden X→y eşlemesini öğrenerek daha önce hiç görmediği yeni verilerde tahmin yapabilir hale gelir. Kavramı anlamak için bir öğretmen-öğrenci analojisi kullanılır: öğretmen (veri seti), öğrenciye (modele) hem soruları hem de cevap anahtarını verir. Öğrenci, hataları analiz ederek zamanla doğru cevapları öğrenir. Gerçek hayatta bu etiketler bir e-postanın spam olup olmadığı, bir tümörün iyi ya da kötü huylu olması ya da bir evin tahmini satış fiyatı olabilir. Denetimli öğrenme iki ana problem türünü kapsar. İlki sınıflandırma (classification): girdi verisini iki veya daha fazla ayrık kategoriye atamak. Spam tespiti, görüntü tanıma ve duygu analizi bu gruba girer. İkincisi regresyon: sürekli sayısal bir değer tahmin etmek. Ev fiyatı tahmini, hava sıcaklığı öngörüsü ve borsa tahmini bu gruba aittir. Algoritma ailesi oldukça geniştir: karar ağaçları, rastgele orman (Random Forest), destek vektör makineleri (SVM), lojistik regresyon, yapay sinir ağları ve derin öğrenme modelleri. Tablo verisi için XGBoost ve LightGBM çoğu yarışmada lider performans gösterirken, görüntü işleme için konvolüsyonel sinir ağları (CNN) ve metin görevleri için BERT gibi transformer modeller tercih edilir. Eğitim süreci; veriyi eğitim, doğrulama ve test kümelerine bölmeyi, bir kayıp fonksiyonu (loss function) tanımlamayı ve gradient descent ile modelin parametrelerini optimize etmeyi içerir. Aşırı öğrenme (overfitting) ve eksik öğrenme (underfitting) risklerine karşı çapraz doğrulama, düzenlileştirme (L1/L2) ve erken durdurma (early stopping) gibi teknikler kullanılır. Denetimli öğrenmenin en büyük kısıtı kaliteli etiketli veriye olan ihtiyacıdır. Manuel etiketleme zaman alıcı ve pahalıdır; ayrıca insan yanlılığı veya hatalarına açıktır. Bu soruna çözüm olarak aktif öğrenme (active learning) ve yarı-denetimli öğrenme (semi-supervised learning) yaklaşımları geliştirilmiştir.
Support Vector Machines (SVM) (Destek Vektör Makineleri)
Destek Vektör Makineleri (Support Vector Machines — SVM), sınıflandırma ve regresyon görevleri için geliştirilmiş, teorik temeli sağlam bir denetimli makine öğrenimi algoritmasıdır. Temel fikir basittir: iki sınıfa ait veri noktalarını birbirinden ayıran en geniş kenar boşluğunu (marjı) tanımlayan hiperdüzlemi bulmak. Hiperdüzlem, iki boyutlu uzayda bir doğru, üç boyutlu uzayda bir düzlem ve daha yüksek boyutlarda genel olarak hiperdüzlem adını alır. SVM, bu hiperdüzlemi belirlerken yalnızca sınıra en yakın veri noktalarına — destek vektörlerine — odaklanır; diğer noktalar modeli etkilemez. Geniş marj ilkesi, modelin yeni ve görülmemiş örnekleri daha iyi genelleştireceği güvencesini verir. Gerçek dünyadaki veriler çoğu zaman doğrusal olarak ayrılamaz. SVM bu durumu kernel hilesi (kernel trick) ile aşar: veriyi daha yüksek boyutlu bir uzaya taşıyarak doğrusal ayrım imkânı yaratır. Hesaplama, yüksek boyutta açıkça çalışmadan iç çarpım formülü üzerinden yapılır; bu sayede polinom, RBF (Radial Basis Function) ve sigmoid kernel seçenekleri sunulur. C düzenlileştirme parametresi, marj genişliği ile eğitim hatası arasındaki dengeyi belirler. Küçük C geniş ve hata toleranslı marj üretirken, büyük C dar ama hata açısından titiz bir sınır çizer. RBF kernelde ek olarak gamma parametresi, her veri noktasının etkisi ne kadar uzağa yayıldığını kontrol eder. SVM'nin avantajları arasında yüksek boyutlu uzayda etkili çalışması, küçük-orta ölçekli veri setlerinde güçlü performans sergilemesi ve global optimuma yakınsama garantisi öne çıkar. Öte yandan 100.000 örnekten büyük veri setlerinde eğitim yavaşlar; doğrudan olasılık çıktısı üretmez; çok sınıflı görevler one-vs-rest veya one-vs-one stratejileri gerektirir. Türk makine öğrenimi mühendisleri için SVM, metin sınıflandırmada TF-IDF + LinearSVC kombinasyonu olarak hâlâ geçerli bir baseline sunar. Küçük etiketli veri setlerinde derin öğrenme modelleriyle rekabet edebilir; biyoinformatik ve tıp gibi alanlarda yorumlanabilirlik gereken durumlarda tercih edilir.
KNN (K-En Yakın Komşu) (K-En Yakın Komşu Algoritması)
KNN (K-En Yakın Komşu), yeni bir veri noktasını eğitim setindeki en yakın K komşusuna bakarak sınıflandıran veya sayısal değer tahmin eden denetimli bir makine öğrenimi algoritmasıdır. 1951'de Evelyn Fix ve Joseph Hodges'ın ABD Hava Kuvvetleri için hazırladığı raporla ortaya çıkan yöntem, 75 yılı aşkın süredir hem ders kitaplarının hem de gerçek üretim sistemlerinin vazgeçilmezi olmayı sürdürüyor. Algoritmanın mantığı günlük sezgiyle örtüşür: bir şeyin ne olduğunu bilmiyorsanız, ona en çok benzeyen örneklere bakarsınız. K=5 seçildiyse, yeni noktaya en yakın 5 eğitim örneği bulunur; sınıflandırmada bu 5 komşunun çoğunluk oyu, regresyonda ise değerlerinin (isteğe bağlı mesafe ağırlıklı) ortalaması sonucu belirler. KNN "tembel öğrenme" (lazy learning) ailesindendir: eğitim aşamasında model kurmaz, veriyi olduğu gibi bellekte tutar ve tüm hesabı tahmin anına erteler. Eğitim maliyeti fiilen sıfırdır; buna karşılık her tahmin, n örnek ve d boyut için O(n·d) mesafe hesabı gerektirir. Aynı zamanda non-parametriktir: veri dağılımı hakkında hiçbir varsayım yapmaz, karar sınırının şeklini doğrudan veriden okur. Mesafe ölçümünde en yaygın tercih Öklid mesafesidir; Manhattan, Minkowski, cosine benzerliği ve kategorik veri için Hamming mesafesi de kullanılır. Özellik ölçekleri farklıysa min-max normalizasyonu veya z-skoru standartlaştırması şarttır; aksi hâlde 0–1000 aralığındaki bir özellik, 0–1 aralığındakini tamamen bastırır. K seçimi bias-variance dengesini belirler: K=1 gürültüye aşırı duyarlıdır ve overfitting üretir, çok büyük K karar sınırını körleştirir. Pratikte K, çapraz doğrulama ile tek sayılar arasından seçilir; √n kuralı iyi bir başlangıç noktasıdır. KNN'in mesafe temelli çekirdeği, 2026'nın en güncel yapay zeka mimarilerinde de yaşıyor: RAG sistemlerindeki vektör araması, özünde embedding uzayında yürütülen bir yaklaşık en yakın komşu (ANN) sorgusudur. FAISS, HNSW tabanlı indeksler ve Pinecone, Weaviate, Qdrant, Milvus gibi vektör veritabanları milyarlarca vektör üzerinde milisaniyeler içinde komşu arayarak bu klasik fikri LLM çağının bel kemiği hâline getirdi. Scikit-learn tarafında KNeighborsClassifier ve KNeighborsRegressor sınıfları algoritmayı KD-Tree ve Ball Tree hızlandırmalarıyla birlikte sunar.
ROC-AUC (ROC Eğrisi ve AUC)
ROC-AUC (Receiver Operating Characteristic - Eğri Altındaki Alan), ikili sınıflandırma modellerinin performansını karar eşiğinden bağımsız olarak değerlendiren temel bir metriktir. ROC eğrisi, modelin ürettiği olasılık tahminlerine farklı karar eşikleri uygulandığında elde edilen Gerçek Pozitif Oranı (TPR - Duyarlılık) ile Yanlış Pozitif Oranı (FPR - 1-Özgüllük) çiftlerini bir grafik üzerinde gösterir. AUC (Area Under the Curve) ise bu eğrinin altındaki alanı ifade eder ve modelin genel ayırt etme gücünü 0 ile 1 arasında tek bir sayıyla özetler. AUC değeri 1.0, modelin tüm pozitif ve negatif örnekleri mükemmel şekilde ayırt ettiğini; 0.5 ise modelin rastgele tahminle eşdeğer olduğunu gösterir. Pratikte 0.7-0.8 arası kabul edilebilir, 0.8-0.9 iyi, 0.9 üstü ise mükemmel performans olarak değerlendirilir. Sıfırın altındaki değerler modelin sistematik olarak yanlış sınıflandırma yaptığını işaret eder; bu nadir durum genellikle sınıf etiketlerinin ters çevrildiği anlamına gelir. ROC-AUC'nin en kritik avantajı dengesiz sınıf dağılımlarına karşı dayanıklı olmasıdır. Tıbbi tanı, dolandırıcılık tespiti ve kredi risk değerlendirmesi gibi nadir olayların baskın olduğu problemlerde doğruluk (accuracy) metriği yanıltıcı sonuçlar verebilirken, ROC-AUC gerçek model kalitesini doğru şekilde yansıtır. Örneğin, yüzde doksanı negatif sınıfa ait olan bir veri setinde, her örneği negatif tahmin eden bir model yüzde doksan doğruluk elde eder; ancak AUC skoru 0.5 olur ve modelin hiçbir ayırt etme gücü olmadığını açıkça ortaya koyar. Birden fazla modeli karşılaştırırken AUC skoru, hangi modelin tüm olası eşik değerleri boyunca daha tutarlı performans sergilediğini nesnel biçimde ortaya koyar. Bu özellik, eşik seçimini erteleyerek model seçim sürecini veriye dayalı kılar. Bununla birlikte, yüksek sınıf dengesizliğinin bulunduğu durumlarda Precision-Recall AUC (PR-AUC) tercih edilmesi önerilir; çünkü ROC-AUC negatif sınıftaki çok sayıda doğru tahmini ödüllendirerek gerçek pozitif başarısını gizleyebilir. Python ekosisteminde scikit-learn kütüphanesi, roc_auc_score() ve roc_curve() fonksiyonlarıyla bu metriğin hesaplanmasını kolaylaştırır. XGBoost, LightGBM ve sklearn pipeline'ları built-in AUC izleme destekler. Çok sınıflı problemlerde ise One-vs-Rest veya One-vs-One stratejisiyle makro ortalama AUC hesaplanabilir; bu yaklaşım her sınıfın ayırt etme gücünü ayrı ayrı raporlar.
Calibration (Model Kalibrasyonu)
Kalibrasyon (Model Calibration), bir makine öğrenimi modelinin ürettiği olasılık tahminlerinin gerçek olayların gözlemlenen sıklığıyla ne ölçüde örtüştüğünü ifade eden bir güvenilirlik kavramıdır. İyi kalibre edilmiş bir model, %80 olasılık verdiği örneklerin yaklaşık %80'inde gerçekten doğru sonuç üretir; %95 dediği durumların da büyük bölümünde haklı çıkar. Bu özellik doğruluk (accuracy) metriğinden bağımsızdır: yüksek doğruluklu bir model, güven skorlarını sistematik biçimde abartıyorsa zayıf kalibre edilmiş sayılır. Tıbbi teşhis, kredi riski değerlendirmesi ve özerk sistemler gibi kararların olasılık eşiklerine bağlandığı uygulamalarda kalibrasyon, tahmin doğruluğu kadar kritik bir öneme sahiptir. Kalibrasyon kalitesini ölçmek için en yaygın metrik Beklenen Kalibrasyon Hatası'dır (Expected Calibration Error, ECE). Bu metrik, güven aralıklarına (confidence bins) bölünmüş örneklerde ortalama güven ile ortalama doğruluk arasındaki mutlak farkı, her kutudaki örnek sayısıyla ağırlıklandırarak tek bir sayıya indirger. Maximum Calibration Error (MCE) ise en kötü kutudaki sapmayı raporlar ve güvenlik açısından hassas senaryolarda tercih edilir. Reliability diagram (güvenilirlik diyagramı) görsel değerlendirme aracıdır: yatay eksende tahmin güveni, dikey eksende gözlemlenen doğruluk yer alır ve ideal kalibrasyon 45 derecelik köşegen çizgiyle temsil edilir. Modelin eğrisi bu çizginin altında kalıyorsa, yani gözlemlenen doğruluk beyan edilen güvenden düşükse model aşırı güvenli (overconfident); üzerindeyse düşük güvenli (underconfident) demektir. Kalibrasyon bozukluğunu gidermek için modeli yeniden eğitmeyen post-hoc yöntemler kullanılır. Platt Scaling, ham skorları lojistik regresyonla olasılığa dönüştürür; Temperature Scaling, softmax girdisi olan logitleri tek bir skaler parametreye (T) bölerek dağılımı yumuşatır ya da keskinleştirir ve çoğu derin ağda daha basit olmasına rağmen daha iyi genelleşir; Isotonic Regression ise parametrik varsayım yapmadan monoton bir eşleme öğrenir. Bu yöntemlerin tümü küçük bir doğrulama kümesi üzerinde dakikalar içinde uygulanabildiğinden üretim ortamında yaygın biçimde tercih edilir. Büyük dil modellerinde kalibrasyon, modelin kendi bilgisizliğini ne kadar dürüst temsil ettiğiyle ilgilidir; yanlış bilgiyi yüksek kesinlikle sunan bir model halüsinasyon riskini büyütür. Bu nedenle kalibrasyon ölçümü, LLM değerlendirme protokollerinde ve seçici tahmin (selective prediction) gibi 'bilmiyorum' deme mekanizmalarının tasarımında temel araçlardan biridir.
Class Imbalance (Sınıf Dengesizliği (Class Imbalance))
Sınıf Dengesizliği (Class Imbalance), bir sınıflandırma veri kümesinde farklı sınıflara ait örnek sayısının birbirine eşit olmaması durumudur. Gerçek dünya veri kümelerinin büyük çoğunluğu bu sorunu taşır: sahtekarlık tespitinde meşru işlemler sahte işlemlere göre yüzlerce kat fazla olabilirken, nadir hastalık teşhisinde hasta örnekleri sağlıklı bireylere oranla son derece azdır. Bir model dengesiz veriyle eğitildiğinde çoğunluk sınıfını tahmin etmeyi öğrenerek yüksek genel doğruluk (accuracy) elde eder; ancak gerçek hayatta kritik olan azınlık sınıfı için yetersiz kalır. Örneğin %99 sağlıklı ve %1 hasta içeren bir veri kümesinde model her zaman 'sağlıklı' tahmin yapsa da %99 doğruluk elde eder. Bu durum, doğruluğun yanlış bir başarı metriği olduğunu ortaya koyar; Precision, Recall, F1 ve AUC-ROC bu tür senaryolarda daha güvenilir metriklerdir. Dengesizlikle başa çıkmanın temel yöntemleri dört grupta toplanır. Veri düzeyinde yöntemler; azınlık sınıfını yapay olarak artıran aşırı örnekleme (oversampling) ve çoğunluk sınıfını azaltan alt örnekleme (undersampling) tekniklerini kapsar. SMOTE (Synthetic Minority Over-sampling Technique), 2002'de sunulmuş en yaygın aşırı örnekleme yöntemi olup mevcut azınlık örneklerini interpolasyon ile çoğaltır. Algoritma düzeyinde yöntemler ise hatalı sınıflandırılmış azınlık örneklerini daha ağır cezalandıran maliyet-duyarlı öğrenmeyi (cost-sensitive learning) kapsar. Sınıf ağırlıkları parametresi (class_weight='balanced' scikit-learn'de) otomatik dengeleme sunar. Ensemble yöntemleri arasında BalancedRandomForest ve EasyEnsemble öne çıkar. Son olarak eşik (threshold) ayarı, model tahmin olasılık eşiğini kaydırarak hassasiyet-geri çağırma dengesini yönetir. Türkiye'deki veri bilimi pratiğinde sahtekarlık tespiti, kredi risk modelleme ve hastalık erken tanı gibi yüksek değerli uygulamaların tamamı sınıf dengesizliği sorunuyla yüzleşmek zorundadır. Bu sorunun farkında olmadan geliştirilen modeller üretim ortamında ciddi hatalara yol açar. Sınıf dengesizliğini doğru teşhis etmek ve uygun yöntemi seçmek, güvenilir bir makine öğrenimi sistemi inşa etmenin temel adımlarından biridir.
Confusion Matrix (Karışıklık Matrisi)
Confusion Matrix (Karışıklık Matrisi), bir sınıflandırma modelinin tahminlerini gerçek etiketlerle karşılaştırarak performansını dört temel metrik üzerinden özetleyen bir tablodur. İkili sınıflandırmada dört hücre bulunur: Gerçek Pozitif (TP), Yanlış Pozitif (FP), Yanlış Negatif (FN) ve Gerçek Negatif (TN). Her hücrenin anlamı şöyledir: TP, modelin pozitif dediği ve gerçekten pozitif olan örneklerdir. TN, modelin negatif dediği ve gerçekten negatif olan örneklerdir. FP (Tip I Hata), modelin yanlışlıkla pozitif dediği örneklerdir. FN (Tip II Hata), modelin yanlışlıkla negatif dediği örneklerdir. Bu dört değerden birçok türev metrik hesaplanır. Doğruluk (Accuracy) = (TP + TN) / Toplam, tüm tahminler arasındaki doğru oranıdır. Kesinlik (Precision) = TP / (TP + FP), modelin pozitif dediği örneklerin ne kadarının gerçekten pozitif olduğunu gösterir. Duyarlılık (Recall / Sensitivity) = TP / (TP + FN), gerçek pozitif örneklerin ne kadarının yakalandığını ölçer. F1 Skoru, precision ve recall'ın harmonik ortalamasıdır: 2 × (Precision × Recall) / (Precision + Recall). Sınıf dengesizliği durumunda accuracy yanıltıcı olabilir. Örneğin yüzde doksan oranında negatif örnek içeren bir veri setinde model her şeyi negatif tahmin etse yüzde doksan doğruluk elde eder; ancak confusion matrix bu durumu anında ortaya koyar: FN sütunu tamamen dolu, TP sütunu ise sıfırdır. Çok sınıflı problemlerde confusion matrix N×N boyutuna genişler; köşegen elemanlar doğru tahminleri, köşegen dışı elemanlar ise yanlış sınıflandırmaları gösterir. Hangi sınıfların birbirine karıştırıldığını anlamak için idealdir. Tıbbi tanı sistemlerinde yanlış negatif (hastalığı kaçırmak) genellikle yanlış pozitiften (gereksiz tetkik) daha maliyetlidir; bu nedenle recall optimize edilir. Spam filtreleme sistemlerinde ise yanlış pozitif (geçerli e-postayı spam saymak) daha kabul edilemez olduğundan precision ön planda tutulur.
Cross-Entropy (Çapraz Entropi)
Çapraz Entropi (Cross-Entropy), sınıflandırma görevlerinde derin öğrenme modellerinin eğitiminde kullanılan en yaygın kayıp fonksiyonudur. Bilgi teorisinden türetilen bu metrik, modelin ürettiği olasılık dağılımının gerçek etiket dağılımıyla ne kadar uyuştuğunu ölçer; fark büyüdükçe kayıp artar ve model parametrelerini güncellemek için daha güçlü bir gradyan sinyali üretilir. Matematikte entropi, bir olayın ne kadar "sürpriz" olduğunu ölçer: nadir olaylar yüksek, yaygın olaylar düşük bilgi içerir. Çapraz entropi ise iki dağılım arasındaki bilgi kaybını ölçer. İkili sınıflandırma (binary classification) için formül: L = −[y·log(ŷ) + (1−y)·log(1−ŷ)]. Burada y gerçek etiket (0 veya 1), ŷ modelin tahmin ettiği olasılıktır. Model yanlış sınıf için yüksek olasılık verdiğinde log terimi sonsuz büyüklüğe yaklaşarak kayıp patlar; bu matematiksel baskı modeli doğru sınıfa yönlendirir. Çok sınıflı sınıflandırma (multi-class) için kategorik çapraz entropi kullanılır: L = −Σ yᵢ·log(ŷᵢ). Doğru sınıfa karşılık gelen terim dışındaki tüm yᵢ değerleri 0 olduğundan, kayıp yalnızca gerçek sınıfın tahmin olasılığına bağlıdır. Softmax aktivasyonu ile birlikte doğal bir eşleşme oluşturur: softmax çıktıları toplamı 1 olan olasılık dağılımı üretir, çapraz entropi bu dağılımla gerçek etiketi karşılaştırır. Çapraz entropi, ortalama karesel hata (MSE) yerine sınıflandırmada neden tercih edilir? MSE, olasılık tahminleri için zayıf gradyanlar üretir: model doğru etikete 0.9 olasılık verirken yanlış yönde ilerlese bile MSE gradyanı küçük kalır. Çapraz entropi ise logaritmik yapısı sayesinde yanlış sınıflara yüksek olasılık veren kötü tahminleri çok daha sert cezalandırır. Eğitimde dikkat edilmesi gereken bir nokta sayısal kararlılıktır: log(0) tanımsızdır. PyTorch ve TensorFlow gibi kütüphaneler log hesaplamasını softmax ile birleştirerek (log-sum-exp trick) bu problemi çözer; `nn.CrossEntropyLoss()` PyTorch'ta softmax + log + NLL kaybını tek adımda uygular. **Label smoothing**, gerçek etiketleri yumuşatarak (ör. 1.0 yerine 0.9, 0.0 yerine 0.1) aşırı güveni önleyen bir çapraz entropi varyantıdır. Model çok eminleştiğinde genelleme kapasitesi düşer; label smoothing bunu hafifletir ve modern transformerların eğitiminde standart hale gelmiştir.
F1 Skoru (F1 Skoru)
F1 skoru, bir sınıflandırma modelinin başarımını tek bir sayıyla ifade eden temel değerlendirme metriğidir. Kesinlik (precision) ve duyarlılık (recall) olmak üzere iki kritik ölçütü harmonik ortalama yoluyla birleştirir: F1 = 2 × (Precision × Recall) / (Precision + Recall). Kesinlik, modelin "pozitif" olarak tahmin ettiği örneklerin gerçekten pozitif olanlarının oranıdır (TP / (TP + FP)); yanlış alarma (false positive) duyarlılığı ölçer. Duyarlılık ise gerçekte pozitif olan tüm örnekler arasında modelin doğru tespit ettiklerinin oranıdır (TP / (TP + FN)); kaçırılan vakaları (false negative) yansıtır. Bu iki metrik çoğunlukla ters yönde hareket eder: kesinliği artırmak duyarlılığı düşürebilir. Harmonik ortalama, düşük olan değeri daha fazla aşağıya çektiği için her iki metrik de yüksek olmadıkça F1 yükselemez. Örneğin Precision = 1.0, Recall = 0.1 iken aritmetik ortalama 0.55 verirken F1 yalnızca 0.182 olur; bu sayede model, iki metrikteki dengeyi korumak zorunda kalır. Dengesiz veri setlerinde—spam tespiti, kredi kartı dolandırıcılığı, nadir hastalık teşhisi gibi problemlerde—ham doğruluk oranı (accuracy) yanıltıcıdır. Binde biri pozitif olan bir veri setinde tüm örnekleri negatif tahmin eden model %99.9 doğruluk elde eder; ancak F1 skoru sıfır olur. F1, bu tür görevlerde azınlık sınıfının gerçek başarımını yansıtan birincil metriktir. Çok sınıflı problemlerde tek bir F1 değeri üç yöntemle hesaplanır: makro F1 (her sınıfa eşit ağırlık), mikro F1 (global TP/FP/FN toplamlarından) ve ağırlıklı F1 (sınıf büyüklüğüne orantılı ağırlık). Hangi varyantın seçileceği, problemin iş gereksinimlerine ve sınıf dengesizliğine göre belirlenir.
Softmax (Softmax Fonksiyonu)
Softmax fonksiyonu, yapay sinir ağlarında çok sınıflı sınıflandırma görevlerinde kullanılan temel matematiksel dönüşümdür. Ham model çıktıları olan logit vektörünü alır ve tüm elemanları (0, 1) aralığında, toplamı tam olarak 1'e eşit olan bir olasılık dağılımına dönüştürür. Matematiksel formülü σ(zᵢ) = exp(zᵢ) / Σⱼ exp(zⱼ) şeklindedir; her bileşen üstel fonksiyondan geçirilip normalize edilir. Fonksiyon, üstel doğası gereği büyük değerleri daha da büyütür, küçük değerleri bastırır. Bu sayede model en olası sınıfı ön plana çıkarır; sonuçlar doğrudan sınıf üyeliği olasılığı olarak yorumlanır. İkili sınıflandırma için kullanılan sigmoid fonksiyonunun her çıktıyı bağımsız olarak 0-1 aralığına sıkıştırmasından farklı olarak softmax, vektör düzeyinde çalışır ve sınıflar arasında rekabetçi normalizasyon yapar; toplamın daima 1 olması garantilendiğinden çıktılar doğru olasılık semantiği taşır. Sayısal kararlılık kritik bir konudur. Büyük logit değerlerinde exp(zᵢ) kayan nokta taşmasına yol açabilir. Standart çözüm, tüm bileşenlerden maksimum değeri çıkarmaktır: σ(zᵢ) = exp(zᵢ − max(z)) / Σⱼ exp(zⱼ − max(z)). Bu form matematiksel olarak özdeştir ama üstel değerleri kontrol altında tutar. PyTorch, TensorFlow ve NumPy bu optimizasyonu dahili olarak uygular. Sıcaklık ölçeklendirmesi (temperature scaling), fonksiyonun davranışını ayarlamak için kullanılır: Softmax(z / T). T = 1 standart çıktı, T büyüdükçe daha yayvan ve belirsiz bir dağılım, T küçüldükçe ise daha keskin ve kararlı bir dağılım ortaya çıkar. Bilgisinin damıtımı (knowledge distillation) tekniğinde yüksek sıcaklık kullanılarak öğretmen modelin logitleri yumuşatılır; öğrenci model sert etiketler yerine bu yumuşak hedefleri öğrenerek daha iyi genelleme yapar. Transformers mimarisindeki dikkat mekanizmasında da softmax merkezi bir rol üstlenir. Sorgu (Q) ve anahtar (K) matrislerinin nokta çarpımı hesaplanır; boyut ölçeklendirmesiyle √d_k'ya bölünür, ardından softmax uygulanarak her sorgu pozisyonu için dikkat ağırlıkları elde edilir: Attention(Q, K, V) = softmax(QK⊤ / √d_k) · V. Burada softmax iki işlevi bir arada yerine getirir: ağırlıkların toplamını 1'e normalize eder ve modelin seçici odaklanmasını destekler.