MIT563 Yapay Zeka ve Makine Öğrenmesi

Slides:



Advertisements
Benzer bir sunumlar
Çıkarımsal İstatistik
Advertisements

Prof. Dr. Ali ŞEN Akdeniz KARPAZ Üniversitesi
MIT563 Yapay Zeka ve Makine Öğrenmesi
MIT503 Veri Yapıları ve algoritmalar
IT503 Veri Yapıları ve algoritmalar
KONU :GÖRÜNTÜNÜN GEOMETRİK MODELLERİNİN KURULMASI
MIT503 Veri Yapıları ve algoritmalar Algoritma Oluşturma – Açgözlü algoritmalar ve buluşsallar Y. Doç. Yuriy Mishchenko.
MIT563 Yapay Zeka ve Makine Öğrenmesi
MIT563 Yapay Zeka ve Makine Öğrenmesi
MIT505 İnternet ve Web Programlama: Web Şablonları ve Web düzenleme
İstatistik Tahmin ve Güven aralıkları
MIT563 Yapay Zeka ve Makine Öğrenmesi
Kİ-KARE TESTLERİ A) Kİ-KARE DAĞILIMI VE ÖZELLİKLERİ
Öğretim İhtiyacını Belirleme
MIT563 Yapay Zeka ve Makine Öğrenmesi
Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği
CLUSTERING USING REPRESENTATIVES Hazırlayan: Arzu ÇOLAK
MIT503 Veri Yapıları ve algoritmalar Algoritmalara giriş
Ölçme Düzeyleri Ölçeklerin Kullanılması
Bölüm 8: EĞRİ UYDURMA Fizikte laboratuarda yapılan deneysel ölçümlerin ne kadar hata payı içerdiğini, veya belli teorik modellere ne kadar uyduğunu bilmek.
Bellek Tabanlı Sınıflandırma
MIT503 Veri Yapıları ve algoritmalar En önemli graf problemleri
TÜREV UYGULAMALARI.
BTP 108 BİLGİSAYAR AĞ SİSTEMLERİ AĞ KAVRAMI Birden çok bilgisayarın birbirine bağlı olarak kullanılmasıyla oluşturulan çalışma biçimine bilgisayar ağı.
Karar Ağaçları.
MIT563 Yapay Zeka ve Makine Öğrenmesi
ÖĞRETİM ANALİZİ Amaçların Sınıflandırılması Bilişsel Öğrenmeler
MIT505 İnternet ve Web Programlama: Dinamik web sayfaları, javascript
MIT563 Yapay Zeka ve Makine Öğrenmesi
IT 504 İnternet ve Web Programlama Tanıtım Yrd. Doç. Yuriy Mishchenko.
OLASILIK DAĞILIMLARI Bu kısımda teorik olasılık dağılımları incelenecektir. Gerçek hayatta birçok olayın dağılımı bu kısımda inceleyeceğimiz çeşitli olasılık.
MIT503 Veri Yapıları ve algoritmalar Veri ağaçları
Probleme Dayalı Öğrenme Modeli
Bölüm 4: Sayısal İntegral
Bölüm6:Diferansiyel Denklemler: Başlangıç Değer Problemleri
SÜREKLİ ŞANS DEĞİŞKENLERİNİN OLASILIK YOĞUNLUK FONKSİYONLARI
Yıldız Teknik Üniversitesi Makina Müh. Bölümü
BİYOİNFORMATİK NEDİR? BİYOİNFORMATİKTE KULLANILAN SINIFLAMA YÖNTEMLERİ
Bölüm5 :Kök Bulma Sayısal bilgisayarlar çıkmadan önce, cebirsel denklemlerin köklerini çözmek için çeşitli yollar vardı. Bazı durumlarda, eşitliğinde olduğu.
ÖNGÖRÜMLEME (Forecasting)
Makine Öğrenmesinde Yeni Problemler
Microsoft Office Access
Karar Bilimi 1. Bölüm.
SÜREKLİ ŞANS DEĞİŞKENLERİ
BAH TABLOSU.
ULUSAL MESLEKİ BİLGİ SİSTEMİ
İSTATİSTİK YGULAMALARI: SINAVA HAZIRLIK
Yapay Sinir Ağları (YSA)
Bulanık Mantık Kavramlar:
Veri Madenciligi . Sınıflandırma ve Regresyon Ağaçları ( CART )
Kesikli Olasılık Dağılımları
Sayısal Analiz 7. Hafta SAÜ YYurtaY.
Toplam Kalite Yönetimi
İSTATİSTİKTE TAHMİN ve HİPOTEZ TESTLERİ İSTATİSTİK
BİL3112 Makine Öğrenimi (Machine Learning)
Yapay Sinir Ağları (Artificial Neural Networks) Bir Yapay Sinir Ağı Tanımı (Alexander, Morton 1990) Yapay sinir ağı, basit işlemci ünitelerinden oluşmuş,
END 457 Sezgisel Arama ve Yapay Zeka
BÖLÜM 11 DEĞERLENDİRME. BÖLÜM 11 DEĞERLENDİRME.
Özel Gereksinimli Öğrenciler ve Fen Öğretimi
EKONOMİK DEĞERLENDİRME YÖNTEMLERİ
Bölüm 4 : VERİ MADENCİLİĞİ
Makine Öğrenmesinde Yeni Problemler YILDIZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ.
DERS3 Prof.Dr. Serpil CULA
ÜSTEL DÜZLEŞTİRME YÖNTEMİ
Makine Öğrenmesinde Yeni Problemler
Öğretim Teknolojileri ve Materyal Geliştirme
Yapay Zeka Nadir Can KAVKAS
NİŞANTAŞI ÜNİVERSİTESİ
Yapay Öğrenme Teorisi Bölüm-2
Sunum transkripti:

MIT563 Yapay Zeka ve Makine Öğrenmesi Yrd. Doç. Yuriy Mishchenko

Ders planı Pratik soruları Önyargı ve varyans durumları Öğrenme eğrileri Model seçme soruları “Büyük Veri” kavramı

Pratik uygulama soruları Makine öğrenmesi pratik bilim alanı olduğu nedeniyle, onun için pratik sorular çok önemlidir Makine öğrenmesinin pratik uygulamalarında çok fazla özel yaklaşımların geliştirilmesi gerekiyor Bu özel yaklaşımları bilmeden pratik uygulamalarda başarılı olması çok zordur

Pratik uygulama soruları Tipik makine öğrenme problemi senaryosu: Bir pratik sorun için model ve ona bağlı karar verme yöntemi geliştirmek lazım Makine öğrenme bir yaklaşımı kullanılır (lineer regresyon, lojistik regresyon, destek vektör makinesi, yapay sınır ağı, vb) Verileri aldıktan sonra ilişkili modeli öğrenir, hala yeni durumlarda model kötü performans gösterir–sonuçta sorun çözülmedi

Pratik uygulama soruları Buna göre, makine öğrenme modelini bir şekilde iyileştirmek gerekiyor; bunun için birkaç yön seçilebilir ... Daha çok verileri almak (bazen ne kadar yeni veriler alınırsa iyileşme sağlanamaz) Gürültülü özellikleri bulup silip daha az gürültülü özellikleri kullanarak yeni model geliştirmek Yeni özellikleri bulup ekleyip yeni model geliştirmek Bileşik özellikleri kullanıp yeni model geliştirmek Düzenlileştirmeyi kullanıp arttmak Düzenlileştirmeyi kullanıp azaltmak

Pratik uygulama soruları Bunlardan doğru yaklaşımı seçmek, pratik uygulamalar için çok önemlidir

Önyargı, varyans ve onaylama Bazen, çok karmaşık ve birçok özellik içeren model kullanarak kendimizi aşırı uyum durumunda buluyoruz Aşırı uyum demek ki, bizim modelimiz öğretim kümesindeki örnekleri öğrenince o örneklerde harika perfomans gösteriyor, ama yeni durumlarda hiç iyi tahmin vermiyor

