1 / 47

MAKİNE ÖĞRENİMİ-Machine learning

MAKİNE ÖĞRENİMİ-Machine learning. Öğrenme. Algılamalar yalnız vekilin tepkisi için değil, aynı zamanda vekilin gelecek davranışlarını daha da iyileştirmek için kullanılmalıdır Bu öğrenme yolu ile mümkündür Danışmanlı öğrenme-supervised learning Danışmansız öğrenme-unsupervised learning

Télécharger la présentation

MAKİNE ÖĞRENİMİ-Machine learning

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MAKİNE ÖĞRENİMİ-Machine learning

  2. Öğrenme • Algılamalar yalnız vekilin tepkisi için değil, aynı zamanda vekilin gelecek davranışlarını daha da iyileştirmek için kullanılmalıdır • Bu öğrenme yolu ile mümkündür • Danışmanlı öğrenme-supervised learning • Danışmansız öğrenme-unsupervised learning • Danışmanlı öğrenmede girdi ve çıktı (algı ve tepki) örneklerinden bir fonksiyon öğrenilmeye çalışılıyor. • Danışmansız öğrenmede girdi örüntü örnekleri bellidir, ama çıktılar belli değil. • Temiz danışmansız öğrenme mümkün değil. Olasılık kullanılıyor

  3. Makine öğreniminin uygulanma alanları • Biyokimya-akıllı toksikoloji • Tıp-teşhis • Biyoinformatik- proteinlerin yapılarının öğrenilmesi • Doğal Dil -doğal dili kavramak için gramerin öğrenilmesi • Maliye-borsa ve Pazar iniş-kalkışlarının öngörülmesi • Askeriye- görsel bilgiler esasında araçların tanınması • Müzik- müzik örneklerinin üslubuna göre sınıflandırılması

  4. Danışmanlı öğrenme-danışmansız öğrenme • Danışmanlı öğrenme (sınıflandırma-classification) • Danışmanlı öğrenme: eğitim verileri (gözlemler, ölçümler, vb) gözlem sınıfını belirten etiketleri tanımlarYeni veriler eğitim kümesine dayanarak sınıflandırılır • Danışmansız öğrenme-(kümeleme) • Eğitim verilerinin sınıf etiketleri belli değil • Sınıflar veya kümeler oluşturmak için ölçümler, gözlemler,vb . veriler verilmiştir

  5. Sınıflandırma • Kesin sınıf etiketleri önceden bellidir • Sınıflandırmanın 2 adımı: • 1. önceden tanımlanmış sınıflar kümesinin tanımlanması • Her bir sınıf “sınıf etiketleri” denen özelliklerle tanımlanır; • Her örüntü bir sınıfa ait edilir; • Örüntüler kümesi eğitim modelini (kümesini) oluşturur; • Model- karar ağacı, üretim kuralları, matematiksel formüllerle ifade edilebilir • 2. Modelin kullanımı: yeni örnekler için sınıfın belirlenmesi • Test edilen örneğin belli etiketleri modeldeki sınıflandırma sonucu ile karşılaştırılır; • Modelin kesinliği karşılaştırmaların sonucuna bağlıdır; • Deneme kümesi eğitim kümesinden bağımsızdır

  6. Eğitim verileri sınıflandırıcı (Model) Sınıflandırma adımı 1: Model oluşturma Sınıflandırma algoritmaları IF unvanı = ‘profesör’ OR yıl > 6 THEN d_kadro = ‘evet’

  7. sınıflandırıcı Eğitim verileri Yeni veri Sınıflandırma adımı 2: Modelin tahminde kullanımı (Kerim, Profesör, 4) Daimi_kadro? Evet

  8. Karar ağacı tümevarımı- Decision Tree Induction • Karar ağacı • Ağaç yapısı • Aralık düğümler özellikler üzere testleri ifade eder • Dallar test sonuçlarını ifade eder • Yaprak düğümler sınıf etiketlerini veya sınıf dağılımlarını ifade eder • Karar ağacı oluşturma 2 aşamadan oluşmaktadır • Ağacı yapılandırma • Başlangıçta tüm eğitim örnekleri ağacın kökündedir • Ardışık seçilen özellikler üzere örnek kısımları • Ağaç budama • Sapmaları yansıtan dalları tanımlamalı ve budamalı • Karar ağacını kullanma: Belirsiz örneğin sınıfını bulma • Karar ağacı üzere örneğin özellik değerlerini test etmeli

  9. Eğitim kümesi

  10. Sonuç:“bilgisayar alabilir” için karar ağacı yaş? <=30 overcast >40 30..40 öğrenci? Kredil_der.? evet hayır evet iyi orta hayır evet hayır evet

  11. Karar Ağacı oluşturma Algoritması • Temel algoritma (a greedy algorithm) • Ağaç yukarıdan aşağıya “parçala yönet” mantığıyla oluşturuluyor • Başlangıçta tüm eğitim örnekleri kök üzerindedir • Özellikler kesindir (sürekli olanlar önceden kesinleştirilmelidir) • Örnekler , seçilmiş özellikler üzere ardışık parçalanıyor • Test özellikleri, sezgisel veya istatistiksel ölçüm (örneğin, bilgi kazancı) temelinde seçilir

  12. Özelliğin seçilmesi-Bilgi kazancı • En yüksek bilgi kazancı olan özelliği seçmeli • Varsayalım ki, 2 sınıf (P ve N) var • S örnekler kümesi, P sınıfından p öğe , N sınıfından n öğe içermektedir (Eğitim kümesi örneğinde P –”bilgisayar ala bilenler”, N-”bilgisayar alamayanlar” sınıfını ifade ediyor.p=5,n=9 • Her hangi örneğin P veya N sınıfına ait olmasına karar vermek için gereken bilgi miktarı böyle tanımlanır: • Bilgi miktarı:

  13. Karar ağacı ve bilgi kazancı • Varsayalım ki, A özelliğini kullanmakla S kümesi {S1, S2 , …, Sv} kümelerine parçalanmıştır • Eğer Si, P’den pi örneklerini ve N’den ni örneklerini içeriyor ise , tüm Si altağaçları üzere nesneleri sınıflandırmak için gereken entropi veya beklenen bilgi aşağıdaki gibi hesaplanabilir: • A altağacı (dalı) üzere beklenen bilgi • A altağacı üzere kazanılan bilgi

  14. sınıf P: bilgisayar al = “evet” sınıf N: bilgisayar al = “hayır” I(p, n) = I(9, 5) =0.940 Yaş için entropi’nin (beklenen bilginin) hesaplanması: buradan K(yaş)=0.940-0.69=0.25 Benzer olarak Bilgi kazancını hesaplamakla özelliğin seçilmesi

  15. Karar ağacına göre sınıflandırma kurallarının oluşturulması • Bilgileri IF-THENkuralları ile ifade etmeli • Kökten yaprağa doğru her yol için kural oluşturulur • Yol üzerinde her özellik-değer çifti birleşme (“ve” işlemini kullanmakla) oluşturur • Yaprak düğüm sınıf tahminini içerir • Kurallar daha kolay anlaşılandır • Örnek IF yaş = “<=30” AND öğrenci = “hayır” THEN bilgisayar_almak = “hayır” IF yaş = “<=30” AND öğrenci = “evet” THEN bilgisayar_almak = “evet” IF yaş = “31…40” THEN bilgisayar_almak = “evet” IF yaş = “>40” AND kredil.derecesi = “iyi” THEN bilgisayar_almak= “evet” IF yaş = “>40” AND kredil.derecesi = “orta” THEN bilgisayar_almak = “hayır”

  16. Örnekleme • Doğru sınıflandırmak için kavramlar öğrenilmelidir. Öğrenmenin bir yolu örnekleme ile yapılıyor • Artı örnekler positive(kedi,memeliler) positive(köpek,memeliler) positive(kartal,kuş) positive(timsah,sürüngen) positive(mersin,balık) • Eksi örnekler negative(şahin,balık) negative(kirpi,sürüngen) negative(yılan,kuş) negative(insan,sürüngen) negative(kertenkele,kuş)

  17. Michalski problemi Bu örnek klasik sınıflandırma örneğidir. Vagonların boyutuna, taşıdıkları yüke,açık-kapalı olmalarına,tekerliklerinin sayısına göre neden sağa ve sola gittiklerinin belirlenmesi gerekiyor

  18. İlaç bileşenleri sorunu 7 ilaçtan 4’nün zehirli olduğu,3’nün ise zehirsiz olduğu biliniyor. Kimyasal bileşenlerinin yapısına göre zehirli olanı belirlemek gerekiyor

  19. Fonksiyon Öğrenme • Sınıflandırmanın sayısal soruna dönüştürülmesi • Her sınıfa numara (sayı) verilir • Ve ya gerçek değerli sayılar verilir (örn., 0.5 - 0.9) • Fonksiyon öğrenme örnekleri • Giriş = 1,2,3,4 Çıkış = 1,4,9,16 • Bu kare tam sayıları öğrenme örneğidir • Giriş = [1,2,3], [2,3,4], [3,4,5], [4,5,6] • Çıkış = 1, 5, 11, 19 • [a,b,c] -> a*c - b • İkinci örnek daha karmaşık hesaplama gerektirmektedir

  20. İki Seviyeli Yapay Sinir Ağları

  21. İnsan Beyninde Sinir Hücrelerinin Yapısı

  22. Neden Yapay sinir ağları • Biyoloji nedenler: • Beyin ,sinir hücreleri (nöron) ağından oluşuyor • Her sinir hücresi pek çok hücre ile doğrudan ilişkilidir • Bir hücrenin girişi bir başkasının çıkışıdır • Eğer girişlerin ağırlık değeri S>eşik değeri ise hücre “tetiklenir” • Yapay Sinir Ağları ile gerçek sinir hücrelerini eşleştirmek doğru değil • İnsan beyni: 100,000,000,000 sinir hücresi • YSA: < 1000 • YSA, gerçek sinir ağlarının çok-çok basitleştirilmesidir

  23. Örnek:Araçların Sınıflandırılması • Fonksiyon girişi: aracın görüntüsünden pixel verileri • Çıkış: sayılar: 1 araba için; 2 otobüs için; 3 tank için girişgirişgirişgiriş çıkış = 3 çıkış = 2 çıkış = 1 çıkış=1

  24. Bilgilerin tasviri • YSA’nın araçları doğru tanımlaya bilmesi için • ”araba”,otobüs”… hakkında belirli bilgileri bulunmalıdır • Sınıflandırma düğümlere göre yapılır: • Giriş değerleri çıkışa nasıl yansımalıdır? • Uygulamalarda • Tüm düğümler aynı hesaplamaya tabi tutuluyor • Ağırlık toplamları (weighted sum) • “Siyah kutu” tasviri: • Öğrenilecek nesne (kavram) hakkında yararlı bilgilerin çıkarılması zordur

  25. Temel fikir A sınıfını seç (en yüksek çıkış değeri) Tüm giriş değerlerini kullanmakla hesaplanan değer Giriş tabakası Gizli tabakalar Çıkış tabakasısınıf 1.1 A 1.1 2.7 7.1 4.2 Giriş sayıları çıkış sayıları 0.2 3.0 B 2.1 -0.8 -1.3 0.3 C -1.2 2.7 Değerler ağ boyunca yayılmaktadır

  26. YSA’nın öğrenme sorunu • Öğrenme için sınıflar sayısal olarak ifade edilmiştir • Eğitim (öğrenme) örnekleri de sayısal ifade edilmiştir • Her örnek için doğru sınıflandırma • Sinir ağını örneklerle eğitme • Önceden bilinmeyen örneklerle doğru sonucun üretilmesi • YSA mimarisi sorunları (a) Doğru ağ mimarisinin seçilmesi • Gizli katmanların sayısı,girişlerin sayısı… (b) Her bir giriş için (aynı) işlevin seçilmesi (c) Düğümler doğru çalışana dek ağırlıkları eğitmeli

  27. Perceptron • Perseptron basit YSA mimarisidir • Birden fazla giriş düğümü • Tek çıkış düğümü • Gizli katman bulunmuyor • Girişlerin ağırlıkları toplamı-S • Ağın çıkışının hesaplanması için fonksiyon • Perceptron büyük ağları oluşturmak için kullanıla bilir • Perceptron’un tasvir yeteneği sınırlıdır

  28. Perceptron örneği • 2x2 pikselli siyah-beyaz tasvirlerin sınıflandırılması • “parlak” ve “koyu” • Bu kuralları uygulayacağız: • Eğer tasvirde 2, 3 veya 4beyaz piksel varsa tasvir parlaktır • 0 veya 1 beyaz piksel varsa tasvir koyudur • Perceptron mimarisi: • Dört giriş birimi (her piksel için bir tane) • Bir çıkış birimi: +1 beyaz için, -1 koyu için

  29. Perceptron Örneği • Örnek hesaplama: x1=-1, x2=1, x3=1, x4=-1 • S = 0.25*(-1) + 0.25*(1) + 0.25*(1) + 0.25*(-1) = 0 • S=0 olduğundan ağını çıkışı +1 • Tasvir “aydınlık” sınıfına ait edilmiştir giriş giriş katmanı çıkış katmanı sınıf S≥0 ise parlaklık karanlık Eksi halde

  30. Çıkış değerlerinin hesaplanması • Eşik fonksiyonları (Threshold Functions) • S- her bir giriş düğümünün ağırlık değerinin uygun giriş değerine çarpımlarının toplamıdır • Bu değer belirlenmiş eşik değeri ile karşılaştırılıyor. • S’in değeri eşik değerinden büyük ise büyük değerli çıkış düğümü seçiliyor. • Eksi halde küçük değerli çıkış düğümü seçiliyor. • Bizim örnekte Eşik değeri=0 • eğerS > Eşik Çıkış+1 • eksi halde Çıkış–1 Özel giriş düğümü – çıkışı her zaman 1

  31. Öğrenme algoritması • Öğrenilecek: • Giriş ve çıkış düğümleri arasındaki ağırlıklar • Eşik değeri • Eşik özel girişinin ağırlığı 1 olarak kabul ediliyor • Ağırlıklar rastgele başlangıç değerler alıyorlar • Her öğrenme örneği E için • Ağın çıkışını hesaplamalı- o(E) • Eğer amaçlanan çıkışt(E), o(E)’den farklı ise • Tüm ağırlıkları öğle değiştirmeli ki, o(E), t(E)’ye yakın olsun • Bu işlem her bir E örneği için yapılmalıdır • Eğitim kümesindeki tüm örnekler için ağ doğru sonuç üretene dek işlemi devam ettirmeli

  32. Perceptron Öğrenme Kuralı • t(E), o(E)’den farklı ise • Δi farkını wiağırlığına ilave etmeli • Δi = η(t(E)-o(E))xi • Bunu ağın her ağırlığı için yapmalı Bizim örnekte (örnek sonraki sayfalarda verilmiştir) • (t(E) – o(E)) ya 0, +2 veya –2 olacak • Eğer alınan çıkışla gereken(beklenen) aynı ise fark 0, alınan -1,beklenen 1 ise -2, alınan 1 ,beklenen -1 ise fark 2 olacak • O zaman Δi farkını ilave etmekle ağırlığın değişme yönünü belirleye bileriz • η –öğrenme oranıdır. Ağırlık değerinin değişimini kontrol etmek için kullanılır • Genelde çok küçüktür (örn., 0.1) • Bir örnek için değişim farkı çok olmamalıdır

  33. Örnek • “parlak-koyu” örneğine bir daha bakacağız • Öğrenme oranı (learning rate)η = 0.1 • Rasgele ağırlıklar verildiğini varsayalım:

  34. Örnek • Örnek üzerinde ağırlıkların değiştirilmesini öğrenelim: • x1 = -1, x2 = 1, x3 = 1, x4 = -1 • Çıkış katmanının değeri: • S = (-0.5 * 1) + (0.7 * -1) + (-0.2 * +1) + (0.1 * +1) + (0.9 * -1) = -2.2 • Ağın çıkışı o(E) = -1 olacak (-2.2<=0 olduğu için) • Ama doğru sınıflandırma “parlak”=+1olmalı idi • t(E) = +1

  35. Örnek-Hata değerlerinin ve ağırlık değerlerinin hesaplanması • Her bir giriş katmanı için fark hesaplanır: • Δ0 = η(t(E)-o(E))x0 = 0.1 * (1 - (-1)) * (1) = 0.1 * (2) = 0.2 • Δ1 = η(t(E)-o(E))x1 = 0.1 * (1 - (-1)) * (-1) = 0.1 * (-2) = -0.2 • Δ2 = η(t(E)-o(E))x2 = 0.1 * (1 - (-1)) * (1) = 0.1 * (2) = 0.2 • Δ3 = η(t(E)-o(E))x3 = 0.1 * (1 - (-1)) * (1) = 0.1 * (2) = 0.2 • Δ4 = η(t(E)-o(E))x4 = 0.1 * (1 - (-1)) * (-1) = 0.1 * (-2) = -0.2 Bu farkları dikkate almakla yeni ağırlık değerleri hesaplanır (eski değerin üzerine fark ilave edilir) • w’0 = -0.5 + Δ0 = -0.5 + 0.2 = -0.3 • w’1 = 0.7 + Δ1 = 0.7 + -0.2 = 0.5 • w’2 = -0.2 + Δ2 = -0.2 + 0.2 = 0 • w’3= 0.1 + Δ3 = 0.1 + 0.2 = 0.3 • w’4 = 0.9 + Δ3 = 0.9 - 0.2 = 0.7

  36. Örnek-çıkış katmanının hesaplanması • S yeniden hesaplanıyor: • S = (-0.3 *+ 1) + (0.5 * -1) + (0 * +1) + (0.3 * +1) + (0.7 * -1) = -1.2 • -1.2<0 olduğu için sınıf (-1)’e uygun-”karanlık” olmalıdır.Bu yanlış olduğundan öğrenme devam ettirilmelidir. Ama önceki adıma oranda S’in değeri sıfıra (yani doğru sınıflandırmaya) daha yakın olmuştur(-2.2 yerine -1.2). Bu yönde birkaç adımdan sonra öğrenme yapılmış olacak.ç) Gör

  37. Perseptron’un öğrenme yeteneği • Perceptron çok basit ağdır • Bazı kavramların perceptronla öğrenilmesi mümkün değil • Minsky ve Papert perceptron’un yeteneklerinin sınırlı olduğunu göstermişler • Bazı basit boolean işlevlerini öğrenemiyorlar

  38. Mantık fonksiyonları • iki giriş (-1 or +1) • Tek çıkış üretmeli (-1 or +1) • 0 ve 1 değerlerini de kullanmak mümkündür • Örnek: AND işlevi • Tüm girişler +1 oldukta +1 üretiyor • Örnek: OR işlevi • Girişlerden en azından birisi +1 oldukta +1 üretiyor

  39. Mantık Fonksiyonları Perseptron gibi • Sorun: XOR işlemi • Girişler farklı oldukta +1 üretiyor • Doğrusal ayrılabilir olmadığı için perceptron gibi ifade edilemez

  40. Mantık Fonksiyonlarının doğrusal ayrılabirliği • Doğrusal ayrıalbilen: • +1 ve –1’leri doğru ile ayırmak mümkündür • Doğruyu eşiğin tasviri gibi düşünmeli

  41. Çok seviyeli Yapay Sinir Ağları

  42. Çokseviyeli YSA’ların perceptron birimleri üzerinde kurulması • Perceptron bazı kavramları öğrenemez • Yalnız doğrusal ayrılabilir fonksiyonları öğrene bilir • Ama perceptron daha karmaşık yapılar için temel oluştura biler • Daha karmaşık kavramların öğrenilmesi

  43. Sigmoid Birimi • Girişlerin ağırlık toplamı S ve çıkış: • Artı yönleri • Adım fonksiyonuna çok benzerdir • Ayrıla bilendir • Kolay hesaplana bilendir:

  44. Sigmoid birimli YSA örneği • İleri beslemeli ağ-Feed forward network • Girişlere soldan değer veriliyor, sayılar ileri doğru yayılıyor • Örnek bir ağ şeması • Ağırlık kümesi rasgeledir

  45. Ağın hesaplanması örneği • Girişler- 10, 30, 20 • Gizli katman için ağırlıkların hesaplanması: • SH1 = (0.2*10) + (-0.1*30) + (0.4*20) = 2-3+8 = 7 • SH2 = (0.7*10) + (-1.2*30) + (1.2*20) = 7-6+24= -5 • Çıkışlar için ağırlıkların hesaplanması: • Using: σ(S) = 1/(1 + e-S) • σ(SH1) = 1/(1 + e-7) = 1/(1+0.000912) = 0.999 • σ(SH2) = 1/(1 + e5) = 1/(1+148.4) = 0.0067 • böylelikle H1 tetiklenecek

  46. Örneğin devamı • Çıkış katmanları için ağırlık toplamları hesaplanıyor: • SO1 = (1.1 * 0.999) + (0.1 * 0.0067) = 1.0996 • SO2 = (3.1 * 0.999) + (1.17 * 0.0067) = 3.1047 • Ağın çıkışları hesaplanıyor • σ(SO1) = 1/(1+e-1.0996) = 1/(1+0.333) = 0.750 • σ(SO2) = 1/(1+e-3.1047) = 1/(1+0.045) = 0.957 • O2 > O1 • Demek ki, YSA (10,30,20) girişi için O2’ye uygun sınıfı belirlemiştir

  47. YSA uygulama sorunları • Örnekler ve hedef sınıflandırma • Gerçek sayılarla ifade edilmelidir • Tahmin edilen kesinlik çok önemlidir • Kara kutu yaklaşımı-anlamak zordur • Yavaş eğitme • Eğitme saatler ve günlerle uzaya bilir • Öğrenme fonksiyonu hızlı çalışmalıdır • Eğitilmiş ağ hızlı sınıflandırma yapa bilmelidir • Zamanın önemli olduğu durumlarda çok gereklidir

More Related