çapraz doğrulama / Çapraz doğrulama | Kaggle

Çapraz Doğrulama

çapraz doğrulama

Çapraz doğrulama (istatistik)

Çarpraz-doğrulama diyagramı.

Çarpraz doğrulama, yapılan bir istatistiksel analizin bağımsız bir veri setinde nasıl bir sonuç elde edeceğini sınayan bir model doğrulama tekniğidir.[1] Başlıca kullanım alanı bir öngörü sisteminin pratikte hangi doğrulukla çalışacağını kestirmektir. Bir öngörü probleminde, model genellikle bir "bilinen veri" kümesiyle eğitilir ("eğitim kümesi") ve bir "bilinmeyen veri" kümesiyle ("doğrulama kümesi" ya da "test kümesi") sınanır.[2] Bu sınamanın amacı, eğitilen modelin yeni verilere genelleşme kabiliyetini ölçmek ve aşırı uyma ya da seçim yanlılığı problemlerini tespit etmektir.[3]

Çapraz doğrulamanın ilk adımı farklı miktarlarda örnekler seçilerek veri kümeleri oluşturulmasıdır. Tipik olarak verilen eğitim kümesi ve test kümesi olarak birbirini tamamlayan iki kümeye ayrılır. Birinci küme üzerinde analiz yapılarak model oluşturulur ve ikinci küme üzerinde model sınanır. Varyansı azaltmak için bu doğrulama adımı birkaç defa tekrarlanır. Çapraz doğulama ismini aynı veri örneklerinin farklı şekillerde gruplanmasından (çaprazlama) alır. Çaprazlanan gruplar üzerinde yapılan sınama sonuçları birleştirilerek (örn. ortalama) modelin genel tahmin başarısı ölçülür.