Önyargı, varyans ve onaylama Önce bahsettiğimiz gibi, makine öğrenme modeli üç durumda bulunabilir: önyargı durumu, normal durum, ve varyans durumu Önyargı durumu Normal durumu Varyans durumu

Önyargı, varyans ve onaylama Önyargı durumu demek ki, kullanıldığı model çok fazla basit ve eğilmez (yani modelde çok fazla önbilgi konulmuştu), ve bu nedenle model gerçek verileri iyi şekilde temsil etmez Önyargı durumu Normal durumu Varyans durumu

Önyargı, varyans ve onaylama Varyans durumu demek ki, kullanıldığı model çok fazla karmaşık ve esnek, ve bu yüzden bütün gürültüleri temsil ederek doğru ilişki bulamıyor Önyargı durumu Normal durumu Varyans durumu

Önyargı, varyans ve onaylama Normalde, ikisini de istemiyoruz, ve modelimizin ortadaki bir noktada bulunmasını istiyoruz Önyargı durumu Normal durumu Varyans durumu

Önyargı, varyans ve onaylama Makine öğrenme modeli iyileştirme adımlarının sonucu var olan böyle duruma bağlı olacak, ve bu adımları böyle var olan duruma göre yapmak gerekiyor Önyargı durumu Normal durumu Varyans durumu

Önyargı, varyans ve onaylama Bu demek ki, önce var olan modelin durumunu belirlemek gerekiyor Makine öğrenme modelinin durumunu belirlemek için, öğretim kümesi yanında iki daha test ve onaylama kümesi kullanılır Öğretim, test ve onaylama kümeleri, ilişki/modelin ayrı ayrı örnekleri içermektedir

Önyargı, varyans ve onaylama Öğretim, test ve onaylama kümeleri, var olan verilerden genellikle %60, %20 ve %20 orantılarda oluşturulmuştur Yanı, bütün örneklerin %60ı öğretim kümesine atanır, %20si onaylama kümesine atanır, ve %20si test kümesine atanır 3000 örnek Öğretme: 2400 örnek Onayama: 600 örnek Test: 600 örnek

Önyargı, varyans ve onaylama Öğretim kümesi, modelin maliyetini hesaplamak için, ve bu maliyeti azaltarak modelin parametrelerinin hesaplanması için kullanılır 3000 örnek Öğretme: 2400 örnek Onayama: 600 örnek Test: 600 örnek

Önyargı, varyans ve onaylama Onaylama kümesi, sağlanan modelin yeni (önce görülmediği) örneklerde performansı kontrol etmek için kullanılır Yeni örneklerde modelin maliyetini yeniden hesaplamak için kullanılır, modelin performansı “onaylamak” için kullanılır 3000 örnek Öğretme: 2400 örnek Onayama: 600 örnek Test: 600 örnek

Önyargı, varyans ve onaylama NOT: öğretim ve onaylama örneklerdeki model performansını değerlendirmek için, aynı maliyet fonksiyonu kullanılır; ama, maliyet fonksiyonunda düzenlileştirme yapılmışsaydı, onaylama için bu düzenlileştirme terimleri kullanılmaz 3000 örnek Öğretme: 2400 örnek Onayama: 600 örnek Test: 600 örnek

Önyargı, varyans ve onaylama Aşırı uyum durumunda: öğretme için kullanıldığı örneklerde çok iyi performans var, ama model, gürültüyü temsil edince yeni örneklerde iyi performans göstermez Bu durumda, öğretme örneklerinde maliyet düşük ve onaylama örneklerinde maliyet yüksek çıkması lazım

Önyargı, varyans ve onaylama Önyargı durumunda: öğretme için kullanıldığı örnekler için iyi performans zaten sağlanmaz Bu durumda, hem öğretme örneklerinde hem de onaylama örneklerinde maliyet yüksek değerinde olması gerekiyor

