• Hakkımızda
  • Bize Katıl
  • Sizden Gelenler
  • İletişim
Yazılım Karavanı | Bilişim - Teknoloji - Blog
  • Anasayfa
  • Genel
  • Programlama
    • Ruby
    • Flutter
    • Android
    • Java
    • MySQL
    • Oracle SQL
  • Yaşamdan
  • Algoritmalar
  • Yapay Zeka
  • Topluluklar
No Result
View All Result
  • Anasayfa
  • Genel
  • Programlama
    • Ruby
    • Flutter
    • Android
    • Java
    • MySQL
    • Oracle SQL
  • Yaşamdan
  • Algoritmalar
  • Yapay Zeka
  • Topluluklar
No Result
View All Result
Yazılım Karavanı | Bilişim - Teknoloji - Blog
No Result
View All Result
Home Yapay Zeka

Makine Öğreniminde Aşırı Öğrenme (Overfitting) Durumu

Ali Murat Çevik by Ali Murat Çevik
Eylül 10, 2021
in Yapay Zeka
6 min read
0
Makine Öğreniminde Aşırı Öğrenme (Overfitting) Durumu
WhatsApp'ta PaylaşTwitter'da PaylaşLinkedIn'de PaylaşTelegram'da Paylaş

Merhabalar, bu yazıda makine öğrenimi alanında sıkça karşılaşılan aşırı öğrenme (overfitting) – ezber problemine değineceğim. “Aşırı öğrenme (overfitting) nedir?”, “Nasıl meydana gelir?”, “Engellemek için neler yapılmalıdır?” sorularının cevaplarını arayacağız. Keyifli okumalar 🚀🚀

Overfitting Nedir?

Overfitting, modelinizin öğrenme yerine ezber yöntemine geçmesine verilen isimdir. Aşırı öğrenme durumunu tespit etmek için en iyi yöntemlerden birisi; eğitim verisi dışında, ilk kez karşılaşacağı veriler ile modeli test etmektir. Eğitim verileri ile %90’ın üzerinde (hatta %100’e yakın) başarılı sonuç elde edebilirken harici veriler ile bu oran çok çok düşük olabilmektedir. Makine öğrenmesindeki amaç, problemin çözümü için genel bir çözüm üretmektir. Çözümün sağlanabilmesi için tüm veriler için genelleme yapılmalıdır.

overfitting
Resim 1: Az. Uyum — Çok Uyum [2]

 

Southern New Hampshire Üniversitesi’nde yayınlanan bir makaleye göre, “Japonya-Fukushima Nükleer Kazası” olarak bilinen olayın sebepleri arasında overfitting yatıyor. Japonya’da yapılan çalışmada deprem verileri ile bir modelin eğitilmesi deneniyor. Doğrusal regrasyon uygulanarak, depremlerin yıllık frekansının belirlendiği bu projenin çıktılarına baktığımızda 7.3 şiddetinde grafikteki doğrusallık kırılıyor. Doğrusal regrasyona göre kırılma olmaması gereken bu noktada bir şekilde overfitting karşımıza çıkıyor. [3]

Bu durumda hatalı olarak 1000+ yılda 1 kez 8.5 büyüklüğünde deprem yaşanabileceği sonucu elde ediliyor. Halbuki gerçek sonuçlara ulaşılabilseydi, modelin çıktısı 300 yılda bir kez böyle bir depremin olabileceğine işaret edecekti. [4]

Fukushima Nükleer Santrali yapılırken bu modelin çıktıları baz alınarak inşaatına başlanılmış ve nükleer santral 8.6 şiddetine dayanacak şekilde inşa edilmiş. Malesef, 2011 yılında meydana gelen 9 büyüklüğündeki deprem, atmosfere radyoaktif madde salınmasına sebep olmuştur. Aradaki 0.4 büyüklüğündeki farkın deprem konusunda çok fazla tahribata neden olabileceği belirtiliyor.

