Makine öğrenimi, doğru tahmin yapan modeller oluşturmaya odaklanır. Değerlendirme metrikleri, bir modelin verimliliğini ölçmenin bir yolunu sunar; bu da, performans sonuçlarına göre algoritmaları hassaslaştırmamıza ve hatta değiştirmemize olanak tanır.
"Olasılık" kavramı bu ölçümlerin çoğunun merkezinde yer alır. Bir modelin tahminlerinin gözlemlenen verilerle ne kadar iyi uyum sağladığını ölçer. Bu nedenle model eğitimi ve değerlendirmesinde çok önemli bir rol oynar.
Örneğin, daha yüksek olasılığa sahip bir model, gözlemlenen verilerin, verilen modelin varsayımları altında daha olası olduğunu öne sürer.
TensorFlow ve PyTorch gibi teknoloji araçları, özellikle sınıflandırma veya dizi tahmini gibi görevlerde sıklıkla olasılığa dayalı ölçümler kullanır. Bu ölçümlere göre uyarlanmış işlevler ve kütüphanelerle donatılmış bu tür araçlar, model değerlendirme görevini erişilebilir ve oldukça verimli hale getirir.
Olasılığı ve bununla ilgili ölçümleri anlamak, makine öğrenimi alanında çalışan herkes için hayati öneme sahiptir. Model değerlendirme ve iyileştirme için temel oluşturmamızı sağlar.
Aşağıda, makine öğreniminde nasıl çalıştıklarını ve birbirleriyle nasıl ilişki kurduklarını görmek için üç temel değerlendirme metriğine daha yakından bakacağız.
Çapraz entropi, genellikle gerçek veri modellerini bir modelin tahmin edilen sonuçlarıyla yan yana getirerek iki olasılık kümesi arasındaki varyansı değerlendirir. Matematiksel olarak p
ve q
ayrık dağılımları için H(p, q)
çapraz entropisi şu şekilde verilir:
H(p, q) = -\sum p(x) \log(q(x))
Burada \( p(x) \) x
olayının gerçek olasılığıdır ve q(x)
aynı olayın modele göre tahmini olasılığıdır.
Esas olarak sınıflandırma problemlerinde, özellikle de çıktının birden fazla sınıfa ait olabileceği senaryolarda uygulanır. Bir modelin tahminlerinin gerçek sonuçlardan ne kadar uzak olduğuna dair net bir ölçüm sağladığı için kullanılır. Çapraz entropi ne kadar düşük olursa, modelin tahminleri gerçek değerlerle o kadar iyi uyum sağlar.
Çeşitli yazılım kütüphaneleri çapraz entropi içeren hesaplamaları yönetebilecek donanıma sahiptir. Özellikle:
tf.nn.softmax_cross_entropy_with_logits
gibi işlevler sağlar.
torch.nn.CrossEntropyLoss
gibi işlevlerle benzer bir yetenek sunar.
log_loss
işlevini kullanarak çapraz entropi ile yakından ilişkili olan log kaybını hesaplamak için yardımcı programlar da sunar. Logaritmik kaybın kısaltması olan Logloss, yanlış sınıflandırmaları cezalandırarak bir sınıflandırıcının doğruluğunu ölçer. Doğru etiketi y
ve tahmini olasılığı p
olan ikili bir sınıflandırma için log kaybı şu şekilde verilir:
L(y, p) = -y \log(p) - (1 - y) \log(1 - p)
Esas itibarıyla log kaybı, ikili sınıflandırma problemlerinin tahminleri ile gerçek etiketler arasındaki çapraz entropidir. Çok sınıflı sınıflandırmaya genişletildiğinde logloss, her sınıf için çapraz entropi değerlerini toplayarak iki ölçümü yakından ilişkili hale getirir.
Esas olarak ikili ve çok sınıflı sınıflandırma problemlerinde kullanılır. Gücü, tahminlerin belirsizliğini, gerçek etiketlerden ne kadar saptıklarına göre ölçebilme yeteneğinde yatmaktadır.
Mükemmel bir modelin log kaybı 0 olacaktır, ancak pratikte değerler bundan daha büyük olma eğilimindedir.
Bir dizi yazılım kütüphanesi log kaybını hesaplamamıza olanak tanır:
Scikit-öğren . Yaygın olarak kullanılan bir makine öğrenimi kitaplığı olan scikit-learn, hem ikili hem de çok sınıflı sınıflandırma senaryolarına uygun log_loss
işlevini sunar.
TensorFlow ve PyTorch. Bu çerçeveler temel olarak sinir ağlarına ve derin öğrenmeye odaklanırken, sınıflandırma görevleri için çapraz entropi kaybı fonksiyonlarını kullanırken doğal olarak log kaybı hesaplarlar.
LightGBM ve XGBoost. Tablosal veri yarışmalarındaki yüksek performanslarıyla bilinen bu gradyan artırıcı çerçeveler, aynı zamanda log kaybının hesaplanmasına yönelik işlevler de içerir; bunlar, özellikle sınıflandırma zorluklarında model performansını değerlendirirken faydalıdır.
Bu, olasılık dağılımının veya olasılık modelinin bir örneği ne kadar iyi tahmin ettiğinin bir ölçümüdür.
Tarafından verilmiştir:
Perplexity(P) = 2^{H(P)}
H(P)
P
dağılımının çapraz entropisi olduğunda, şaşkınlık, bir modelin her karar noktasında sahip olduğunu düşündüğü ağırlıklı ortalama seçenek sayısını etkili bir şekilde temsil eder.
Çapraz entropi bağlamında, daha yüksek bir çapraz entropi değeri daha yüksek bir karışıklığa karşılık gelir ve bu da modelin tahminleri konusunda daha belirsiz olduğunu gösterir.
Şaşkınlığın en dikkate değer uygulaması, bir modelin bir kelime dizisini ne kadar iyi tahmin ettiğini ölçtüğü dil modellerindedir. Daha az karmaşıklığa sahip bir model, daha az ortalama dallanma faktörüne işaret ettiğinden veya daha basit bir ifadeyle bir dizideki bir sonraki kelime hakkında daha kesin olduğu için üstün kabul edilir.
Dil modellerinin yanı sıra şaşkınlık, diziler veya dağılımlar üzerindeki tahmin kalitesinin çok önemli olduğu diğer olasılıksal modellerde de ilgili bir ölçüm olabilir.
Çeşitli araç ve platformlar şaşkınlığın hesaplanmasına ve yorumlanmasına yardımcı olur:
NLTK . Doğal Dil Araç Takımı olasılıksal dil modelleri oluşturmaya yönelik araçlar sağlar ve bu modellerin değerlendirilmesi için karmaşıklığı hesaplar.
TensorFlow ve PyTorch. Derin öğrenmeye dayalı dil modelleri için bu çerçevelerin her ikisi de çapraz entropiyi hesaplamak için işlevler sunar ve bu daha sonra yukarıdaki formül kullanılarak karışıklığa çevrilebilir.
Gensim . Çoğunlukla konu modellemesiyle tanınan Gensim, aynı zamanda karmaşıklığı hesaplamaya yönelik yöntemler de içerir; bu yöntemler özellikle oluşturulan konuların tutarlılığını değerlendirirken faydalıdır.
Çapraz entropi, log kaybı ve şaşkınlık, bilgi teorisi ve olasılıksal modellemeye dayanan ölçümlerdir. Temel amaçları, ister sınıflandırma ister olasılık dağılımı tahmini olsun, tahminlerin kalitesini değerlendirmektir. Yüksek düzeyde:
Evrensel bir ölçüm olarak çapraz entropi, amacın belirli bir olasılık dağılımına yaklaşmak veya eşleştirmek olduğu problemler için çok uygundur. Çok sınıflı sınıflandırma görevlerinde parlıyor. Örnekler arasında, her görüntünün çeşitli kategorilerden birine ait olabileceği görüntü sınıflandırması veya semptomlarına dayanarak bir hastanın sahip olabileceği hastalık türünün tahmin edilmesi yer alır.
Sınıflandırma için özel olarak tasarlanan logloss, ikili ve çok sınıflı problemler için başvurulacak metrik haline gelir ve kendinden emin yanlış tahminleri ağır bir şekilde cezalandırır. Gücü kesin olasılıksal tahminlere olan duyarlılığında yatmaktadır.
Örneğin, spam tespitinde (spam veya spam değil), müşteri kaybı tahmini (kaybedilecek veya kaybedilmeyecek) veya belirli bir işlemin hileli olup olmadığının tahmin edilmesi.
Son olarak, çoğunlukla dil modellemede kullanılan şaşkınlık, bir modelin dizileri ne kadar iyi tahmin ettiğini değerlendirir. Daha düşük değerler, sıralı tahminleri daha kesin olan bir modele işaret eder. Modelin sıradaki bir sonraki kelimeyi veya ifadeyi tahmin ettiği metin oluşturma görevleri, makine çevirisi veya konuşma tanıma için kullanılabilir.
Her üç ölçüm de olasılıksal modellerin değerlendirilmesiyle ilgilense de bunların uygulanabilirliği görevin doğasına göre farklılık gösterir: dağıtım eşleştirme, sınıflandırma veya dizi tahmini.
Deneyimli bir makine öğrenimi uzmanı, model performansının en bilgilendirici değerlendirmesini sağlamak için göreve en uygun ölçümü seçer.
Çapraz entropi, log kaybı ve şaşkınlık gibi değerlendirme metriklerinin nüanslarının tanınması, makine öğrenimi projelerinde bilinçli karar almayı doğrudan etkiler. Bu ölçümlerin her biri, kendine özgü özellikleri ve kullanımlarıyla, tahmin modellerinin kesinliğini ve güvenilirliğini büyük ölçüde etkilemektedir.
ML'de TensorFlow, Scikit-learn ve NLTK gibi platformların kullanılması metriklerin hesaplanmasını kolaylaştırır ve model değerlendirmelerini geliştirir. En iyi sonuç için seçilen metriğin projenin hedefleriyle uyumlu olduğundan daima emin olun.
Elbette alıştığınız gibi iyi bilinen araçları uygulamak kolaydır, ancak sonunda onları gerçekten anlamak daha faydalı olabilir. Öğrenmeye devam edin ve karşılaştığınız her görev için doğru ölçümü seçin.