‫Modelleme Bölüm dört.
‫Bu, modelleme ve karşılaştırmanın son kısmıdır.
‫Burada bilmek istediğimiz, modelimizin gerçek dünyada nasıl bir performans göstereceğidir.
‫Modelinizin performansını hiper parametre ayarlamasıyla çalkalayıp geliştirdikten sonra, test setinde
‫nasıl performans gösterdiğini görmenin zamanı geldi.
‫Test seti, makine öğrenimi modelleri için final sınavı gibidir.
‫Veri bölmelerinizi doğru bir şekilde oluşturduysanız, modelinizin üretimde dağıtıldığında nasıl bir performans
‫göstereceği konusunda size bir fikir vermelidir.
‫Bu, sadece yerel bilgisayarınızda olmak yerine müşteriyle yüzleşmek anlamına gelir.
‫Modeliniz test setindeki verileri hiç görmediğinden, modelinizi bu veriler üzerinde değerlendirmek nasıl genelleme yaptığını
‫görmek için iyi bir yoldur.
‫Genelleme derken, daha önce görmediği verilere uyum sağlamayı kastettiğimi unutmayın; örneğin Kalp Hastalığı
‫Tahmini Makine Öğrenimi modelimizin, orijinal veri setimizde olmayan bir hastada kalp hastalığı olup
‫olmadığını sınıflandırmada nasıl performans göstereceği gibi.
‫İyi bir model eğitim, doğrulama ve test setlerinde benzer sonuçlar verecektir ve eğitim ve doğrulama
‫setindeki modelden test setine kadar performansta hafif bir düşüş görmek nadir değildir.
‫Örneğin, modeliniz eğitim veri setinde %98, test setinde ise %96 doğruluk oranına ulaşabilir.
‫Endişelenmeniz gereken şey, eğitim seti performansının test setinden önemli ölçüde daha yüksek olmasıdır,
‫bu da uygunsuzluk olarak bilinir.
‫Test seti performansının eğitim seti performansından yüksek olması aşırı uyum olarak da bilinir.
‫Aşırı uyum ve uygunsuzluğun her ikisi de bir modelin iyi genelleme yapamamasının örnekleridir, ki bu da istemediğimiz
‫şeydir.
‫İdeal model Goldilocks bölgesinde ortaya çıkar.
‫Tam oturdu.
‫Çok iyi değil, ama çok kötü de değil.
‫Burada bu makine öğrenimi modelini görüyorsunuz, eğer bu sizin verileriniz olsaydı, bu yeşil veri
‫noktaları, buradaki çizgi, şekle uyuyor.
‫Ancak bu, uygunsuz olarak sınıflandırılabilir.
‫Modelimizin yapmasını istediğimiz şey bu değil.
‫Şuradaki ise tüm veri noktalarına uyma konusunda iyi bir iş çıkarıyor, ancak çok fazla
‫yaklaşıyor.
‫Neredeyse fazla mükemmel bir model.
‫Aralarında yılan gibi kıvrılıyor.
‫Dolayısıyla bu örnek, modelin bu veri setinde kalıpları çok iyi öğrendiği anlamına gelir.
‫Bu, final sınavına girmeden önce final sınavını görmek gibi bir şey olurdu.
‫Burası Goldilocks bölgesi.
‫Doğru.
‫Bu, tam olarak bu Goldilocks bölgesinin dengeli bir model gibi olduğu yinelemeli bir süreçtir.
‫Verilerinize ve çözmeye çalıştığınız soruna gerçekten bağlıyız.
‫İşte bu yüzden, tekrar ediyorum, bu dengeli bölgeyi bulmak yinelemeli bir süreç.
‫Ve şimdi farklı makine öğrenimi problemleri üzerinde çalışarak biraz deneyim ve pratik yaptıktan sonra, modelinizin
‫aşırı mı yoksa yetersiz mi uyum sağladığını anlamaya başlayabileceksiniz.
‫Şimdi, uygunsuz ve aşırı uyumun gerçekleşmesinin birkaç nedeni vardır, ancak bunların başlıcaları veri
‫sızıntısı ve veri uyumsuzluğudur.
‫Veri sızıntısı, test verilerinizin bir kısmı eğitim verilerinize sızdığında meydana gelir ve bu genellikle aşırı uyumla veya bir
‫modelin test setinde eğitim veri setinden daha iyi performans göstermesiyle sonuçlanır.
‫Hatırlayın, sanki final sınavına bakacak olsaydınız ya da herkes final sınavına alıştırma sınavı
‫olarak bakmak zorunda kalsaydı, makine öğrenimi modeliniz test edilmek üzere olduğu şeyi yeni öğrenmiş
‫olurdu.
‫Yani modelleme zamanı geldiğinde, bunu çok iyi öğreniyor ve verilere bu şekilde uymaya
‫başlıyor.
‫İşte bu nedenle bölmelerinizi doğru bir şekilde yapmanız ve makine öğrenimi modeli eğitiminin yalnızca eğitim veri seti üzerinde
‫gerçekleştiğinden emin olmanız önemlidir.
‫Doğrulama ve model ayarlama yalnızca doğrulama veya eğitim veri seti üzerinde gerçekleşir.
‫Ve bu test ve model karşılaştırması test veri seti üzerinde gerçekleşir.
‫Ve bazı farklı yaklaşımlar hatırlıyorum.
‫Yalnızca bir eğitim ve test seti kullanın ve eğitim setinde model ayarlaması yapın.
‫Ancak testler her zaman aynı kalır.
‫Tıpkı üniversiteye gittiğinizde bir kurs almanız gibi.
‫Final sınavının bir şeyleri ne kadar iyi anladığınızın bir göstergesi olduğundan emin olmak istersiniz.
‫Makine öğrenimi için test veri seti ile aynı.
‫Test veri seti, modelinizin gerçek dünyada ne kadar iyi genelleme yapacağının bir göstergesi olarak kullanılır.
‫Bu yüzden veri sızıntısını önlemek istersiniz.
‫Veri uyuşmazlığı, üzerinde test yaptığınız veriler eğitim yaptığınız verilerden farklı olduğunda ortaya
‫çıkar; örneğin eğitim verilerinde test verilerinden farklı özellikler olması gibi.
‫Bu tür bir uyumsuzluk, modellerin test verilerinde eğitim verilerine kıyasla daha düşük performans göstermesine neden olabilir.
‫Bu nedenle, eğitimin test edeceğiniz verilerle aynı türde ve gelecekteki uygulamalarınızda kullanacağınız
‫verilere mümkün olduğunca yakın veriler üzerinde yapılmasını sağlamak önemlidir.
‫Uygunsuzlukla mücadele etmenin diğer yolları arasında daha gelişmiş bir model kullanmak yer alır.
‫Bu, tamamen farklı bir model veya mevcut modelinizdeki hiper parametrelerin sayısını artırmak anlamına gelebilir.
‫Tavuk yemeğimizi pişirirken, fırınımızın hiper parametrelerinden birini yukarı çevirerek değiştirebileceğimizi
‫hatırlayın.
‫Bu, kullanabileceğiniz bir sinir ağında yalnızca iki katman kullanmak yerine bir makine öğrenimi
‫modelinde yapabileceğiniz bir şey olabilir.
‫Gelecekteki bir projede bunu daha fazla göreceğiz.
‫Modellemeye çalıştığınız özelliklerin sayısını da azaltabilirsiniz.
‫Belki de verileriniz çok fazla özelliğe sahiptir ve kullandığınız model bu özelliklerdeki örüntüleri bulmakta zorlanıyordur.
‫Son olarak, modelinizi daha uzun süre eğitebilirsiniz.
‫Bazen modellerin eğitilmesi veya öğrenmesi beklediğinizden daha uzun sürer.
‫Deneylerinizden biri daha uzun bir eğitim aşaması içerebilir.
‫Aşırı uyumu azaltmak için.
‫Faydalı çözümler daha fazla veri toplamaktır.
‫Daha fazla veri, bir modelin bulması için daha fazla potansiyel kalıp sağlayacak ve böylece hepsini bulma potansiyelini
‫azaltacaktır.
‫Ya da daha az gelişmiş bir model kullanmayı deneyebilirsiniz.
‫Bu nadir görülen bir durumdur, ancak bir olasılıktır.
‫Kullandığınız model öğrenme konusunda çok iyi ve verilerinizi çok iyi modelliyor.
‫Yanlış tahminlere yol açabileceğinden çok iyi performans gösteren modellere karşı dikkatli olun.
‫Unutmayın, hiçbir model mükemmel değildir, bu nedenle kötü sonuçlarınızı kontrol ettiğiniz kadar iyi sonuçlarınızı da kontrol ettiğinizden
‫emin olun.
‫Son olarak, iki farklı modeli birbiriyle karşılaştırırken, örneğin elmaları elmalarla ve portakalları
‫portakallarla karşılaştırdığınızdan emin olmanız önemlidir.
‫Model iki Veriler üzerinde eğitildi.
‫Set bir ve veri üzerinde eğitilmiş Model üç, set bir.
‫Ve karşılaştırma yaparken, yalnızca nihai sonucu değil, oraya ulaşmak için nelerin gerektiğini de dikkate aldığınızdan
‫emin olmak istersiniz.
‫Model iki 93'te bir tahmin yapmak için 1/2 alırsa. 1 doğruluk.
‫Model 3'ün 94'te bir tahminde bulunması 4 saniye sürer. 7 doğruluk.
‫Bu ekstra %3'lük doğruluk, fazladan 3 saniyelik tahmin süresine değer mi?
‫Şimdi, bu hedefin ne olduğuna bağlı olacaktır, ancak tahmin süresi için optimizasyon yapıyorsanız, tahminleri olabildiğince
‫hızlı yapmak istersiniz.
‫Model ikiyi seçebilirsiniz çünkü Model üçten dört kat daha hızlı, ancak daha yüksek bir doğruluk
‫düzeyinde tahminler yapar.
‫Yine, ne tür bir uygulama veya üretim kullanım durumu kullanmak istediğinize bağlı olarak bu farklı olacaktır.
‫Ancak akılda tutulması gereken bazı şeyler, hangisini kullanmanız gerektiğini seçerken bir modelin nasıl performans gösterdiğinden
‫daha fazlasıdır.
‫Bu dersten hatırlamak isteyeceğiniz birkaç şey Aşırı uyum ve uygunsuzluktan kaçının.
‫Genelliğe doğru giden bir model istiyorsunuz.
‫Pratik sınavınızı yaptığınızda, final sınavını görseydiniz, bilgilerini gerçek dünyada kullanabilecek
‫biri olmak yerine sadece uzman bir ezber makinesi haline gelebilirdiniz.
‫Test setini her ne pahasına olursa olsun ayrı tutun.
‫Verilerinizi böldüğünüzde, bir eğitim setine sahip olmak ve ardından test veri setini atıp kilitlemek
‫istersiniz.
‫Modeliniz eğitildikten sonra test veri setini açabilir, kilidini açabilir, kasadan çıkarabilir
‫ve modelleri karşılaştırırken modelinizin nasıl performans gösterdiğini görebilirsiniz.
‫Elmaları elmalarla karşılaştırın, veri seti bir ve veri seti bir üzerinde model bir ve model ikiye sahip olun.
‫Karşılaştırdığınız iki modelin aynı tür bir ortamda oluşturulduğundan emin olmak istersiniz, böylece
‫karşılaştırdığınız şeylerin meşru karşılaştırmalar olduğundan emin olabilirsiniz.
‫Son olarak, en iyi performans ölçütü en iyi model anlamına gelmez.
‫Örneğimizde, tahmin süresi için optimizasyon yapıyor olabileceğinizi unutmayın.
‫Dolayısıyla, daha hızlı tahmin yapan bir model, biraz daha uzun süren başka bir model kadar yüksek
‫doğruluk elde edemez.
‫Bu sizin için önemli olmayabilir çünkü mümkün olduğunca hızlı tahmin yapabilen bir şeye ihtiyacınız var.
‫Phew, bu çok fazlaydı, ancak kurs boyunca bunun çok daha fazlasını göreceğiz.
‫Ayrıca tüm makine öğrenimi kariyeriniz boyunca kullanacaksınız, bu nedenle bu kavramları hatırlamanız
‫önemlidir.
‫Bir sonraki adıma geçelim ve önceki adımların tümünü altıncı adım deneyinde nasıl bir araya getirebileceğimizi
‫görelim.