Aşırı Öğrenmenin Önüne Nasıl Geçebiliriz?

  • Girdileri Azaltın
    Oluşturmuş olduğunuz modelde input miktarını azaltmayı başarabilirseniz ezber senaryosundan uzaklaşabilirsiniz. Modelde çok fazla değişken kullanılıyor olması overfittinge sebep olabilir. İki değişken arasındaki doğrusal ilişkinin azaltılması, değişkenlerin daha sade hale getirilmesi ezberlemenin önüne geçilmesi için faydalı olacaktır.
  • Regularization (Düzenlileştirme)
    Regularization olarak adlandırılan düzenlileştirme, ezber durumumun önüne geçilmesi için kullanılan bir yöntemdir. Regularization içerisinde Ridge, Lasso, Elastic Net kavramları karşımıza çıkmaktadır. Ridge’ye göre önemi düşük değişkenlerin kat sayısı küçültülür ancak tüm değişkenlerin kullanılmasına devam edilir. Lasso Regrasyonu’nda ise önemsiz değişkenlerin kat sayıları 0 yapılır, böylelikle belli değişkenler seçilmiş olur. Bu iki regrasyon arasındaki fark, kayıp fonksiyonunun cezalandırma derecesidir. Kat sayıların düzenlenmesi ve değişkenlerin seçimi arasındaki dengeye ise Elastic Net adı verilmektedir.
  • Verileri Artırın
    Aşırı öğrenme durumunun yaşanma sebebi verilerin çeşitliliğinin az olmasından kaynaklanıyor ise bu durumda veri sayısının artırılması bir çözüm olabilir. Örneğin hayvanlar ile ilgili bir çalışma yaptığınızı varsayalım. Bu çalışmada kullandığınız kedi image verilerinin hep aynı cins kedilere ait olması istenilmeyen bir durumdur. Heterojen veriler ile eğitim yapmak, çeşitliliği sağlamak açısından sonuçlara daha faydalı olacaktır.
  • Eğitimi Zamanında Durdurun
    Kullanılan veri setleri eğitim, validation ve test olmak üzere 3 ‘e ayrılır. Bu bölümlerin oranları: eğitim %70, validation %20, test %10 veya eğitim %70, validation %10, test %20 olacak şekilde ağırlıklandırılabilir. Eğitimdeki hatalar test edilirken validation hatasının ilk artmaya başladığı nokta overfitting başlangıcı olarak kabul edilir. Tam bu noktada eğitim durdurularak overfitting durumunun önüne geçilebilir.

Kaynaklar:

  • [1] Resim 1: Az. Uyum — Çok Uyum, https://veribilimcisi.files.wordpress.com/2017/07/azuyum_cokuyum.png.
  • [2] Stacey, B. (2015). Fukushima: The failure of predictive models, https://mpra.ub.uni-muenchen.de/69383/1/MPRA_paper_69383.pdf, Erişim Tarihi: 04/09/2021.
  • [3] Overfitting, Underfitting ve Bias-Variance İkilemi, http://erdoganb.com/2017/07/overfitting-underfitting-ve-bias-variance-ikilemi, Erişim Tarihi: 04/09/2021.
  • [4] Underfitting ve Overfitting, https://www.datasciencearth.com/underfitting-ve-overfitting, Erişim Tarihi: 04/09/2021.




alim cevik
Tags: Makine ÖğrenimiYapay Zeka
SendTweet5Share1Share
Önceki Gönderi

Google Cloud Teknolojileri

Sonraki Gönderi

Google Play App Bundle Uygulama İmzalama

İlgili Yazılar

VGG-19 Transfer Learning ile Görüntü Sınıflandırma

VGG-19 Transfer Learning ile Görüntü Sınıflandırma

by Ali Murat Çevik
Eylül 12, 2022
0

VGG19 Nedir? VGG19, adını Oxford Üniversitesi’nde bulunan “Visual Geometry Group” isimli gruptan almaktadır. Sonda bulunan 19 ise katman sayısını belirtmektedir....

Python NLTK Kütüphanesi İle Basit Bir Chatbot Yapımı

Python NLTK Kütüphanesi İle Basit Bir Chatbot Yapımı

by Emre İnaç
Ağustos 23, 2022
0

