- Bilgisayarların istatistiksel öğrenme (statistical learning) tekniklerini kullanarak verideki örüntüleri otomatik olarak belirleyip tahmin yapma sürecini görsel olarak açıklar
- Bir konut veri kümesini kullanarak New York ve San Francisco’daki konutları ayırt eden bir modelin nasıl kurulduğunu adım adım görselleştirir
- Karar ağacı (decision tree) merkezde olacak şekilde, split point, branch ve leaf node gibi kavramlar üzerinden öğrenme ve tahmin sürecini somut biçimde gösterir
- Modelin doğruluğunu artırma sürecinde aşırı öğrenme (overfitting) sorununu görsel olarak ortaya koyar ve eğitim verisi ile test verisi arasındaki farkı açıklar
- Makine öğrenmesinin temel kavramlarını sezgisel olarak anlamayı sağlayacak şekilde tasarlanmış etkileşimli bir görsel öğrenme kaynağıdır
Makine öğrenmesinin temel kavramları
- Makine öğrenmesi, bilgisayarların istatistiksel öğrenme tekniklerini uygulayarak verideki örüntüleri otomatik biçimde belirleyip buna dayanarak doğru tahminler yapmasını sağlayan bir teknolojidir
- Örnek olarak, konut verileri kullanılarak New York ve San Francisco’daki konutları sınıflandıran bir model kurulur
- Bu tür sınıflandırma çalışmaları makine öğrenmesinde classification (sınıflandırma) problemi olarak adlandırılır
Sezgisel ayrım ve feature
- San Francisco’nun coğrafyası çok tepeli olduğu için rakımı yüksektir
- Bu yüzden konutların rakımı (elevation) iki şehri ayırmak için faydalı bir ölçüt olabilir
- Örneğin, rakım 240 fitin üzerindeyse San Francisco olarak sınıflandırılabilir
- Buna metrekare başına fiyat (price per square foot) da eklenirse daha hassas bir ayrım yapılabilir
- Rakım 240 fitin altındayken ve birim alan başına fiyat $1776 veya üzerindeyse New York olarak sınıflandırılır
- Verinin her boyutu feature, predictor (tahmin değişkeni) veya variable (değişken) olarak adlandırılır
Sınır ve model eğitimi
- Rakım ve fiyat temel alınarak bir scatterplot üzerinde sınırlar görselleştirilebilir
- Verideki sınırları matematiksel olarak belirlemek, istatistiksel öğrenmenin özüdür
- Gerçek veri kümesi 7 boyuta sahiptir ve model buna dayanarak eğitilir (training)
- Scatterplot matrix aracılığıyla değişkenler arasındaki ilişkiler görsel olarak incelenir
Karar ağacının çalışma mantığı
- Makine öğrenmesi, verideki örüntüleri bulmak için istatistiksel öğrenmeden yararlanır; bunun yöntemlerinden biri de karar ağacıdır
- Karar ağacı, her seferinde tek bir değişkeni temel alarak if-then kuralları ile veriyi dallara ayırır
- Örnek: “Eğer rakım belirli bir değerin üzerindeyse San Francisco” kuralını uygular
- Bu tür ayrım noktalarına split point denir ve ağacın her branch yapısını oluşturur
Bölmenin doğruluğu ve ödünleşim
- İlk bölme (ör. 240 fit eşiği) bazı San Francisco konutlarını yanlış sınıflandırır (false negatives)
- Buna karşılık tüm San Francisco konutlarını kapsamak istenirse bu kez New York konutları da içeri girer (false positives)
- En iyi bölme (best split), her dal içindeki verinin mümkün olduğunca homojen olmasını sağlamaktır
- Bunu hesaplamak için Gini index ve cross entropy gibi yöntemler kullanılır
Recursion ve ağacın büyümesi
- Algoritma, her alt veri kümesi için bu süreci tekrar ederek ağacı recursion yoluyla genişletir
- Düşük rakımda metrekare başına fiyat, yüksek rakımda ise toplam fiyat bir sonraki bölme değişkeni olarak seçilir
- Bölmeler tekrarlandıkça ağacın prediction accuracy değeri artar
- Bir adım eklendiğinde %84’e, birden çok adım eklendiğinde %96’ya kadar yükselir
- Tüm dallar eklenirse %100 doğruluk da elde edilebilir
- Son ayrım noktaları leaf node olur ve her düğüm çoğunluk sınıfına göre konutları sınıflandırır
Tahmin ve doğrulama
- Eğitilmiş karar ağacı, her veri noktasını ağacın dalları boyunca ilerleterek hangi şehre ait olduğunu tahmin eder
- Eğitimde kullanılan veri training data, yeni veri ise test data olarak ayrılır
- Model eğitim verisinde kusursuz çalışsa da yeni veride performansı düşebilir
- Bunun nedeni aşırı öğrenme (overfitting) olup, modelin gereksiz ayrıntıları da öğrenmiş olmasıdır
Özet ve sonraki adım
- Makine öğrenmesi, verideki sınırları bularak örüntüleri belirler ve tahmin üretir
- Karar ağacı, veriyi if-then kurallarıyla sınıflandıran temsilî yöntemlerden biridir
- Aşırı öğrenme, anlamlı olmayan ayrımları da öğrenip genelleme performansını düşüren bir olgudur
- Bir sonraki yazıda aşırı öğrenme ile bias/variance tradeoff arasındaki ilişki ele alınacaktır
1 yorum
Hacker News görüşleri
R2D3'ün yaratıcılarından biri benim. Bu yazıyı bugün görmek hoşuma gitti. Burada ya da Bluesky'da soruları alabilirim
Bu gerçekten bir başyapıt. Makine öğrenmesini her anlattığımda bu interaktif açıklamayı kullanıyorum. Benzer kaynakların bir derlemesi burada var
Daha önce kendi yaptığım S-TIER öğrenme kaynakları listesinden bahsetmiştim.
S-TIER, animasyon, görselleştirme ve interaktif öğelerin kusursuz biçimde birleştiği içerik anlamına geliyor.
A-TIER faydalı ama daha az görsel; görüş odaklı blogları ise en alta koyuyorum.
Benim seçtiğim S-TIER siteler şunlar:
growingswe.com/blog, ciechanow.ski/archives, mlu-explain.github.io, seeing-theory.brown.edu, svg-tutorial.com, lumafield.com/scan-of-the-month/health-wearables
Bu ölçüte göre HN'deki tüm blog bağlantılarını otomatik sınıflandıran bir yer imi yöneticisi yapmak istiyorum
Geçmişte yaptığım projeler arasında en sevdiklerimden ikisi Fill in the Blank ve Grokking
Bunu yer imlerine ekledim. Çoğu LLM anlatımında bu tür görsel referanslar eksik oluyor.
Genelde ya 10 bin kelimelik bir makale oluyor ya da tek satırlık bir tweet özeti; arada bir şey yok
Bu 2015 tarihli bir çalışma. Hem teknik hem de kavramsal olarak zamanının ötesindeydi
Gerçekten harika. Veri görselleştirme ile AI/ML'nin kesişimi çok ilginç bir alan.
Bakmaya değer yerler arasında mlu-explain.github.io, visxai.io, Google PAIR'in explorables'ı ve GA Tech'in poloclub'ı var
Keşke böyle yazılar daha fazla olsa. Ben görsel öğrenmeyi seviyorum.
Build Your Own React yazısını hatırlattı. Doğrudan ilgili değil ama benzer tarzda, takip etmesi kolay bir blog. Bu formatta yazılar öğrenme açısından çok verimli oluyor
Şimdiye kadar gördüğüm karar ağacı açıklamaları arasında en iyilerden biri.
Aşağı kaydırdıkça bölme sürecini görsel olarak gösteren animasyon, ders kitaplarındaki uzun açıklamalardan çok daha sezgisel
Bu interaktif açıklamalar hâlâ ML kavramlarını sezgisel olarak anlatmanın en iyi örnekleri arasında.
Formüllerle başlayan teknik yazılardan çok daha etkili bir yaklaşım bu
Transformer'ın attention mechanism gibi yüksek boyutlu kavramlarını R2D3 tarzında anlatan bir kaynak olup olmadığını merak ediyorum