Makine Öğrenmesi Performansının Ölçülmesi
Makine öğrenmesi, verilerden öğrenen ve belirli bir görevi otomatik olarak gerçekleştiren bilgisayar programları geliştirmek için kullanılan bir bilim dalıdır. Makine öğrenmesinde farklı amaçlar için farklı algoritmalar kullanılır. Örneğin, sınıflama algoritmaları, bir veri öğesinin hangi kategoriye ait olduğunu belirlemek için kullanılır. Kestirim algoritmaları ise, bir veri öğesinin bir özellik veya sonuç değerini tahmin etmek için kullanılır.
Eğitim işlemi, algoritmaları ve veri setini kullanarak bir model geliştirme (eğitim) işlemidir. Model, verilerdeki örüntüleri veya ilişkileri yakalamak için kullanılan bir matematiksel fonksiyondur. Eğitim işlemi, modelin verileri en iyi şekilde açıklayan veya tahmin eden parametrelerini bulmak için veri setini algoritmalara uygulamaktır. Geliştirilen modellerin başarısını ölçmek modeli değerlendirebilmek için gereklidir. Modelin ne kadar iyi performans gösterdiğini, verileri ne kadar doğru açıkladığını veya tahmin ettiğini belirlemek için performans ölçümleri kullanılır. Performans ölçümleri, modelin çıktılarını gerçek değerlerle karşılaştırarak bir hata veya doğruluk oranı hesaplar. Sınıflandırma ve sayısal tahmin olmak üzere iki farklı performans ölçüm yöntemi bulunur. Sınıflandırma, veri öğelerinin ait olduğu sınıfı belirtir ve çıktıda sonlu ve ayrık değerler olduğunda kullanılır. Örnek: Kredi Riski tahmin eden bir makine öğrenmesi modeli düşünelim. Bu model, kişilerin gelir, yaş, eğitim, borç, kredi geçmişi gibi özelliklerini kullanarak, kredi başvurusunda bulunan kişilerin kredi riskini düşük veya yüksek olarak sınıflandırır. Modelinizi oluşturduktan sonra, doğrulama veya test aşamasında, modelinizin performansını ölçmek istersiniz. Test veri setinde kredi riski düşük veya yüksek olarak etiketli kişilerin model tarafından doğru olarak sınıflandırılmasını beklersiniz. Makine öğrenmesinin tahminlerini gerçek etiketlerle karşılaştırmanız gerekir. Test setinde "kredi riski yüksek" olarak etiketlenmiş bir kişiye ait girdiler verildiğinde "kredi riski yüksek" olduğunu tahmin etmesini beklersiniz ancak her zaman böyle olmaz. Modeller tıpkı insanlar gibi (böyle işlemlerde insanlardan çok daha fazla) hatalı sınıflandırmalar yapabilir. Sınıflandırma için geliştirilen bir model örnekteki gibi ikili sınıflandırmada dört farklı tahmin üretebilir. Gerçek kredi riski yüksek olan bir kişi (KR+) model tarafından "kredi riski yüksek" olarak tahmin edilirse buna doğru pozitif (TP), gerçekte kredi riski yüksek olmasına rağmen "kredi riski düşük" olarak sınıflandırılırsa buna yanlış negatif (FN) denir. Gerçekte "kredi riski düşük" olan bir kişi (KR-) model tarafından "kredi riski yüksek" olarak sınıflandırılırsa buna yanlış pozitif (FP), gerçekte "kredi riski düşük" olan bir kişi "kredi riski düşük" olarak tahmin edilirse buna doğru negatif (TN) denir. Yanlış pozitif ve yanlış negatif sırasıyla Tip I ve Tip II hata olarak adlandırılır. Bu durumu şöyle bir tablo ile gösterebiliriz: | Gerçek Etiket | Tahmin Edilen Etiket | Sonuç | | :-----------: | :------------------: | :---: | | KR+ | KR+ | TP | | KR+ | KR- | FN | | KR- | KR+ | FP | | KR- | KR- | TN | Bu tabloyu kullanarak, modelinizin doğruluk, hassasiyet, geri çağırma, F1 skoru gibi çeşitli metriklerini hesaplayabilirsiniz. Bu metrikler, modelinizin ne kadar iyi çalıştığını değerlendirmenize yardımcı olur. Ayrıca, modelinizin karar eşiğini değiştirerek, yanlış pozitif ve yanlış negatif hatalarını azaltmaya çalışabilirsiniz. Örneğin, kredi riski tahmininde, yanlış negatif hataları (gerçekte kredi riski yüksek olan kişilere kredi vermek) yanlış pozitif hatalarından (gerçekte kredi riski düşük olan kişilere kredi vermeyi reddetmek) daha maliyetli olabilir. Bu nedenle, modelinizin karar eşiğini yükselterek, yanlış negatif hatalarını azaltabilirsiniz. Ancak, bu durumda yanlış pozitif hatalarınız artabilir. Bu yüzden, modelinizin performansını değerlendirirken, iş probleminizin özelliklerini ve maliyetlerini de göz önünde bulundurmanız gerekir. Sınıflandırma performansını ölçmek için kullanılan bazı metrikler şunlardır: - Doğruluk: Modelin doğru tahmin ettiği veri öğelerinin toplam sayısının, tüm veri öğelerinin sayısına oranıdır. Doğruluk, modelin genel performansını ölçmek için kullanılır. Ancak, sınıflar arasında dengesizlik olduğunda yanıltıcı olabilir. Örneğin, 100 veri öğesinden 90’ı A sınıfına ve 10’u B sınıfına ait olsun. Model, tüm veri öğelerini A sınıfına tahmin etse bile, doğruluğu %90 olacaktır. Bu durumda, modelin B sınıfını hiç tanımadığını göz ardı eder. - Hassasiyet: Modelin A sınıfı olarak tahmin ettiği veri öğelerinden, gerçekten A sınıfına ait olanların oranıdır. Hassasiyet, modelin yanlış pozitifleri (gerçekte A sınıfına ait olmayan ama A sınıfı olarak tahmin edilen veri öğeleri) azaltma yeteneğini ölçmek için kullanılır. - Duyarlılık: Modelin gerçekten A sınıfına ait olan veri öğelerinden, A sınıfı olarak tahmin ettiği veri öğelerinin oranıdır. Duyarlılık, modelin doğru pozitifleri (gerçekte A sınıfına ait olan ve A sınıfı olarak tahmin edilen veri öğeleri) yakalama yeteneğini ölçmek için kullanılır. - F1-Skoru: Hassasiyet ve duyarlılığın harmonik ortalamasıdır. F1-skoru, hassasiyet ve duyarlılık arasında bir denge sağlamak için kullanılır. F1-skoru, 0 ile 1 arasında bir değer alır. 1, mükemmel bir performansı, 0 ise en kötü performansı gösterir. Örnek: Bir banka, müşterilerinin kredi kartı borcunu ödeyip ödemeyeceğini tahmin etmek için bir makine öğrenmesi modeli geliştirdi. Bu model 100.000 veriden oluşan test verisinin tamamını "öder" olarak tahmin ederse doğruluğu %95 olur ancak model aslında hiçbir borcunu ödemeyen müşteriyi doğru tahmin etmemiştir. Böyle bir durumda tek başına doğruluk metriğinin anlamı kalmaz. Kesinlik değeri %0.0 olarak hesaplanır. Pozitif tahmin değeri %95 olarak hesaplanır. Özgüllük değeri %100 olarak hesaplanır. Duyarlılık değeri ise %0.0 olarak hesaplanır. Modelin başarısını değerlendirmek için hangi metriklerin incelenmesi gerektiği çok önemlidir. Örnekte verilen bir problem durumu için kesinlik ve duyarlılık değerlerinin önemi ön plana çıkmaktadır. Geliştirilen bir modelin sınıflandırma başarısı değerlendirilirken bu tür durumlara dikkat edilmelidir. Sayısal tahmin, veri öğelerinin bir sayısal değerini tahmin etmek için kullanılır. Sayısal tahmin performansını ölçmek için kullanılan bazı metrikler şunlardır: - Ortalama Mutlak Hata (MAE): Modelin tahminleri ile gerçek değerler arasındaki mutlak farkların ortalamasıdır. MAE, modelin ne kadar hata yaptığını ölçmek için kullanılır. MAE, 0 ile sonsuz arasında bir değer alır. 0, mükemmel bir performansı, yüksek değerler ise kötü bir performansı gösterir. - Ortalama Kare Hata (MSE): Modelin tahminleri ile gerçek değerler arasındaki kare farkların ortalamasıdır. MSE, MAE’ye benzer şekilde modelin hata miktarını ölçmek için kullanılır. Ancak, MSE, büyük hataları daha fazla cezalandırır. MSE, 0 ile sonsuz arasında bir değer alır. 0, mükemmel bir performansı, yüksek değerler ise kötü bir performansı gösterir. - Kök Ortalama Kare Hata (RMSE): MSE’nin kareköküdür. RMSE, MSE ile aynı amaçla kullanılır. Ancak, RMSE, tahminler ile gerçek değerler arasındaki farkın ölçeğinde bir değer verir. RMSE, 0 ile sonsuz arasında bir değer alır. 0, mükemmel bir performansı, yüksek değerler ise kötü bir performansı gösterir. - R-Kare: Verilerin yerleştirilmiş regresyon hattına ne kadar yakın olduğunun istatistiksel bir ölçüsüdür. R-kare, modelin verileri ne kadar iyi açıkladığını ölçmek için kullanılır. R-kare, 0 ile 1 arasında bir değer alır. 1, mükemmel bir uyumu, 0 ise hiçbir uyum olmadığını gösterir. |