Önyargı, varyans ve onaylama Önyargı-varyansı diye parametresine göre, model maliyeti bu şekilde değişmeli: Önyargı (çok fazla eğilmez) onaylama hatası varyans (çok fazla esnek) öğretme hatası

Önyargı, varyans ve onaylama Bu parametreye göre hem “yüksek öğretme- yüksek onaylama” hem de “düşük öğretme-yüksek onaylama” durumunu istemiyoruz Önyargı (çok fazla eğilmez) onaylama hatası varyans (çok fazla esnek) öğretme hatası

Önyargı, varyans ve onaylama Düşük ve yakın öğretme ve onaylama maliyeti sağlayan model seçilmesi gerekiyor Önyargı (çok fazla eğilmez)  onaylama hatası varyans (çok fazla esnek) öğretme hatası

Önyargı, varyans ve onaylama Maliyet fonksiyonunda düzenlileştirme kullanılmışsaydı, düzenlileştirmedeki -parametresi önyargı-varyansı ayarlamak için kullanılabilir; Bu durumda, düşük  genellikle varians ve yüksek  genellikle önyargı durumunu demekte olacak onaylama hatası öğretme hatası -1

Önyargı, varyans ve onaylama İyi -değerini seçmek için bu mantığı kullanılabilir Diğer her hangi parametreler (örneğin, kullanıldığı özellik sayısı) aynı şekilde çalışabilir onaylama hatası  öğretme hatası -1

Öğrenme eğrileri Öğrenme makine yönteminin önyargı/varyans durumunu belirlemek için, eğitim eğrileri kullanılır Eğitim eğrisini oluşturmak için, kullanıldığı örneklerin sayısına göre modelin öğretme ve onaylama performansı çizilir Bu durumda, önyargı-varyans ayarlayan parametre - örnek sayısıdır; az örnek genellikle varyans ve fazla örnek genellikle önyargı yada normal durum anlamında olacaktır

Öğrenme eğrileri Eğitim eğrileri, her zaman varyans durumuyla başlar (verilerde az örnek varsa, herhangi model onları iyi temsil edebilir, mesela 1-2 örnek düşün) Bu durumda öğretme hatası düşük ve onaylama hatası yüksektir Daha çok örnek varsa, yada varyans durumu devam edecek yada model normal veya önyargı durumuna geçecek

Öğrenme eğrileri Eğitim eğrilerine göre model durumları; Eğer en sonunda hem öğretme hem de onaylama hataları yüksek ise, modelde önyargı durumu var, daha büyük/esnek model gerekiyor onaylama hatası öğretme hatası

Öğrenme eğrileri Eğitim eğrilerine göre model durumları; En sonunda öğretme hatası düşük ama onaylama hatası yüksek, modelde hala varyans durumu var, ondan çıkmak için daha çok veriler gerekiyor onaylama hatası öğretme hatası

Öğrenme eğrileri Eğitim eğrilerine göre model durumları; En sonunda hem öğretme hem de onaylama hataları düşük ve yakın, normal durum var onaylama hatası öğretme hatası

Yapay sınır ağı mımarısı Bazen durumda makine öğrenme modelinin önyargı-varyans faklı şekilde ayarlanabilir Yapay sınır ağları için, mesela, bu durum ağın mimarısıyla ayarlanabilir–küçük ve az nöronlu ağ genellikle eğilmez ve önyargı durumunda dır; büyük ve çok nöronlu ağ genellikle fazla eskek ve varyans durumunda dır İstenen ağın mimarısı aynı mantıkla seçilebilir

Yapay sınır ağı mımarısı Eğer eğitim eğrileri yüksek öğretim-onaylama hatalarına gelirse, ağına daha çok nöron eklemek gerekiyor Eğer eğitim eğrileri düşük öğretim ve yüksek onaylama hatalarına gelirse, daha çok veriler almak gerekiyor Sonunda, eğitim eğrilerine bakarak düşük ve aynı zamanda yakın öğretme ve onaylama hatalarını sağlayan modeli bulmaya çalışıyoruz

