40 Günde Yapay Zeka-2
Selamlar herkese,
Bildiğiniz üzere Steve Nouri’nin 40 günde yapay zeka adlı çalışmasını gün gün uygulayıp belirli periyotlarla sizlerle paylaşıyorum. Bir önceki yazımızda ilk on günden bahsettik şimdi ise kaldığımız yerden devam ediyoruz tam gaz.
GÜN-11
11.Günde ise artık makine öğrenmesine geçiş yapıyoruz bugün de öğreneceğimiz şeyler makine öğrenmesi algoritmalara ve bunların makine öğrenmesinde kullanımı olacaktır. Bildiğiniz üzere Makine öğrenmesinin bir kaç tane popüler alt dalı var bizde bunlardan bahsedeceğiz derinlemesine.
3 Yaygın ML tipi vardır:
1- Denetimli Öğrenme: Bir modelin eğitimi, bilinen etiketlere sahip verilere dayanır. Bu modeller verileri girdi olarak alır ve etiketin çıktı olarak tahminini verir.
2- Denetimsiz Öğrenme
Denetimsiz Öğrenme algoritmaları, etiketli verilere bağlı kalmadan problemleri çözmeye odaklanır.
3- Pekiştirme Öğrenimi
Takviyeli öğrenme algoritması öğrenme makinesi eylemleri, parametreleri, ve bitiş değerleri kümesi ile sağlanan yüksek disiplinli öğrenme süreçleri üzerinde duruluyor. Takviye öğrenme, makineye deneme yanılma öğretir.
Ve daha az yaygın olan 2:
4- Kendi Kendini Denetleyen Öğrenme
Verilerin denetim sağladığı denetimsiz öğrenme biçimi. Genel olarak, verilerin bir kısmını saklayın ve ağı tahmin etmekle görevlendirin. temel olarak Bilgisayar Vizyonu ve Doğal Dil İşlemede uygulanan, bir görevi öğrenmek için büyük veri kümeleri gerektirir.
5- Yarı Denetimli Öğrenme
Yarı denetimli öğrenme denetimli öğrenmeye benzer ancak bunun yerine hem etiketli hem de etiketlenmemiş verileri kullanır. Etiketli veri anlamlı etiketleri çok algoritma etiketsiz satıldıkları veri bilgi yoksun iken verileri anlamak, gerekli bilgiler.
Supervised Learning‘de söylemek istediklerim.
Sınıf sayınız belli, Eğitilmiş veriniz var. Yani elinizdeki verilerin hangi girdi değerinde hangi çıktıyı vereceği işaretlemiş iseniz. Bu tarzda eğitilmiş makine öğrenmeye Gözetimli Öğrenme diyoruz
Mesela verdiğiniz resimlerin insanın yüzü olup olmadığına karar veren bir sistem tasarlamak istiyorsanız ilk önce farklı insan yüzlerini verip bunları yüz şeklinde işaretlerseniz, içerisinde yüz olmayan resimleride tam tersi yönünde işaretlerseniz Bu Gözetimli Öğrenme yani Supervised Learning oluyor.
Unsupervised Learning‘de söylemek istediklerim.
Burada elinizdeki verilerin özelliklerine göre Clustering(demetleme) yöntemi ile belli gruplar oluşturan öğrenme şeklidir. Bu öğrenme şeklinde bu gruplamanız yüz olup olmadığını bilemezsiniz, fakat örnek bir resim verdiğinizde bunun hangi demetleme içerisinde olduğunu bularak benzerlerini getirebilir. Bu tip makine öğrenmesine’de Gözetimsiz yanı Unsupervised Learning denir.
Genel hali ile derinlemesine girmeden algoritmaları tanıttık şimdi ise sonraki günde. Son olarak ML öğrenmenin çok zorlu bir süreç olduğunu hatırlatmak isterim tekrardan.
GÜN-12
Bugün de ise Steve amcamız kendisi bir canlı yayın açıp genel süreçten ve takıldığınız/zorlandığımız yerleri tek tek vurguluyor. Yayından anladıklarımı aktarmak gerekirse, kendisi de söylüyor 40 günde bir uzman olamazsanız lakin genel resmi görecek kadar bilgiye sahip olursunuz. İlk on günün bile size aylara sebep olacağını zorlu ve yorucu bir süreç olacağını belirtiyor. Matematik ve istatistik temelli bilgilerin tekrarlanması gerektiğin belirtiyor bundan sonra ki günler de ise bizlere daha spesifik bilgilerin bekleyeceğini belirtiyor. Arada sırada canlı yayın sırasında gelen soruları cevaplıyor ve yayının 45 dakika sonra bitiriyor.
GÜN-13
13.günde ise Steve amcamız bizlere çok önemli notlarını paylaşıyor. Coursera girdiğimizde Machine learning yazdığımız da karşımıza Andrew NG amcamız çıkıyor( bkz: Coursera kurucusu, eğitmen, popüler biri) yapmış olduğu ML kursunun notlarını tam tamına 170 sayfa, bizlere paylaşıyor.
Ek olarak bende türkçe bir içerik paylaşmak isterim buraya, Stanford CS 229 — Makine Öğrenmesi, CS 230 — Derin Öğrenme ve CS 221 — Yapay Zeka El Kitapları Artık Türkçe.
Yapmış oldukları işten dolayı kendilerini tebrik ediyor, başarılarının devamını diliyorum.
GÜN-14-15
BAZI BİLGİLERİ TAZELEME GÜNÜ 🙂
Geçmiş olduğumuz 2 hafta boyunca çok derin ve çok önemli bilgiler öğrendik bunları tekrar etmemiz ve süreci iyi yönetmemiz için pratik yapmamız lazım. Bugün de Steve amcamız bizlere türkçe karşılığı kopya kağıdı olan cheat sheets veriyor bunların çıktısını alıp güzel şekilde arada tekrar etmemiz gerekiyor.
Ek bilgi olarak tüm bu öğrendiğimiz konularında internette “cheat sheets”leri mevcuttur ufak bir arama bulabilirsiniz. Keyifli çalışmalar dilerim.
GÜN-16
Son 4 gündür makine öğrenimi algoritmalarının temellerini zaten ele aldık, bu kitap makine öğreniminde en yaygın yöntemlerin yapı taşlarını kapsar.
1. Ordinary
Linear
Regression
1. The Loss-Minimization Perspective
2. The Likelihood-Maximization Perspective
2. Linear
Regression
Extensions
1. Regularized Regression (Ridge and Lasso)
2. Bayesian Regression
3. Generalized Linear Models (GLMs)
3. Discriminative
Classification
1. Logistic Regression
2. The Perceptron Algorithm
3. Fisher’s Linear Discriminant
4. Generative
Classification
(Linear and Quadratic Discriminant Analysis, Naive Bayes)
5. Decision
Trees
1. Regression Trees
2. Classification Trees
6. Tree
Ensemble
Methods
1. Bagging
2. Random Forests
3. Boosting
7. Neural
Networks
Yukarıda ki konuların yer aldığı bir kitap paylaşıyor artık yavaş yavaş derinlemesine doğru ilerliyoruz ilk kez görenler için çok zor olabilir lakin zamanla pratik yapa yapa kolay kavramlar haline gelecektir sizler için.
GÜN-17 – Görseller ile tekrar!
17.Günde Python ile yazılmış farklı makine öğrenme algoritmalarının uygulanması. Bu proje, farklı ML algoritmalarının arkasındaki matematik ve sezgiyi anlamak için yararlıdır. Doğrusal Regresyon için gradyan inişinin farklı sürümlerinin uygulanmasını bulabilirsiniz. Eğitim sürecinde neler olup bittiğine dair daha iyi bir sezgi elde etmek için süreç de görselleştirilir.
Hareketli görseller ile tekrar
GÜN-18 – doğruluk doğru değil!
Dün görseller ile tekrar ettik bugün ise Steve amcamız bizlere tecrübesinden bahseden bir paragraf yazı bulunuyor sizler için türkçe’ye çevrilmiş bulunmaktayım buyurun yazımız;
Modelin doğruluğu temel olarak toplam tahmin sayısına bölünen toplam doğru tahmin sayısıdır ve sınıf başına aynı miktarda örneğe sahip olursak yararlı bir ölçü olabilir.
Sınıflandırma problemiyle uğraşırken genellikle kullanılması gereken büyük bir metrik karışıklık matrisidir.
Bir sınıfın doğruluğu, model bir noktanın o sınıfa ait olduğunu yanıtladığında sonucun ne kadar güvenilir olduğunu tanımlar.
İyi model bu sınıf tespit edebiliyor nasıl bir sınıf hatırlama ifade eder.
Bir sınıfın F1 puanı, hassasiyet ve geri çağırmanın harmonik ortalaması (2 × hassasiyet × geri çağırma / (hassasiyet + geri çağırma)) ile verilir, bir sınıfın hassasiyetini ve geri çağrılmasını tek bir metrikte birleştirir.
Belirli bir sınıf için, geri çağırma ve hassasiyetin farklı kombinasyonları:
yüksek geri çağırma + yüksek hassasiyet: sınıf, model tarafından mükemmel şekilde işlenir
düşük geri çağırma + yüksek hassasiyet: model sınıfı iyi algılayamaz, ancak bunu yaptığında oldukça güvenilirdir
yüksek geri çağırma + düşük hassasiyet: sınıf iyi algılanır, ancak model içindeki diğer sınıfların noktalarını da içerir
düşük geri çağırma + düşük hassasiyet: sınıf model tarafından kötü işlenir
Belirli bir sınıfa göre tanımlanan ROC eğrisi (Alıcı Çalışma Karakteristiği anlamına gelir).
Dengesiz veri kümesi için daha iyi bir metrik PR eğrisidir (hassas Hatırlama).
Ayrıca, kontrol etmek isteyebilirsiniz:
Veri kümenizdeki vaka sayısını dengeli bir şekilde artırmak için kullanılan istatistiksel bir teknik olan SMOTE.
Altörnekleme: çoğunluk sınıfının bazı gözlemlerini ortadan kaldırıyor. Bir ton veriye sahip olduğunuzda altörnekleme iyi bir seçim olabilir
Aşırı örnekleme: azınlık sınıfının daha fazla kopyasını ekliyor. Çalışmak için bir ton veriye sahip olmadığınızda aşırı örnekleme iyi bir seçim olabilir.
GÜN-19 Reinforcement learning!
İnternet anlamı Pekiştirmeli öğrenme, davranışçılıktan esinlenen, öznelerin bir ortamda en yüksek ödül miktarına ulaşabilmesi için hangi eylemleri yapması gerektiğiyle ilgilenen bir makine öğrenmesi yaklaşımıdır.
Makine öğrenmesi alanının popüler bir dalı olan RL benimde ilgi duyduğum ve deneyimimim olmadığı bir alan.
Steve amca bizler için bir kaç link ve video bırakıyor buyrun;
Klip, Derin bir Doğal Sinir Ağı (DNNN) üzerinde takviye öğrenmenin bir gösterisidir.
Takviye Öğrenme (RL), aracı (tavuk!) geri bildirim kullanarak deneme yanılma yoluyla etkileşimli bir ortamda öğrenin (gıda!) kendi eylemlerinden ve deneyimlerinden.
Takviye Öğrenmeye Giriş harika, kapsamlı bir kitaptır, buradan indirebilirsiniz:
https://lnkd.in/gMEy9Dr
Richard S. Sutton ve Andrew G. Barto tarafından
Çoğunuz AI’nın bilgisayar oyunlarını kendi başlarına oynamayı öğrendiğini duymuşsunuzdur, çok popüler bir örnek Deepmind’dir.
AlphaGo programı, 2016 yılında Güney Kore Go dünya şampiyonu’nu yendi.
Geçmişte Breakout, Pong ve Space Invaders gibi Atari oyunları oynamak amacıyla ajanlar geliştirmek için birçok başarılı girişim olmuştu.
Neyse ki, OpenAI Gym zaten oynamamız ve öğrenmemiz için inşa edilmiş bu ortama sahip.
Kodumuza takabileceğimiz ve bir aracı test edebileceğimiz farklı oyun ortamları sağlar.
Burada bir deneyin:
https://gym.openai.com/
GÜN-20
2.Serimizin son gününde Steve amcamız bizler için “Self-supervised learning!” kısmını anlatıyor yine RL de olduğu gibi bu kısımda da bilgim ve tecrübem çok az bulunmaktadır. Lakin çok yoğun araştırmalar yaparak bir kaç bir şey öğrenmiş bulunmaktayım.
AI, fotoğraftaki metin stilini yalnızca tek bir sözcük kullanarak kopyalayabilir. Bu yapay zeka modeli ile resimlerdeki metni düzenleyebilir ve değiştirebilirsiniz.
Bunu iyi tanımlanmış, özel görevler için yapabilen çoğu yapay zeka sisteminden farklı olarak TextStyleBrush, tek bir örnek sözcük kullanarak hem el yazısı hem de sahne görüntülerindeki metni tek çekimde değiştiren ilk kendi kendini denetleyen yapay zeka modelidir.
Denetimli öğrenme, birden fazla görevi yerine getirebilen ve büyük miktarda etiketli veri olmadan yeni beceriler edinebilen daha akıllı genelci modeller oluşturmak için bir darboğazdır.
Pratik olarak konuşursak, dünyadaki her şeyi etiketlemek imkansızdır. Yeterli etiketli verinin olmadığı bazı görevler de var!
Kendi kendini denetleyen öğrenme, AI sistemlerinin daha fazla veriden öğrenmesine yardımcı olur; bu, dünyanın daha ince, daha az yaygın temsillerinin kalıplarını tanımak ve anlamak için önemlidir.
Doğal dil işleme (NLP) alanında ilerlemede uzun zamandır büyük başarı elde etmiştir.
Genel teknik, girişin gözlemlenmemiş veya gizlenmemiş herhangi bir kısmından girişin gözlemlenmemiş veya gizli herhangi bir bölümünü (veya özelliğini) tahmin etmektir.
Tek bir görselle durumu izah etmek gerekirse;
ÖRNEK UYGULAMA
40 Günde yapay zeka serimizin 2.kısmını bitirmiş bulunmaktayız sonraki kalan serimizde görüşmek dileğiyle.