Merhaba, ben Artemy Kolchinsky. Bu derslerde makine öğreniminin ne olduğundan, neden bu denli ünlü olduğundan, ve makine öğreniminden başlıca problemlerden bahsedeceğiz. Haydi hemen işe koyulalım ve makine öğreniminin ne olduğundan bahsedelim. İlk olarak, bu terimin duymuş olduğunuz yapay zekadan nasıl farklı olduğunu merak edebiliyor olabilirsiniz. Yapay zeka, zeki otomatik sistemler yaratma bilimidir. Bu sistemler, satranç oynayan yazılımları, robotları veya endüstriyel süreçleri kontrol eden yazılımları, ve daha pek çok örneği içerebilirler. Makine öğrenimi yapay zekanın bir alt kümesidir. Özel olarak, genellikle kendisine sağlanan girdiden akıllı şeyler gerçekleştirmek üzere otomatik olarak öğrenebilen yazılımların tasarlanmasını hedefler. Ve bu bakımdan, bazı yönleriyle, istatistikle oldukça yakından ilişkilidir. Çünkü istatistik de girdilerden çıkarım yapma ve onları başka şeylerin öngörümünde kullanmak ile ilgilenir. Şimdi, bu ikisi arasındaki tasarımsal farkı anlamak için, iki farklı yapay zeka sistemini ele alabiliriz. Bunlardan biri, trafik ikaz ve çarpışma kaçınma sistemi (tcas). Bu, basitçe on yıllar önce, uçakların birbiriyle çarpışmasını önlemek için geliştirilmiş bir sistem. Bu temel olarak bir "-ise" ifade ve koşullarının uzun bir listesi; öyle ki, ne zaman alarmların çalması gerektiğini veya ne zaman bir uçağın yukarı ve bir diğerinin aşağı gitmesi gerektiğini bildiriyor. Bunlar çarpışmaları önlemek için tasarlanmış olan sabit kodlu kurallar. Bu bir makine öğrenimi problemi değil, çünkü temelde bu bir sabit kodlu program. Makine öğrenimi programı olarak şunu gösterebilirim: Yaş, cinsiyet, okulda geçirilen yıllar, posta kodu gibi girdileri göz önünde bulundurarak, kişilik yıllık gelirin istatiksel bir modelini çıkartın. Bu bahsettiklerimiz, bir kişinin bir yıl içinde kazandığı parayı tahmin etmeye yarayan bağımsız değişkenler olarak isimlendirilirler. Eğer istatistik dersi aldıysanız, bunun basit bir lineer regresyon ile çözülebileceğini düşünmüş olabilirsiniz. Aslında öyle: Basit lineer regresyon probleme yaklaşmanın bir yolu ve makine öğreniminin basit bir örneği. Başka şeyler hakkında tahminde bulunmak üzere bir model kurmak için girdileri kullanıyor. Eğer AI ve makine öğrenimi arasındaki farkı gösteren daha sinematik bir örnek isterseniz, uzay görevinde tek amaçlı bir vazifeyi tamamlamak için tasarlanmış gibi görünen 2001: Bir Uzay Destanı'ndaki Hal 9000'i düşünebilirsiniz. Bu, 1980'lerin klasik savaş oyunlarında global termonükleer savaşı ve sonrasında X-O-X gibi oyunları da oynamayı öğrenen bilgisayarla karşılaştırılğında klasik bir Yapay Zeka örneği olur. İkinci ise, makine öğrenimine bir örnektir. Tamam, şimdi makine öğreniminin iki büyük alanından bahsedeceğim: Denetlenen öğrenim ve denetlenmeyen öğrenim. Denetlenen öğrenimde, temel olarak bir soruya doğru bir cevap vardır ve biz algoritmayı doğru yanıtları göstererek eğitiriz. Örnek olarak, diyelim ki size bir görüntü veriyorum ve bunu bir kediye mi köpeğe mi ait olduğu üzerinden sınıflandırmanızı istiyorum. Açıkça ki pek çok görüntü için doğru bir yanıt vardır. Ya da size bir ses kaydı veriyorum ve ses kaydında geçen metni çözümlemenizi istiyorum. Ya da size borsaya dair bir çeşit geçmiş veri sağlıyorum ve şimdi borsanın durumunu tahmin etmenizi istiyorum. Borsa belli bir duruma elbet erişecektir, böylelikle haklı ya da hatalı olabiliriz. Bu derste başlıca denetlenen öğrenim üzerine konuşacağız ancak denetlenmeyen öğrenim denen başka bir makine öğrenim alanının da bulunduğunu bilmelisiniz. Denetlenmeyen öğrenimde bizzat doğru bir yanıt yoktur ancak istediğimiz girdide anlamlı desenler bulmaktır. Örneğin, çok yüksek boyutlu bir girdi seti alın ve onu düşük boyutlu bir uzaya yansıtın. Bu bir girdi seti alıp gruplara kümelemek gibi bir şey olabilir. Ekranda gördüğümüz örnekte saçılım grafiği ve kümeleme var; peki doğru kümeleme nedir? Tek bir doğru kümeleme olmayabilir ancak biz yine de bakıyoruz. Bu aynı zamanda aykırı tespiti, anomali tespiti gibi doğru yanıtın pek belirli olmadığı durumları da içerir fakat her halükarda algoritmayı bulmak için bir örüntünün olması iyidir. Denetlenen ve denetlenmeyen öğrenime ek olarak daha pek çok farklı karışım, varyasyon ve alternatif mevcuttur; transfer öğrenim, yarı-denetlenen öğrenim ve daha nicesi. Bunların hepsinden bahsetmeye zaman olmayacak ancak bilmelisiniz ki makine öğreniminin alanları çok geniş, ve yüksek olasılıkla denetlenen öğrenim son zamanlarda en başarılı olanı. Biz de en çok onun hakkında konuşacağız. Peki, denetleme öğrenimi nasıl çalışır? Denetleme öğreniminde, bize eğitme verileri sunulur. Görüntüleri alma ve onları bir köpek ya da kediyle eşleştirme örneğine dönelim. Eğitme setimiz sunulan bir sürü görüntüyü ve her bir görüntünün etiketini -bu bir köpek midir veya kedi mi?- içerir. Şimdi, bu eğitme veri setini, istatiksel modeli (ya da genel bir makine öğrenim modelini) ve öğrenim algoritmasını alalım ve kombinlendikleri süreçte neler olacağından söz edelim. Kombinlendikleri derken, modeli eğittimizi ve bunun çıktısının bir eğitilmiş model olduğundan bahsediyoruz. Eğitilmiş model görüntüler ve kedi ya da köpek etiketleri arasındaki ilişkiye dair bir şey öğrenmiştir ve onu bir kez eğittik mi, bu modele daha önceden hiç görmediği bir görsel gösterdiğimizde bir tahminde bulunacaktır. Eğer iyi iş çıkarttıysak, modelin tahmini gerçek yanıtla uyuşmalıdır ve bunun hakkında ileride daha çok konuşacağız. Tamam, unutulmaması gereken çok önemli bir şey de şu: Görüntüler, köpekler veya kediler gibi bir öğrenme problemi dahil olmak üzere klasik örneklerden bahsettik. Ancak dünyada çok çok fazla sayıda denetleme problemi örneği vardır. Örneğin, bir video oyunu oynamak. Kendiliğinden bir video oyunu oynamayı öğrenmek bir denetleme öğrenimi problemidir. Denetleme öğrenim problemini video oyunu ekranındaki mevcut durumdan öğrenme ve bir sonraki adıma eşleme olarak düşünebiliriz. Örneğin: Bir sonraki adımım ne olacak, sağa mı sola mı; atla mı ateş et mi? Bu tip modellerin bir eğitilme yolu için geliştirilen bir kavram "takviyeli öğrenim"dir. Takviyeli öğrenim temel olarak algoritmanın bir çeşit olaylar dizisi boyunca pek çok sorgulama yaptığı bir çeşit denetlemeli öğrenimdir. Bu olaylar dizisinin sonunda pozitif ya da negatif bir karşılık alır ve ödülü mümkün en üst düzeye çıkaracak şekilde dizi boyunca sorgulayış tarzını değiştirir. Bu, biraz daha sonraki bir derste bahsedeceğimiz go bağlamında daha da belirginleşecek. Denetlemeli öğrenimin bir başka örneği de makine çevirisidir. Örneğin ben size İngiilzce bir cümle verip algoritmanızın bunu İspanyolca'ya çevirmesini isteyebilirim. Bu denetlemeli öğrenim ve makine öğrenimi algoritmaları için çetin bir konu olmuştur ancak yeniden daha sonra konuşacağımız üzere son zamanlarda bu konuda epey adım kaydedilmiştir. Ve makine çevirisi ve benzer işler bağlamında duyabileceğiniz bir başka terim de sekans öğrenimidir. Sekans öğrenimi eşlediğiniz objenin bir uzun sekans olduğu anlamına gelir. Örneğin bu, dildeki kelimelerin uzun bir sekansı olabilir. Bu terimlere yinelenen nöral ağlarda ve uzun-kısa zamanlı hafıza ağlarında, sekans öğrenimiyle bir aradaki LSTM'lerde rastlayabilirsiniz. Bu güncel nöral ağlar son zamanlarda çeviride görülen ilerlemeden sorumludurlar. Son olarak, bahsedeceğim son örnek bir çeşit tavsiye sistemi. Örneğin daha önceden dinlemiş olduğunuz bir çeşit şarkı listesi alıp buna dayanarak sizin beğeneceğiniz yeni bir şarkı tavsiye edebiliriz. Büyük olasılıkla bu tip örneklere aşinasınız ve gerçekten de bunlar beğenebileceğiniz şeyleri tavsiye etme konusunda inanılmaz iyi çalışabilirler. İşte bu da bir başka denetlemeli öğrenim problemi örneğidir. Bu dersten hatırlayıp götürmenizi istediğim son son şeylerden biri de denetlemeli öğrenim gerçekleştirebilen pek çok algoritma örneği olduğu. Ekranda bunlardan küçük bir altküme görebilirsiniz. Nöral ağlar veya aslında nöral ağların bir örneği olan derin öğrenmeyi son zamanlarda sıklıkla duymuş olabilirsiniz. Nöral ağların diğer algoritmalar arasında yalnız bir makine öğrenimi algoritması örneği olduğunu unutmamalısınız. Tıpkı diğer algoritmalar gibi onların da güçlü ve zayıf yanları var ama son zamanlarda neden bu kadar yaygın olduklarına da aynı şekilde daha sonra değineceğiz. Sonraki derste makine öğreniminin yaptıklarını nasıl yaptığını anlamak üzere uzamsal veya geometrik bir yöntemden bahsedeceğim.