Mümkün iyileştirme adımları Buna göre, pratik iyileştirme önerileri bu şekilde verilebilir; Daha çok veriler kullanmak deneyin–“modelde varyans durumu varsa” Daha az özellikler kullanmak deneyin–“modelde varyans durumu varsa” Yeni özellikler kullanmak deneyin–“modelde önyargı durumu varsa” Bileşik özellikler kullanmak deneyin–“modelde önyargı durumu varsa” Düzenlileştirme parametresini azaltmak deneyin–“modelde önyargı durumu varsa” Düzenlileştirme parametresini yükseltmek deneyin–“modelde varyans durumu varsa”

Mümkün iyileştirme adımları Bu şekilde, makine öğrenmesi pratik soruna uygularken genellikle bu yaklaşımı takip ederler; Muhtemelen önemli özellikleri belirlenir Biraz veri toplanır Basit makine öğrenme yöntemi (lineer yaklaşımı yanı) uygulanır Eğitim eğrileri çizilir ve modelin durumu bu şekilde belirlenir Daha çok veri almak lazım Daha iyi özellikler bulmak lazım Düzenlileştirme yapmak (yanı özellikler çıkartmak) lazım Baze hatalara kendi kendinize bakmak lazım, hata desenleri aranmalı–ne gibi durumda model yanlışlık yapar, ne gibi özellikler şunun için yardımcı olabilir–daha sık karşılaşılan hatalar ilk önce odaklanmalı ! Deneyecek şeylerin planını yapılır; bütün olasılıklar için iyileştirme değerlendirilmesi sayısal performans ölçümler kullanarak yapılır Bu şekilde modelini gereken dereceye kadar iyileştirmeye çalışırlar

Büyük veri kavramı “Büyük Veri” kavramı Büyük veri ne demek Büyük veri önkoşulları ne idi Büyük veri pratik soruları

Büyük veri kavramı “Büyük Veri” ne demek Zamanımızda bilgi çoğunlukla internette bulunduğu nedeniyle, insanların faaliyet bilgileri hazır ve kolayca ulaşılabilir şekilde depolanmış oldu Bu veriler nedeniyle farklı insan faaliyetlerinin incelenip modellenmesine yol açıldı İlişkiler, tercihler, davranış, bunların hepsi incelenebilir oldu

Büyük veri kavramı “Büyük Veri” ne demek Migros, Koçtaş gibi büyük ticaret şirketleri, ticaret ve müşterileri hakkında çok büyük hacimda verilere sahip oldu Modern İnternet ve bilgisayarlar kullanarak bu verilerin analizi yapılabilir Bu veriler kullanarak ürün-müşteri ilişkilerini modelleyerek ürünler daha verimli şekilde bu şirketler tarafından satılabilir

Büyük veri kavramı “Büyük Veri” ne demek Facebook, Google+, Twitter gibi sosial ağları bütün kullanıcılarının ilişkilerini kayıt edip kullanıcıları hakkında birçok veriye sahip oldu Bu veriler kullanarak onların üyelerinin davranış ve tercihleri modellenebilir, reklam daha verimli şekilde yapılabilir

Büyük veri kavramı “Büyük Veri” ne demek İnternet arama motorları, Google özellikle, bütün insan faaliyetleri ile ilgili İnternet’ten bilgileri sürekli çekip bütün konularında birçok veriye sahiptir Bu veriler farklı amaçla kullanılabilir – bir örnek, piyasa yada siyaset tahminleri etmek için kullanılabilir

Büyük veri kavramı “Büyük Veri” ne demek Bu bütün durumların ortak özellikleri: Çok büyük miktarda olan verilerin olması Hem de çok fazla örnek hem de her hangi konuda birçok kayıt edildiği özelliklerin olması Bunlar demek ki, genellikle bu veriler insan tarafından hiç incelenmez Bu amaçlarla genel makine öğrenme yöntemleri kullanılmakta, ve bu nedenle birçok büyük şirket tarafından makine öğrenme becerileri son derece istenmektedir