Kaynakça[değiştir

Makine Öğrenmesi modellerini eğitirken beklenti modelin kullanılan veri ile en iyi genellemeyi yapmasını sağlamak olmalıdır. Eğer eğitilen model yine eğitim sırasında kullanılan veri ile test edilirse, model kullanılan veriye aşırı uyum mu (overfitting) gösteriyor yoksa gerçekten iyi bir genelleme mi yapmış anlamak mümkün olmayacaktır.

Regresyon modelleri için en iyi genelleme kavramını bir örnekle açıklayalım. Aşağıdaki iki grafikte ev büyüklüğü ile satın alma değeri arasındaki ilişki tahmin edilmeye çalışılmış. Soldaki model daha fazla hata yapmış gözükürken, sağdaki model veri seti ile yüksek(aşırı) uyumluluk göstermiş görünüyor.

 

İlk bakışta sağdaki model ne kadar iyi görünse de eldeki verinin hiçbir zaman tüm olasılıkları sağlayacak kadar çok olması mümkün olmadığından makine öğrenmesi modelleri için sağdaki modelin oluşması istenmeyen bir durumdur. Veri setinin tamamı model eğitiminde kullanıldığı takdirde (veri ve modeli hemen hiçbir zaman bu kadar basitçe görüntülemek de mümkün olmadığından) sağdaki grafikte oluşan durumu tespti etmek mümkün olmayacaktır. Zira böyle bir durumda model eldeki veri setini oldukça (gereğinden fazla) iyi öğrendiği (ezberlediği) için sonuçlar yanıltacak şekilde iyi çıkacaktır.

Eğitim setine yüksek uyumluluk göstermiş (overfitting) modeller yeni bir örnek ile karşılaştığında yüksek hata yapmaya başlarlar. Aşağıdaki şekilde grafiklere yeni örnek eklendiğinde, sağdaki modelin daha yüksek hata yaptığı açıkça görülebilmektedir.

 

Dolayısı ile gerek sınıflandırma (classification) gerek regresyon (regression) modellerini eğitirken veri setini eğitim (train) ve test seti olarak ikiye ayırmak gerekmektedir.

 

train test split

Eğitim seti ile model eğitilirken test seti ile de modelin ne kadar iyi çalıştığı metriklerle ölçülür. Tam bu aşamada model için parametre ayarlaması (parameter tuning) yapılır. Parametre ayarlaması yapılırken model komplekslik grafiği çizmek en doğru yoldur.

Model komplekslik grafiği diğer tüm model parametreleri sabit tutulup tek bir parametre değiştirilerek her seferinde modelin baştan eğitilmesi sonucu eğitim ve test seti ile alınan sonuçların (metrik skorlarının) karşılaştırılması ile yapılır. Aşağıda örnek çizime bakılacak olursa, Degree (herhangi bir model parametresi olarak kabul edilebilir) parametresi 1&#;den 4&#;e kadar değiştirilerek her seferinde ERROR (hata) fonksiyonunun çıktısı karşılaştırılmış. Degree 2 yapıldığında eğitim (training) ve test setlerinin hata değeri Degree=1 ile karşılaştırıldığında azalmış görünüyor. Ancak Degree sırası ile 3 ve 4 yapıldığında ise eğitim seti için hata giderek azalmış olsa da test seti için hata miktarı tekrar artmaya başlamış. Dolayısı ile aşağıdaki örnek için Degree 3 ve 4 değerlerinde eğitilmiş modeller eğitim setine aşırı uyum göstermiş (overfitting) durumdadır.

Sonuç olarak istenilen metrik değerine eğitim ve test setleri için beraber en iyi değeri veren parametre değeri seçilerek parametre ayarlaması yapılması gerektiği söylenebilir. Buna göre aşağıdaki örnek için Degree=2 değeri en iyi sonuç veren değer olarak seçilebilir. Her bir parametre için bu şekilde optimal değeri bularak en iyi genellemeyi verecek parametre setini bulmak mümkün ki bu yönteme grid-search adı verilir.

model complexity graph

 

Ancak ikiye ayrılan veri setinin her iki kısmı da modele karar verilirken kullanılmış oldu. Bu durumda test için ayırdığımız veri seti ile modeli test etmek hileli olacaktır. Makine Öğrenmesi Uzmanları için altın kuraldır:

Test için kullanılacak hiçbir veriyi model eğitilirken kullanma! 

Dolayısı ile veri seti başta belirtildiği gibi ikiye değil üçe ayrılmalıdır: eğitim (training), doğrulama (validation) ve test setleri.

Yukarıdaki şekilde model parametre ayarlaması sırasında kullanılan sete doğrulama (validation) seti denir. Model doğrulandıktan sonra son aşamada genelleme ölçümü içen kullanılan set ise test setidir.

Çapraz doğrulama (cross-validation) ise parametre ayarlama sırasında eğitim setinin her seferinde farklı bir kısmı ile doğrulama yapma işlemine denir. Örnek ile açıklamak gerekirse, veri setinin seçilen orandaki kısmı test seti olarak ayrıldıktan sonra kalan kısmın ilk %25&#;lik kısmını ilk model eğitiminde, ikinci %25&#;lik kısmını ikinci model eğitiminde&#; şeklinde sırası ile uygulanarak tüm kısımlar hem doğrulama hem eğitim sırasında kullanılır. Bu sayede doğrulama setinin doğru şekilde seçilip seçilmediği kaygısı ortadan kalkar, parametre seçimi ise her bir çapraz doğrulama (cross-validation) seti ve eğitim (training) seti ile ölçülen metrik skorlarının (hata, doğruluk, f1 vs.) ortalaması alınarak yapılır.

Sonuç olarak, model komplekslik grafiği (model complexity graph) çiziminde test seti skoru değil, çapraz doğrulama seti skoru kullanılmalıdır.

 

 

nest...

oksabron ne için kullanılır patates yardımı başvurusu adana yüzme ihtisas spor kulübü izmit doğantepe satılık arsa bir örümceğin kaç bacağı vardır

© 2024 Toko Cleax. Seluruh hak cipta.