MACHINE LEARNING NEDİR?
Bir e-posta kutusunun spam'i nasıl tanıdığını hiç düşündünüz mü? Hiç kimse oturup "şu kelime varsa, şu adresten geldiyse, şu saatte yollandıysa spam'dir" diye milyonlarca kural yazmıyor. Sistem, milyonlarca örnek e-postaya bakıyor ve hangi örüntülerin spam'le birlikte ortaya çıktığını kendisi çıkarıyor. İşte machine learning'in özü tam burada — kuralı insan değil, veri yazıyor.
Machine Learning Nedir?
Machine learning (makine öğrenmesi), bir bilgisayar programının açıkça programlanmadan, veriden örüntü çıkararak görev başarısını artırmasıdır. Tom Mitchell'in klasik tanımıyla söylersek: bir program T görevini, P performans ölçütüyle, E deneyimi sayesinde daha iyi yapıyorsa, o program "öğreniyor" demektir.
Pratikte bu şu anlama gelir: siz programa "spam neyse onu bul" diye kural listesi vermezsiniz. Bunun yerine etiketlenmiş bir veri kümesi (binlerce "spam" ve "spam değil" örneği) verir, bir model seçer ve modelin parametrelerini veriye bakarak ayarlamasına izin verirsiniz. Sonuçta elde edilen şey, görmediği yeni e-postalar için de tahmin yapabilen bir fonksiyondur.
Klasik Kural Tabanlı Yazılımdan Farkı
Geleneksel yazılımda mühendis problemi düşünür, mantığı kural olarak yazar ve program o kuralları uygular. Girdiye karşılık çıktının nasıl hesaplanacağı baştan bellidir. Machine learning bu denklemi tersine çevirir: girdileri ve doğru çıktıları verirsiniz, sistem aradaki ilişkiyi kendisi öğrenir.

Farkı somutlaştıralım. Bir kredi başvurusu kararı vermeyi düşünün:
- Kural tabanlı yaklaşım: "Gelir 20.000 TL üzeriyse, geçmiş borç yoksa, yaş 25'in üstündeyse onayla." Kurallar net, izlenebilir, ama gerçek dünyanın grilerini yakalayamaz.
- Machine learning yaklaşımı: Geçmiş 100.000 başvurunun verisi ve sonuçları verilir. Model, geliri 18.000 olan ama 5 yıldır aynı işte çalışan birinin riskinin, geliri 25.000 olan ama sık iş değiştirenden daha düşük olduğunu kendisi keşfeder.
- Bakım maliyeti: Kural tabanlı sistemde her yeni dolandırıcılık türü için yeni kural yazılır. ML modelinde yeni verilerle yeniden eğitilir.
- Şeffaflık: Kural tabanlı sistem "neden" sorusuna direkt cevap verir; ML modeli için ek açıklama yöntemleri (SHAP, LIME) gerekir.
Öğrenme Türleri
Tüm makine öğrenmesi problemleri aynı şekilde çalışmaz. Üç ana paradigma vardır:
- Gözetimli öğrenme (Supervised): Girdiyle birlikte doğru cevap da verilir. Sınıflandırma (spam mı değil mi) ve regresyon (ev fiyatı kaç TL) bu kategoridedir.
- Gözetimsiz öğrenme (Unsupervised): Etiket yoktur, model verideki yapıyı kendi bulur. Müşteri segmentasyonu, anomali tespiti tipik örneklerdir.
- Pekiştirmeli öğrenme (Reinforcement): Ajan bir ortamda hareket eder, ödül ya da ceza alır, zamanla ödülü en yükseğe çıkaran politikayı öğrenir. Oyun motorları, robotik, öneri sistemleri.
Machine Learning Hangi Problemler İçin Uygundur?
Her problem ML adayı değildir. Doğru cevap şu sorularla bulunur:
- Örüntü var mı? Veride gerçekten öğrenilebilir bir yapı yoksa hiçbir model çıkaramaz.
- Yeterli veri var mı? Birkaç yüz örnekle çalışan basit modeller olsa da çoğu güncel yöntem on binlerce örnek ister.
- Kuralları açıkça yazmak zor mu? "Kedi nedir" sorusunun kuralını yazmak imkânsızdır — örneklerle öğretmek mantıklıdır. "KDV %20'dir" için ML kullanmak ise saçmadır.
- Hata payına tolerans var mı? ML modelleri olasılıksal çalışır. Banka faiz hesabı gibi deterministik olmak zorunda olan işlerde ML yeri yoktur.
Tipik uygun alanlar: görüntü ve metin sınıflandırma, tahmin (talep, fiyat, arıza), öneri sistemleri, anomali tespiti, doğal dil işleme, konuşma tanıma.
Bir ML Modeli Nasıl Kurulur?
Tipik bir akış şu adımlardan oluşur:
- Problem tanımı — tahmin edilecek hedef değişken net olarak belirlenir.
- Veri toplama ve temizleme — eksik değerler, aykırı gözlemler ele alınır.
- Öznitelik mühendisliği — ham veriden modelin işine yarayacak değişkenler türetilir.
- Model seçimi — lineer regresyondan derin sinir ağlarına geniş bir yelpaze vardır.
- Eğitim — model parametreleri veriye uydurulur; genellikle bir kayıp fonksiyonu (örn. ortalama kare hata) minimize edilir.
- Değerlendirme — modelin görmediği test verisinde performansı ölçülür. Eğitim verisindeki yüksek doğruluk yanıltıcıdır.
- Dağıtım ve izleme — model üretime alınır; zamanla verinin dağılımı değiştiği için (data drift) performans takip edilir.

Sık Yapılan Yanlış Anlamalar
Machine learning'i yeni öğrenenlerin sıkça düştüğü tuzaklar:
- "Daha fazla veri her zaman daha iyi modeldir." Veri kalitesi miktardan önemlidir. Etiketsiz, çelişkili veya önyargılı veri modeli kötüleştirir.
- "Model %99 doğruluk verdi, harika." Veri dengesizse (örneğin spam'lerin %1 olduğu bir kümede), her şeye "spam değil" diyen bir model bile %99 alır. Doğru metrik konuya göre seçilmelidir.
- "ML insan kararını ortadan kaldırır." ML kararı sayısallaştırır, ama hangi metriği optimize edeceğine, hangi hatayı kabul edeceğine yine insan karar verir.
- "Karmaşık model, basit modelden iyidir." Çoğu pratik problemde lojistik regresyon ya da gradient boosting, kötü kurulmuş bir derin öğrenme modelinden daha iyi sonuç verir.
Nereden Başlamalı?
Eğer alana ilk kez giriyorsanız, sırasıyla şunları öğrenmek mantıklıdır: Python temelleri, NumPy ve Pandas ile veri manipülasyonu, temel istatistik (ortalama, varyans, dağılımlar), scikit-learn ile klasik algoritmalar, ardından TensorFlow veya PyTorch ile derin öğrenme. Algoritma seçimi, ön işleme adımları ve değerlendirme metrikleri için kapsamlı kullanıcı kılavuzunu referans alabilirsiniz. Konunun sistematik bir yol haritasıyla ilerlemek isteyenler machine learning eğitimi içeriğinden yararlanabilirsiniz.
Machine learning'in büyüsü, programa ne yapacağını söylemek yerine örneklerle öğretebilmenizdedir. Bu yaklaşımı tanıdığınızda, etrafınızdaki pek çok ürünün — arama sonuçlarının sıralanması, telefonunuzun yüz tanıması, harita uygulamasının trafik tahmini — neden öyle çalıştığını farklı bir gözle görmeye başlarsınız.