CHATBOT NEDİR ? Chatbot, bir cihazda, (Siri, Alexa, Google Asistan vb.), uygulamada, web sitesinde veya diğer ağlarda bulunan yapay zeka...

Makine Öğrenimi Nedir?

Makine Öğrenimi Nedir?

by Emre İnaç
Ağustos 4, 2022
0

Makine Öğrenimi (ML), Yapay Zeka(AI)’ nın bir alt sınıfıdır. Makine öğrenimi; insana ait akıllı karar verme ve tahmin davranışlarını taklit...

Sıfırdan Yolo v4 Tiny Özelleşmiş Nesne Tespiti (Custom Object Detection)

Sıfırdan Yolo v4 Tiny Özelleşmiş Nesne Tespiti (Custom Object Detection)

by Emre İnaç
Temmuz 26, 2021
0

Bu makale, YOLO v4 teknolojisini kullanarak özelleşmiş nesne algılama ve nesne sınıflandırma için izlenmesi gereken işlemleri adım adım anlatan bir...

Makine Öğrenimi İçin Veri Artırımı (Data Augmentation)

Makine Öğrenimi İçin Veri Artırımı (Data Augmentation)

by Emre İnaç
Temmuz 23, 2021
0

Görüntü verisi büyütme, veri kümesinde görüntülerin değiştirilmiş versiyonlarını oluşturarak eğitim veri kümesinin boyutunu yapay olarak genişletmek için kullanılan bir tekniktir....

Next Post
Google Play App Bundle Uygulama İmzalama

Google Play App Bundle Uygulama İmzalama

Azure Application Insights

Azure Application Insights

Bir cevap yazın Cevabı iptal et

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

  • Popüler
  • Yorumlar
  • En Yeniler
Sıfırdan Yolo v4 Tiny Özelleşmiş Nesne Tespiti (Custom Object Detection)

Sıfırdan Yolo v4 Tiny Özelleşmiş Nesne Tespiti (Custom Object Detection)

Temmuz 26, 2021
B Ağaçları (B Trees)

B Ağaçları (B Trees)

Ağustos 24, 2020
Splash Screen Yapımı #Flutter

Splash Screen Yapımı #Flutter

Mayıs 25, 2020
Gini Index Kullanılarak Karar Ağacının (Decision Tree)  Oluşturulması

Gini Index Kullanılarak Karar Ağacının (Decision Tree) Oluşturulması

Ağustos 20, 2020
2020 ‘nin En Güncel ve Tehlikeli Zararlı Yazılımları

2020 ‘nin En Güncel ve Tehlikeli Zararlı Yazılımları

6
Magento 2 Detaylı Kurulum & Hatalar

Magento 2 Detaylı Kurulum & Hatalar

5
Flutter’da TFLite Kullanımı

Flutter’da TFLite Kullanımı

4
Bubble Sort (Kabarcık Sıralama) Algoritması

Bubble Sort (Kabarcık Sıralama) Algoritması

2
VGG-19 Transfer Learning ile Görüntü Sınıflandırma

VGG-19 Transfer Learning ile Görüntü Sınıflandırma

Eylül 12, 2022
SOC Sistemler Üzerine Faydalı Notlar

SOC Sistemler Üzerine Faydalı Notlar

Eylül 2, 2022
Python NLTK Kütüphanesi İle Basit Bir Chatbot Yapımı

Python NLTK Kütüphanesi İle Basit Bir Chatbot Yapımı

Ağustos 23, 2022
Makine Öğrenimi Nedir?

Makine Öğrenimi Nedir?

Ağustos 4, 2022

Reklam

Yazılım Karavanı | Bilişim – Teknoloji – Blog

Bilgi Teknolojileri alanına meraklı herkesin buluşma noktası!

No Result
View All Result
  • Anasayfa
  • Genel
  • Programlama
    • Ruby
    • Flutter
    • Android
    • Java
    • MySQL
    • Oracle SQL
  • Yaşamdan
  • Algoritmalar
  • Yapay Zeka
  • Topluluklar

© 2020 Yazılım Karavanı Kaynak gösterilmesini rica ederiz.