Büyük veri kavramı Büyük veri önkoşulları Önceki makine öğrenme deneyleri şunu gösterdi; Genel makine öğrenme algoritmaları (lineer model, lojistik regresyon, yapay sınır ağları, vb) yeterli verilere sahip olması durumunda benzer performans gösterir Daha az veriyle, daha iyi yada daha kötü algoritma olabilir, ama bir noktayı geçince bütün algoritmalar aynı performans gösterir–yanı yeterli veriler varsa, bütün algoritmalar aynı bir “azami performansı” sağlar

Büyük veri kavramı Bu durum için birkaç önemli önkoşul olmalı; Özellikler, doğru şekilde karar vermeye olanağı vermeli; yanı bir insan uzmanı aynı özellikleri kullanarak doğru kararlar verebilmeli == kullanıldığı özelliklerin kümesi yeterli olmalıdır Güçlü ve esnek makine öğrenme algoritması kullanılmalı, mesela - büyük yapay sınır ağı Çok büyük öğretim kümesi kullanılmalı–yeterli veriler varsa, güçlü ve esnek bile bir genel makine öğrenme algoritmalarında varyans sorunu artık yoktur

Büyük veri kavramı Büyük veri önkoşulları Yeterli veriler varsa, varyans sorunu artık yok onaylama hatası öğretme hatası

Büyük veri kavramı Büyük veri yaklaşımı; Eksiksiz özellik kümesi Zengin modelleme yaklaşımı Büyük öğretim kümesi Bu yaklaşım bizim zamanımızda bahsedilmiş sorunları çözmek için kullanılır

Büyük veri öğretme “Büyük veri” durumunda üz binlerce ve miliyonlarca öğretim örnekleri tipik olarak olabilir (mesela, bütün Facebook taki mesajlar yada like’ler) Bu durumda, dereceli azaltma kullanmak çok zor ve pahalı oluyor Bu durumda azaltma başarılı şekilde yapmak için özel metotlar kullanılır

Büyük veri öğretme Stokastik dereceli azaltma, bu metotların biridir Stokastik dereceli azaltma algoritması, normal dereceli azaltma algoritması gibi çalışıyor, ama bütün adımda bütün örnekler için model maliyetini hesaplamıyor

Büyük veri öğretme Örneğin, normal dereceli azaltmada bütün adımlar için bu toplamı hesaplamak gerekiyor; Örnek çok varsa (m yüzbinler yada miliyonlara yakınsa), bu toplama çok uzun zamandır gerekir; bu yöntem aslında kullanılamaz

Büyük veri öğretme Stokastik dereceli azaltmada, güncelleştirme bu şekilde yapılır; Burada bütün örneklerin yerine i. adımda sadece bir tane i. örnek konulmuş oldu Bu güncelleştirme çok hızlı yapılabilir, aynı zamanda benzer şekilde maliyetin minimumuna gelir.

Büyük veri öğretme Önemli not: Stokastik dereceli azaltma başarılı olması için örnekler rasgele sırada kullanılmalı

Büyük veri öğretme Stokastik dereceli azaltma bütün örnekler bilinmez ve onlar zamanla birer birer şekilde geldiği durumunda da kullanılabilir Bu durumlara “online öğretme” diyoruz “Online öğretme” birçok pratik durumda çok faydalı yaklaşımdır; aynı şekilde parametreler, örnekleri birer birer kullanarak güncelleştirilir

Büyük veri öğretme Stokastik dereceli azaltma yerine “batch” dereceli azaltma da kullanılabilir Bu yöntemde, model parametreleri güncelleştirmek için bir örnek yerine birkaç (b=10-100) örnek grup olarak kullanılabilir

Büyük veri öğretme Biriysel örneklerde çok fazla gürültü varsa, stokastik dereceli azaltma minimum noktası arasında ileri geri hareket edebilir (gürültü nedeniyle) Bu durumda batch dereceli azaltma gürültünün etkisi azaltmak için kullanılabilir

Come again !