Makine Öğrenimi ve Sinir Ağları - sayfa 54

 

Ders 4.1 — Bir sonraki kelimeyi tahmin etmeyi öğrenmek



Ders 4.1 — Bir sonraki kelimeyi tahmin etmeyi öğrenme [Makine Öğrenimi için Sinir Ağları]

Gelecek videolar, özellik gösterimi yoluyla bir kelimenin anlamını öğrenmek için geri yayılım algoritmasını kullanmaya odaklanacak. Bu girişte, ilişkisel bilginin geri yayılım kullanarak öznitelik vektörlerine nasıl dönüştürülebileceğini göstermek için 1980'lerden basit bir durumla başlayacağız.

Vaka, benzer yapılara sahip biri İngiliz, diğeri İtalyan iki aile ağacını içeriyor. Bu aile ağaçlarındaki bilgileri belirli ilişkileri (örneğin, oğul, kız, baba, anne) kullanan önermeler olarak ifade ederek, bu ilişkisel bilgileri öğrenme görevini bir üçlüler kümesi içinde düzenlilikler bulmak olarak görebiliriz.

Sembolik kurallar aramak yerine, bir üçlünün üçüncü terimini ilk iki terimden tahmin ederek bu bilgiyi yakalamak için bir sinir ağı kullanabiliriz. Ağın mimarisi, ilginç temsilleri öğrenmek için tasarlanmış çok sayıda katmandan oluşur. Bilgileri tarafsız bir temsil kullanarak kodlar, tüm insanlara farklı varlıklar olarak davranılmasını sağlarız.

Ağ, bir dizi önerme üzerinde eğitim alarak, geri yayılımı kullanarak ağırlıkları kademeli olarak ayarlayarak öğrenir. Öğrenilen temsilleri anlamak için kişiyi kodlamaktan sorumlu gizli katmanı inceleyebiliriz. Bu katmandaki farklı birimler, kişinin uyruğu, nesli, soy ağacının dalı gibi özellikleri ortaya koymaktadır.

Bu özellikler, etki alanındaki düzenlilikleri yakaladıkları için çıktı kişisini tahmin etmek için kullanışlıdır. Ağ, herhangi bir açık rehberlik olmaksızın bu özellikleri otonom olarak keşfeder. Ağın orta katmanı, çıktı kişinin özelliklerini tahmin etmek için girdi kişinin özelliklerini ve ilişki özelliklerini birleştirir.

Ağın performansı, tamamlanmamış üçlüler üzerinde test edilerek ve ne kadar iyi genellendiği gözlemlenerek değerlendirilebilir. Sınırlı eğitim verileriyle, 24 yollu bir seçim için iyi bir doğruluk oranı elde eder. Daha büyük bir veri kümesi üzerinde eğitilirse, verilerin daha küçük bir bölümünden genelleme yapabilir.

Burada sunulan örnek bir oyuncak vaka olsa da, pratikte benzer teknikleri milyonlarca ilişkisel olgu içeren veritabanlarına uygulayabiliriz. Varlıkların ve ilişkilerin öznitelik vektör temsillerini keşfetmesi için bir ağı eğiterek, veritabanını etkili bir şekilde temizleyebilir ve doğrulayabiliriz.

İlk iki terimden üçüncü terimi tahmin etmek yerine, bir olgunun doğruluk olasılığını birden fazla terim kullanarak da tahmin edebiliriz. Bu yaklaşım, eğitim için hem doğru hem de yanlış gerçeklerin örneklerini gerektirir.

Geri yayılım ve sinir ağlarını kullanarak, ilişkisel bilgilerden anlamlı temsiller öğrenebilir ve tahminler yapabilir veya bir veri tabanındaki gerçeklerin akla yatkınlığını değerlendirebiliriz.

Bir gerçeğin doğruluk olasılığını tahmin etmek için bir sinir ağını eğitmek, çeşitli doğru gerçekler ve güvenilir bir yanlış gerçek kaynağı içeren bir veri seti gerektirir. Ağı doğru örneklerle sunarak ve yüksek çıktıyı teşvik ederek ve yanlış örneklere maruz bırakarak ve düşük çıktıyı teşvik ederek, makul ve mantıksız gerçekleri ayırt etmeyi öğrenebilir.

Bu yaklaşım, veritabanlarını temizlemek için güçlü bir araç sağlar. Ağ, potansiyel olarak yanlış veya şüpheli gerçekleri işaretleyerek daha fazla araştırma ve doğrulamaya izin verebilir. Örneğin, veritabanı Bach'ın 1902'de doğduğunu belirtirse, ağ öğrendiği ilişkilere ve diğer ilgili gerçeklere dayanarak bunu son derece mantıksız olarak tanımlayabilir.

Bilgisayar gücündeki ilerlemeler ve milyonlarca ilişkisel gerçek içeren geniş veritabanlarının mevcudiyeti ile, özellik vektör temsillerini keşfetmek için sinir ağlarının uygulanması daha pratik hale geldi. Sinir ağlarının karmaşık kalıpları ve ilişkileri öğrenme kapasitesinden yararlanarak, değerli içgörüler elde edebilir ve öğrenilen temsillere dayalı tahminler yapabiliriz.

Burada tartışılan örneğin 1980'lerde geri yayılım ve sinir ağlarının yeteneklerinin bir gösterimi olarak yürütüldüğünü belirtmekte fayda var. O zamandan beri, alan önemli ilerleme kaydetti ve araştırmacılar benzer teknikleri doğal dil işleme, bilgisayarla görme ve öneri sistemleri dahil olmak üzere çeşitli alanlara uyguladılar.

Sonuç olarak, ilişkisel bilgilerden özellik temsillerini öğrenmek için geri yayılım algoritmasını ve sinir ağlarını kullanmak, karmaşık veri kümelerine dayalı tahminleri anlamak ve yapmak için güçlü bir yaklaşım sağlar. Ağı doğru ve yanlış gerçeklerin örnekleri üzerinde eğiterek, veritabanlarının kalitesini doğrulamak ve iyileştirmek için yeteneklerini kullanabilir ve onları çeşitli uygulamalar için daha güvenilir ve kullanışlı hale getirebiliriz.

Lecture 4.1 — Learning to predict the next word [Neural Networks for Machine Learning]
Lecture 4.1 — Learning to predict the next word [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
For cool updates on AI research, follow me at https://twitter.com/iamvriad.Lecture from the course Neural Networks for Machine Learning, as taught by Geoffre...
 

Ders 4.2 — Bilişsel bilime kısa bir bakış



Ders 4.2 — Bilişsel bilime kısa bir bakış [Makine Öğrenimi için Sinir Ağları]

Bilişsel bilimde, öznitelik vektör temsilleri ile kavramların ilişkisel temsilleri arasındaki ilişki hakkında uzun süredir devam eden bir tartışma vardır. Bu tartışma mühendisleri pek ilgilendirmiyor, dolayısıyla bu tartışmayı atlayabilirler.

Özellik teorisi, kavramların, kavramlar arasındaki benzerlikleri açıklamak ve makine öğrenimi için yararlı olan bir dizi anlamsal özellik tarafından tanımlandığını varsayar. Öte yandan, yapısalcı teori, bir kavramın anlamının diğer kavramlarla olan ilişkilerinde yattığını savunur ve ilişkisel bir grafik temsilini destekler.

1970'lerde Marvin Minsky, ilişkisel grafik gösterimleri lehine tartışmak için algılayıcıların sınırlamalarını kullandı. Bununla birlikte, tartışmanın her iki tarafı da yanlış kabul edilir çünkü teorileri gerçekten entegre edilebildiklerinde rakip olarak görürler.

Sinir ağları, anlamsal özelliklerin vektörlerini kullanarak ilişkisel grafikleri uygulayabilir. Aile ağaçlarının öğrenilmesi durumunda, sinir ağı bilgiyi açık çıkarım kuralları olmadan iletir. Cevap, olasılıksal mikro özelliklerin ve bunların etkileşimlerinin etkisi nedeniyle ağ için sezgisel olarak açıktır.

Bilinçli muhakeme için açık kurallar kullanılırken, sağduyumuz ve analojik muhakememizin çoğu, bilinçli müdahale adımları olmaksızın cevabı "sadece görmeyi" içerir. Bilinçli muhakemede bile, sonsuz gerilemeden kaçınmak için uygulanabilir kuralları hızlı bir şekilde belirlemenin bir yoluna ihtiyaç vardır.

Bir sinir ağında ilişkisel bir grafik uygulamak, nöronları grafik düğümlerine ve bağlantıları ikili ilişkilere atamak kadar kolay değildir. Farklı ilişki türleri ve üçlü ilişkiler zorluklar doğurur. Bir sinir ağında ilişkisel bilgiyi uygulamanın kesin yöntemi hala belirsizdir, ancak kavramlar ve nöronlar arasında çoktan çoğa eşlemelerin var olduğu dağıtılmış bir temsil oluşturarak, her bir kavramı temsil etmede birden çok nöronun yer alması muhtemeldir.

Dağıtılmış bir temsilde, her kavramı temsil etmek için birden çok nöron kullanılır ve her bir nöron, birden çok kavramı temsil etmeye dahil olabilir. Dağıtılmış temsil olarak bilinen bu yaklaşım, sinir ağlarında kavramsal bilginin daha esnek ve verimli bir şekilde kodlanmasına izin verir.

Bununla birlikte, bir sinir ağında ilişkisel bilginin nasıl temsil edileceğine ilişkin spesifik uygulama detayları hala araştırılmaktadır. Bir nöronun ilişkisel grafikteki bir düğüme karşılık geldiği ve bağlantıların ikili ilişkileri temsil ettiği varsayımı yeterli değildir. İlişkiler farklı türlerde ve tatlarda gelir ve nöral bağlantıların yalnızca gücü vardır, çeşitli ilişki türlerini yakalama yeteneğinden yoksundur.

Ayrıca, "A, B ve C arasındadır" gibi üçlü ilişkilerin de dikkate alınması gerekir. İlişkisel bilgiyi bir sinir ağına entegre etmek için en uygun yaklaşım hala belirsizdir ve devam eden araştırmalar bu zorluğu ele almayı amaçlamaktadır.

Bununla birlikte, kanıtlar, sinir ağlarının kavramların temsilinde dağıtılmış bir temsilin yer aldığını göstermektedir. Bu yaklaşım, bilişsel bilim alanında daha karmaşık bilişsel modelleme ve anlayışın yolunu açarak, çeşitli kavramları ve bunların ilişkilerini ele alma esnekliğine ve kapasitesine izin verir.

Lecture 4.2 — A brief diversion into cognitive science [Neural Networks for Machine Learning]
Lecture 4.2 — A brief diversion into cognitive science [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
For cool updates on AI research, follow me at https://twitter.com/iamvriad.Lecture from the course Neural Networks for Machine Learning, as taught by Geoffre...
 

Ders 4.3 — softmax çıktı işlevi [Makine Öğrenimi için Sinir Ağları]



Ders 4.3 — softmax çıktı işlevi [Makine Öğrenimi için Sinir Ağları]

Şimdi softmax çıkış fonksiyonu konusunu inceleyelim. Softmax işlevi, bir sinir ağının çıktılarının toplamının bir olmasını sağlamak için kullanılan bir tekniktir ve bunların birbirini dışlayan alternatifler arasında bir olasılık dağılımını temsil etmesine izin verir.

Özellik vektörlerinin kelimeleri temsil etmek için nasıl öğrenildiğini tartışmaya devam etmeden önce, teknik bir sapma yapalım. Şimdiye kadar, doğrusal nöronlar için uygun olan sinir ağları için bir eğitim kriteri olarak kare hata ölçüsünü kullandık. Bununla birlikte, kare hata ölçüsünün sınırlamaları vardır.

Örneğin, istenen çıktı 1 ise, ancak bir nöronun gerçek çıktısı sıfıra çok yakınsa, ağırlık güncellemelerini kolaylaştıracak çok az gradyan vardır. Bunun nedeni, nöron çıkışının eğiminin neredeyse yatay olması ve önemli bir hataya rağmen yavaş ağırlık ayarlamalarına neden olmasıdır.

Ek olarak, birbirini dışlayan sınıf etiketlerine olasılıklar atarken, çıktının toplamının bir olması çok önemlidir. Hem A Sınıfına hem de B Sınıfına dörtte üç olasılık atamak gibi bir cevap saçmadır. Bu nedenle, ağa bu alternatiflerin birbirini dışladığı bilgisini sağlamamız gerekir.

Bu sorunları ele almak için, birbirini dışlayan sınıfları uygun şekilde işleyebilen farklı bir maliyet fonksiyonuna ihtiyacımız var. Softmax işlevi, bu hedefe ulaşmamızı sağlar. Maksimum fonksiyonunun sürekli bir versiyonudur ve softmax grubunun çıktılarının bir olasılık dağılımını temsil etmesini sağlar.

Softmax grubunda, her birim aşağıdaki katmandan logit adı verilen birikmiş bir girdi alır. yi olarak gösterilen her birimin çıktısı, yalnızca kendi logitine değil, aynı zamanda softmax grubundaki diğer birimlerin topladığı logitlere de bağlıdır. Matematiksel olarak, i'inci nöronun çıktısı, softmax grubundaki tüm nöronlar için aynı miktarın toplamına bölünen e^zi denklemi kullanılarak hesaplanır.

Bu softmax denklemi, bir olasılık dağılımını temsil eden tüm yi'lerin toplamının bire eşit olduğunu garanti eder. Ek olarak, yi'nin değerleri sıfır ile bir arasındadır ve birbirini dışlayan alternatiflerin bir olasılık dağılımı olarak temsil edilmesini zorunlu kılar.

Softmax fonksiyonunun türevi, lojistik birime benzer basit bir forma sahiptir ve bu da onu hesaplamalar için uygun hale getirir. Softmax grubundaki tek bir nöronun girdisine göre çıktının türevi, yi çarpı (1 - yi) ile verilir.

Çıktılar için bir softmax grubu kullanırken uygun maliyet fonksiyonunun belirlenmesi çok önemlidir. Çapraz entropi maliyet fonksiyonu olarak da bilinen doğru cevabın negatif log olasılığı yaygın olarak kullanılır. Bu maliyet fonksiyonu, doğru cevabı sağlamanın log olasılığını maksimize etmeyi amaçlar.

Çapraz entropi maliyet fonksiyonunu hesaplamak için, yanlış cevaplara sıfır ve doğru cevaba bir değeri atayarak tüm olası cevapları toplarız. Negatif log olasılığını hesaplayarak, doğru cevapla ilgili maliyeti elde ederiz.

Çapraz entropi maliyet fonksiyonunun önemli bir avantajı, hedef değer 1 olduğunda ve çıktı sıfıra yakın olduğunda büyük gradyanı olmasıdır. Çıktıdaki küçük değişiklikler bile maliyet fonksiyonunun değerini önemli ölçüde artırır. Örneğin, milyonda bir değeri, aradaki fark çok küçük olsa da, milyarda bir değerinden çok daha iyidir.

Bu noktayı daha iyi açıklamak için, cevabın milyonda bir veya milyarda bir olduğu inancına dayanan bir bahis oynadığınızı hayal edin. Milyonda bir bahis oynamak ve yanılmak bir milyon dolar kaybetmekle sonuçlanacaktır. Tersine, cevap milyarda bir olsaydı, aynı bahis bir milyar dolar kaybetmeye yol açardı.

Çapraz entropi maliyet fonksiyonunun bu özelliği, cevap önemli ölçüde yanlış olduğunda dik bir türev sağlar; bu, girdi değiştikçe çıktının değişiminin düzlüğünü dengeler. Bu faktörleri birbiriyle çarparken, çapraz entropi maliyet fonksiyonunun çıktı birimi i'ye giren lojite göre türevini elde ederiz. Bu hesaplama için zincir kuralı kullanılır.

Bir birimin çıktısına göre maliyet fonksiyonunun türevi, çıktının logit zi'ye göre türevi ile çarpıldığında, gerçek çıktı eksi hedef çıktıyı verir. Bu farkın eğimi, çıktılar ve hedefler önemli ölçüde farklı olduğunda bir veya eksi birdir ve eğim yalnızca hemen hemen aynı olduklarında sıfıra yakındır ve bu da doğru bir cevabın üretildiğini gösterir.

Softmax çıktı işlevi, bir sinir ağının çıktılarının birbirini dışlayan alternatifler arasında bir olasılık dağılımını temsil etmesini sağlamak için kullanılır. Softmax denklemini kullanarak, çıktılar, farklı sınıflar için olasılıkları gösteren, bire kadar özetlemek üzere sınırlandırılır.

Bununla birlikte, sinir ağlarını eğitmek için bir maliyet fonksiyonu olarak kare hata ölçüsünün kullanılması, istenen çıktı gerçek çıktıdan uzak olduğunda yavaş ağırlık ayarlamaları gibi dezavantajlara sahiptir. Bu sorunu çözmek için çapraz entropi maliyet fonksiyonu tanıtılmıştır. Doğru cevabın negatif log olasılığını hesaplar ve hedef değer 1 ve çıktı sıfıra yakın olduğunda daha büyük bir gradyan verir. Bu özellik, daha verimli öğrenmeye izin verir ve birbirini dışlayan alternatiflere eşit olasılıklar atamaktan kaçınır.

Softmax işlevi, çapraz entropi maliyet işleviyle birlikte, olasılıksal çıktılar üretmek üzere sinir ağlarını eğitmek için güçlü bir kombinasyon sağlar. Ağ, geri yayılım ve stokastik gradyan iniş yoluyla ağırlıkları ve yanlılıkları ayarlayarak, doğru tahminler yapmayı ve veriler arasındaki karmaşık ilişkileri temsil etmeyi öğrenebilir.

Bu kavram ve tekniklerin sinir ağı eğitiminin temelini oluşturduğunu ve doğal dil işleme, bilgisayar görüşü ve örüntü tanıma dahil olmak üzere çeşitli alanlarda uygulanabileceğini not etmek önemlidir. Bu alanlardaki sürekli araştırma ve ilerlemeler, gerçek dünya sorunlarını çözmede sinir ağlarının performansının ve yeteneklerinin geliştirilmesine katkıda bulunur.

Lecture 4.3 — The softmax output function [Neural Networks for Machine Learning]
Lecture 4.3 — The softmax output function [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
For cool updates on AI research, follow me at https://twitter.com/iamvriad.Lecture from the course Neural Networks for Machine Learning, as taught by Geoffre...
 

Ders 4.4 — Nöro-olasılığa dayalı dil modelleri



Ders 4.4 — Nöro-olasılığa dayalı dil modelleri [Makine Öğrenimi için Sinir Ağları]

Bu videoda, özellikle konuşma tanıma sistemlerinde kelimeleri temsil eden özellik vektörlerinin pratik bir uygulamasını keşfediyoruz. Birinin daha sonra ne söyleyeceğini iyi anlamak, çıkardıkları sesleri doğru bir şekilde tanımak için çok önemlidir.

Konuşma tanıma, özellikle akustik girdinin genellikle belirsiz olduğu ve birden çok sözcüğün sinyale eşit derecede iyi uyabildiği gürültülü konuşmada ses birimlerini doğru bir şekilde tanımlamada zorluklarla karşılaşır. Ancak, genellikle bu belirsizliği fark etmeyiz çünkü doğru kelimeleri duymak için ifadenin anlamına güveniriz. Konuşmayı tanımaya yönelik bu bilinçsiz süreç, konuşma tanıyıcıların olası sonraki kelimeleri tahmin etme ihtiyacını vurgular.

Neyse ki, konuşulan içerik tam olarak anlaşılmadan kelimeler etkili bir şekilde tahmin edilebilir. Trigram yöntemi, takip edebilecek farklı kelimelerin olasılıklarını tahmin etmek için standart bir yaklaşımdır. Büyük bir metin külliyatındaki sözcük üçlülerinin sıklıklarının sayılmasını ve bu sıklıkların önceki iki sözcük verildiğinde bir sonraki sözcüğün göreli olasılıklarını tahmin etmek için kullanılmasını içerir.

Trigram yöntemi, önceki iki kelimeye dayalı olasılıklar sağladığı için yakın zamana kadar son teknoloji bir yaklaşım olmuştur. Daha geniş bağlamların kullanılması olasılıkların patlamasına ve çoğunlukla sıfır sayıya neden olur. "Dinozor pizzası" gibi bağlamın görünmediği durumlarda model, tek tek kelime tahminlerine başvurur. Daha önce bir örnekle karşılaşılmadı diye sıfır olasılık atamamak önemlidir.

Bununla birlikte, trigram modeli, bir sonraki kelimeyi tahmin etmeye yardımcı olabilecek değerli bilgileri gözden kaçırır. Örneğin, "kedi" ve "köpek" veya "ezilmiş" ve "düzleştirilmiş" gibi kelimeler arasındaki benzerlikleri anlamak, tahmin doğruluğunu artırabilir. Bu sınırlamanın üstesinden gelmek için kelimelerin anlamsal ve sözdizimsel özelliklerini yakalayan özellik vektörlerine dönüştürülmesi gerekir. Önceki kelimelerin özelliklerini kullanarak, tahmin için daha geniş bir bağlam (örneğin, önceki 10 kelime) kullanılabilir.

Joshua Bengio, sinir ağlarını kullanarak bu yaklaşıma öncülük etti ve ilk modeli soy ağaçları ağına benziyor, ancak daha karmaşık bir şekilde dil modellemeye uygulandı. Ağ, bir kelimenin indeksini girerek ve aktiviteyi gizli katmanlar aracılığıyla yayarak, kelimelerin özellik vektörleri olarak dağıtılmış temsillerini öğrenebilir. Bu vektörler daha sonra bir softmax çıktı katmanı kullanılarak çeşitli kelimelerin olasılıklarını tahmin etmek için kullanılır.

Ek bir gelişme, girdi sözcüklerini doğrudan çıktı sözcüklerine bağlayan atlama katmanı bağlantılarının kullanılmasıdır. Bireysel giriş sözcükleri, potansiyel çıkış sözcükleri hakkında değerli bilgiler içerir. Bengio'nun modeli başlangıçta trigramlardan biraz daha kötü performans gösterdi, ancak trigramlarla birleştirildiğinde umut vaat etti.

Bengio'nun çalışmasından bu yana, kelimeler için öznitelik vektörlerini kullanan dil modelleri, trigram modellerini önemli ölçüde geliştirdi ve geride bıraktı. Bununla birlikte, çok sayıda çıktı sözcüğü ile uğraşırken bir zorluk ortaya çıkar, çünkü softmax çıktı katmanı önemli sayıda ağırlık gerektirebilir (örneğin, yüzbinlerce). Aşırı uydurma, son gizli katman çok büyükse meydana gelebilir, ancak boyutunun küçültülmesi, çok sayıda olasılığın doğru tahmin edilmesine yol açar.

Bir sonraki videoda, hem büyük hem de küçük olasılıkların konuşma tanıma sistemleriyle ilgili olduğunu göz önünde bulundurarak, çok sayıda çıktı sözcüğünü işlemek için alternatif yaklaşımları keşfedeceğiz.

Lecture 4.4 — Neuro-probabilistic language models [Neural Networks for Machine Learning]
Lecture 4.4 — Neuro-probabilistic language models [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
For cool updates on AI research, follow me at https://twitter.com/iamvriad.Lecture from the course Neural Networks for Machine Learning, as taught by Geoffre...
 

Ders 4.5 — Birçok olası çıktıyla ilgilenmek



Ders 4.5 — Birçok olası çıktıyla ilgilenme [Makine Öğrenimi için Sinir Ağları]

Bu videoda, geniş bir kelime dağarcığıyla uğraşırken bir softmax'ta aşırı sayıda çıktı birimi ihtiyacını ortadan kaldırmak için farklı yaklaşımları keşfedeceğiz. Kelime olasılıklarını elde etmek için yüz binlerce çıktı birimine sahip olmak yerine alternatif mimariler kullanabiliriz.

Bir yaklaşım, bağlam sözcükleri ve bir aday sözcük girdiğimiz seri mimaridir. Ağı kat ederek, aday kelimenin bu bağlamda uygunluğunu gösteren bir puan oluşturuyoruz. Bu yaklaşım, ağı birden çok kez çalıştırmayı gerektirir, ancak hesaplamaların çoğunun yalnızca bir kez yapılması gerekir. Bağlamdaki aynı girdileri farklı aday sözcükler için yeniden kullanabiliriz ve yeniden hesaplanması gereken tek kısım, aday sözcüğün belirli girdileri ve son puan çıktısıdır.

Bu seri mimaride öğrenmek için, her aday kelime için puanlar hesaplıyoruz ve kelime olasılıklarını elde etmek için bir softmax işlevi uyguluyoruz. Sözcük olasılıklarını hedef olasılıklarıyla karşılaştırarak (genellikle doğru sözcük için bir, diğerleri için sıfır), çapraz entropi alanı türevlerini türetebiliriz. Bu türevler, doğru aday kelimenin puanını artırmak ve üst düzey rakiplerin puanlarını azaltmak için ağırlık ayarlamalarına rehberlik eder. Verimliliği optimize etmek için, olası tüm adayları değerlendirmek yerine başka bir öngörücü tarafından önerilen daha küçük bir aday kelime kümesini dikkate alabiliriz.

Büyük bir softmax'tan kaçınmanın başka bir yöntemi de sözcükleri ikili ağaç yapısında düzenlemektir. Bu, tüm sözcükleri ağaçta yapraklar olarak düzenlemeyi ve bir tahmin vektörü oluşturmak için önceki sözcüklerin bağlamını kullanmayı içerir. Bu vektörü ağaçtaki her bir düğüm için öğrenilmiş bir vektörle karşılaştırarak sağ veya sol dalı alma olasılığını belirleyebiliriz. Ağacı yinelemeli olarak kat ederek hedef kelimeye ulaşabiliriz. Öğrenme sırasında, hesaplama yükünü önemli ölçüde azaltarak, yalnızca doğru yol üzerindeki düğümleri dikkate almamız gerekir.

Kelime özellik vektörü öğrenimi için farklı bir yaklaşım, geçmiş ve gelecekteki bağlamdan yararlanmaktır. Bir kelime penceresi kullanarak doğru kelimeyi veya rastgele bir kelimeyi pencerenin ortasına yerleştiriyoruz. Bir sinir ağını doğru kelime için yüksek puanlar ve rastgele kelimeler için düşük puanlar verecek şekilde eğiterek, anlamsal ayrımları yakalayan özellik vektörlerini öğrenebiliriz. Bu özellik vektörleri daha sonra çeşitli doğal dil işleme görevleri için kullanışlıdır.

Öğrenilen öznitelik vektörlerini görselleştirmek için, t-SNE gibi teknikleri kullanarak bunları iki boyutlu bir haritada gösterebiliriz. Bu görselleştirme, benzer sözcükleri ve kümeleri belirlemeye yardımcı olur ve sinir ağının sözcük anlamlarını anlamasına ilişkin içgörü sağlar. Öğrenilen vektörler, anlamsal ilişkileri ve ayrımları ortaya çıkararak, bağlamsal bilginin kelime anlamlarını belirlemedeki gücünü gösterir.

İşte öğrenilen özellik vektörlerinin iki boyutlu harita gösteriminin başka bir örneği. Haritanın bu bölümünde oyunlarla ilgili bir kelime kümesi gözlemleyebiliyoruz. Maçlar, oyunlar, yarışlar, oyuncular, takımlar ve kulüpler gibi kelimeler, anlam benzerliklerini gösterecek şekilde bir arada gruplandırılmıştır. Ayrıca, ödüller, kupalar, kaseler, madalyalar ve diğer ödüller dahil olmak üzere oyunların ilişkili öğelerini tanımlar. Sinir ağının bu anlamsal ilişkileri yakalama yeteneği, bir kelimenin belirli bir bağlam için uygun olması durumunda, aynı küme içindeki diğer kelimelerin de muhtemelen uygun olacağı sonucuna varmasına olanak tanır.

Haritanın başka bir bölümüne geçtiğimizde ise yerlere ayrılmış bir küme ile karşılaşıyoruz. En üstte, çeşitli ABD eyaletlerini buluyoruz, ardından ağırlıklı olarak Kuzey Amerika'da bulunan şehirler geliyor. Ek olarak, harita, sinir ağının coğrafi ilişkileri anladığını gösteren diğer şehirleri ve ülkeleri sergiliyor. Örneğin, Cambridge'i hepsi İngilizce konuşan Kanada'ya ait olan Toronto, Detroit ve Ontario'ya bağlarken, Quebec'i Berlin ve Paris ile gruplandırarak Fransızca konuşan Kanada ile ilişkilendirir. Benzer şekilde, Irak ve Vietnam arasında bir benzerlik olduğunu öne sürüyor.

Haritada başka bir örneği inceleyelim. Bu bölüm zarflara odaklanır ve benzer anlamlara sahip olan muhtemel, muhtemelen, muhtemelen ve belki gibi kelimeleri gösterir. Benzer şekilde, tamamen, tamamen, tam ve büyük ölçüde arasındaki anlamsal benzerlikleri belirler. Ek olarak, hangisi ve bu, kim ve ne ve nasıl, olup olmadığı ve neden gibi diğer benzerlik modellerini tanır.

Bu öğrenilmiş öznitelik vektörlerinin büyüleyici yönü, herhangi bir açık rehberlik olmaksızın yalnızca Wikipedia'daki kelime dizilerini analiz ederek ince anlamsal nüansları yakalamalarıdır. Bu bağlamsal bilgi, kelime anlamlarını anlamada çok önemli bir rol oynar. Aslında, bazı teoriler, bunun kelime semantiğini edindiğimiz birincil mekanizmalardan biri olduğunu öne sürüyor.

Sonuç olarak, geniş kelime dağarcığını işlemeye ve kelime temsillerini öğrenmeye yönelik bu farklı yaklaşımlar, geleneksel softmax mimarisine verimli alternatifler sunar. Sinir ağları, seri mimarilerden, ağaç yapılarından veya bağlamsal bilgilerden yararlanarak anlamlı ve benzer kelime temsilleri oluşturabilir. Bu temsiller, çeşitli doğal dil işleme görevlerinde değerli olduklarını kanıtlayarak, ağın sözcükler arasındaki anlamsal ilişkileri ve ayrımları yakalama yeteneğini sergiliyor.

Lecture 4.5 — Dealing with many possible outputs [Neural Networks for Machine Learning]
Lecture 4.5 — Dealing with many possible outputs [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
Lecture from the course Neural Networks for Machine Learning, as taught by Geoffrey Hinton (University of Toronto) on Coursera in 2012. Link to the course (l...
 

Ders 5.1 — Nesne tanıma neden zordur?



Ders 5.1 — Nesne tanıma neden zordur [Makine Öğrenimi için Sinir Ağları]

Gerçek sahnelerdeki nesneleri tanımak, bu görevdeki doğuştan gelen yeterliliğimiz nedeniyle genellikle gözden kaçan çeşitli zorluklar ortaya çıkarır. Piksel yoğunluklarını nesne etiketlerine dönüştürmek, çeşitli zorluklar içeren karmaşık bir süreçtir. Gerçek dünyada mevcut olan hareket ve stereo ipuçlarından yoksun olduğumuz için, en büyük engellerden biri nesneyi çevresinden ayırmaktır. Bu yokluk, hangi parçaların aynı nesneye ait olduğunu belirlemeyi zorlaştırır. Ek olarak, nesneler diğer nesneler tarafından kısmen gizlenebilir ve bu da tanıma sürecini daha da karmaşık hale getirir. İlginç bir şekilde, olağanüstü görsel yeteneklerimiz genellikle bu sorunları gizler.

Nesne tanımadaki bir diğer önemli zorluk, aydınlatmanın piksel yoğunlukları üzerindeki etkisinden kaynaklanmaktadır. Bir pikselin yoğunluğu yalnızca nesnenin kendisine değil aynı zamanda aydınlatma koşullarına da bağlıdır. Örneğin, parlak ışık altındaki siyah bir yüzey, loş ışıktaki beyaz yüzeye kıyasla daha yoğun pikseller üretir. Bir nesneyi tanımak için, bu değişen piksel yoğunluklarını sınıf etiketlerine dönüştürmemiz gerekir, ancak bu varyasyonlar, nesnenin doğası veya kimliğiyle ilgili olmayan faktörler nedeniyle ortaya çıkabilir.

Nesneler, tanımanın karmaşıklığına katkıda bulunan deformasyonlara da maruz kalabilir. El yazısı rakamlar gibi nispeten basit nesneler için bile, aynı adla ilişkili çok çeşitli şekiller vardır. Örneğin, "2" rakamı bir tepe ile italik olarak görünebilir veya daha büyük bir döngüye ve daha yuvarlak bir forma sahip olabilir. Ayrıca, bir nesnenin sınıfı genellikle görsel görünümünden çok işleviyle tanımlanır. Koltuklardan ahşap sırtlı modern çelik çerçeveli tasarımlara kadar sayısız varyasyonun bulunduğu sandalyeleri düşünün. Görsel özellikler tek başına sınıfı belirlemek için yeterli olmayabilir.

Bakış açısı varyasyonları, nesne tanımanın zorluklarını daha da artırır. Üç boyutlu bir nesneyi birden fazla perspektiften tanıma yeteneği, geleneksel makine öğrenimi yöntemlerinin üstesinden gelmekte zorlandığı görüntü değişiklikleri yaratır. Bir nesne hakkındaki bilgiler, bakışımız sabit kalırken nesne hareket ettiğinde farklı pikseller arasında kayabilir. Tipik olarak görsel görevlerdeki piksellere karşılık gelen girdi boyutları arasındaki bu bilgi aktarımına, makine öğreniminde yaygın olarak rastlanmaz. Genellikle "boyut atlama" olarak adlandırılan bu sorunu ele almak, tanıma doğruluğunu iyileştirmek için çok önemlidir. Bu sorunu çözmek için sistematik bir yaklaşım oldukça arzu edilir.

Özetle, gerçek sahnelerdeki nesneleri tanımak çok sayıda zorluğu beraberinde getirir. Bu zorlukların üstesinden gelmek, segmentasyon, aydınlatma varyasyonları, oklüzyon, deformasyonlar, bakış açısı değişiklikleri ve nesnelerin semantik tanımı ile ilgili konuların ele alınmasını gerektirir. Bu faktörleri hesaba katan sağlam ve sistematik yöntemler geliştirmek, nesne tanıma sistemlerinin doğruluğunu ve güvenilirliğini artıracaktır.

Lecture 5.1 — Why object recognition is difficult [Neural Networks for Machine Learning]
Lecture 5.1 — Why object recognition is difficult [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
Lecture from the course Neural Networks for Machine Learning, as taught by Geoffrey Hinton (University of Toronto) on Coursera in 2012. Link to the course (l...
 

Ders 5.2 — Bakış açısı değişmezliğini sağlama



Ders 5.2 — Bakış açısı değişmezliğini sağlama [Makine Öğrenimi için Sinir Ağları]

Bu videoda, bakış açısı değişmezliği kavramını derinlemesine inceleyeceğim ve nesne tanımadaki bu zorluğu ele almak için çeşitli yaklaşımları keşfedeceğim. Bakış açısı varyasyonları önemli bir engel teşkil eder çünkü bir nesneyi her görüntülediğimizde nesne farklı piksellerde görünür ve bu da nesne tanımayı çoğu makine öğrenimi görevinden farklı kılar. Bu görev için doğal yeteneğimize rağmen, mühendislik veya psikolojide geniş çapta kabul gören çözümler henüz bulamadık.

İlk yaklaşım, gereksiz değişmez özelliklerin kullanılmasını önerir. Bu özellikler, öteleme, döndürme ve ölçekleme gibi dönüşümlere dayanabilmelidir. Örneğin, aralarında kırmızı bir nokta bulunan yaklaşık olarak paralel bir çift çizgi, yavru ringa martıları tarafından yiyecek için nereye gagalanacaklarını belirlemek için kullanılan değişmez bir özellik olarak önerilmiştir. Geniş bir değişmez özellik kümesi kullanarak, özellikler arasındaki ilişkileri açıkça temsil etmeden bunları benzersiz bir şekilde bir nesne veya görüntü halinde bir araya getirebiliriz.

Ancak, tanıma görevleriyle uğraşırken zorluk ortaya çıkar. Birden çok nesneden özniteliklerin ayıklanması, özelliklerin farklı nesnelerden parçalardan oluşmasıyla sonuçlanabilir ve tanıma için yanıltıcı bilgilere yol açabilir. Bu nedenle, farklı nesnelerin parçalarından özellikler oluşturmaktan kaçınmak çok önemli hale gelir.

"Akıllı normalleştirme" olarak adlandırılan başka bir yaklaşım, nesnenin etrafına bir kutu yerleştirmeyi içerir. Bu kutu içinde bir referans çerçevesi tanımlayarak, nesnenin özelliklerini ona göre tanımlayarak değişmezliği sağlayabiliriz. Nesnenin katı bir şekil olduğu varsayıldığında, bu yaklaşım bakış açısı değişikliklerinin etkisini etkili bir şekilde ortadan kaldırarak boyut atlama sorununu azaltır. Kutunun mutlaka dikdörtgen olması gerekmez; öteleme, döndürme, ölçekleme, kesme ve esneme işlemlerini hesaba katabilir. Bununla birlikte, uygun kutunun seçilmesi, potansiyel segmentasyon hataları, oklüzyon ve olağan dışı yönelimler nedeniyle zorluklar doğurur. Doğru kutuyu belirlemek, nesnenin şekli hakkındaki bilgimize dayanır ve bir tavuk-yumurta problemi yaratır: kutuyu doğru yapmak için şekli tanımamız gerekir, ancak şekli tanımak için doğru kutuya ihtiyacımız vardır.

Bir kaba kuvvet normalleştirme yaklaşımı, nesnelerin etrafındaki kutuları mantıklı bir şekilde tanımlamak için eğitim sırasında iyi bölümlere ayrılmış dikey görüntülerin kullanılmasını içerir. Test sırasında, karmaşık görüntülerle uğraşırken, çeşitli konum ve ölçeklerdeki olası tüm kutular araştırılır. Bu yaklaşım, bölümlere ayrılmamış görüntülerde yüzleri veya ev numaralarını algılamak gibi görevler için bilgisayar görüşünde yaygın olarak kullanılır. Bununla birlikte, tanıyıcı, farklı kutuları denemek için kaba bir ızgara kullanımına izin vererek, konum ve ölçekteki bazı varyasyonları işleyebildiğinde daha verimli olur.

Bakış açısı değişmezliği, nesne tanımada önemli bir zorluktur. Değişmeyen özelliklerin kullanılması, sınırlayıcı kutularla makul normalleştirme ve kaba kuvvet normalleştirme gibi yaklaşımlar, bakış açısı varyasyonlarının etkilerini hafifletmeye yardımcı olur. Bununla birlikte, uygun özelliklerin seçilmesi, doğru kutunun belirlenmesi ve farklı pozisyonların ve ölçeklerin ele alınması, bilgisayarla görme alanında devam eden araştırma çabaları olmaya devam etmektedir.

Lecture 5.2 — Achieving viewpoint invariance [Neural Networks for Machine Learning]
Lecture 5.2 — Achieving viewpoint invariance [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
Lecture from the course Neural Networks for Machine Learning, as taught by Geoffrey Hinton (University of Toronto) on Coursera in 2012. Link to the course (l...
 

Ders 5.3 — Rakam tanıma için evrişimli ağlar



Ders 5.3 — Rakam tanıma için evrişimli ağlar [Makine Öğrenimi için Sinir Ağları]

Bu videoda, evrişimli sinir ağlarını (CNN'ler) ve bunların el yazısı rakam tanımadaki uygulamalarını tartışıyoruz. CNN'ler, özellikle Yan LeCun'un el yazısını tanımada mükemmel olan ve pratikte uygulanan derin evrişimli ağları olmak üzere 1980'lerde büyük bir başarıydı. Bu ağlar, o dönemin mevcut bilgisayarlarda eğitilebilen ve son derece iyi performans gösteren birkaç derin sinir ağı arasındaydı.

CNN'ler, çoğaltılmış özellikler kavramı üzerine inşa edilmiştir. Nesneler bir görüntü içinde farklı konumlarda görünebileceğinden, bir konumda yararlı olan bir özellik algılayıcı başka bir yerde yararlı olabilir. Bu fikirden yararlanmak için, görüntüdeki farklı konumlarda aynı özellik algılayıcının birden çok kopyası oluşturulur. Bu çoğaltılmış özellik dedektörleri, ağırlıkları paylaşarak öğrenilmesi gereken parametre sayısını önemli ölçüde azaltır. Örneğin, 27 piksele sahip üç çoğaltılmış dedektör yalnızca dokuz farklı ağırlık gerektirir.

CNN'lerde, her biri çoğaltılmış özelliklerden oluşan çoklu özellik haritaları kullanılır. Bu kopyalanan özellikler, çeşitli konumlarda aynı olacak şekilde sınırlandırılırken, farklı haritalar farklı özellikleri algılamayı öğrenir. Bu yaklaşım, tanıma yeteneklerini geliştirerek, her bir görüntü parçasını temsil etmek için farklı özellik türleri sağlar. Çoğaltılan özellikler, bu algoritmayı kullanarak onları eğitmek kolay olduğundan, geri yayılımla iyi uyum sağlar. Geri yayılım, ağırlıklar arasındaki doğrusal kısıtlamaları dahil edecek şekilde değiştirilebilir ve çoğaltılan özellik algılayıcıların etkili bir şekilde öğrenilmesini sağlar.

Çoğaltılmış öznitelik algılayıcılarının başarılarıyla ilgili olarak genellikle kafa karışıklığı vardır. Bazıları çeviri değişmezliğine ulaştıklarını iddia etse de, bu tamamen doğru değildir. Çoğaltılan özellikler, nöronların aktivitelerinde değişmezlik değil eşdeğerlik sağlar. Örneğin, bir görüntü çevrildiğinde, aktif nöronlar da buna göre değişir. Ancak, çoğaltılan özellikler tarafından yakalanan bilgi değişmez. Bir özelliğin bir yerde tespit edildiği biliniyorsa, başka bir yerde tespit edilebilir. Bir miktar öteleme değişmezliği sağlamak için, çoğaltılan özellik algılayıcılarının çıktıları, komşu algılayıcıların ortalamasını alarak veya maksimumunu alarak bir havuzda toplanabilir. Bununla birlikte, kesin mekansal bilgiler, bu havuzlama sürecinde kaybolabilir ve bu da doğru mekansal ilişkilere dayanan görevleri etkiler.

Jan Lecun ve ortak çalışanları, LeNet-5 mimarisiyle etkileyici sonuçlar elde ederek el yazısı rakam tanımada CNN'lerin gücünü gösterdiler. LeNet-5, katmanlar arasında havuzlama ile birlikte birden çok gizli katman ve özellik haritasından oluşuyordu. Çakışan karakterleri işleyebilir ve girişten önce segmentasyon gerektirmez. Eğitim metodolojisi, giriş piksellerinden çıktı olarak posta kodları üreten eksiksiz bir sistem yaklaşımı kullandı. Eğitim, resmi olarak tanıtılmasından önce bile maksimum marja benzer bir yöntem kullanılarak gerçekleştirildi. LeNet-5, Kuzey Amerika'daki çekleri okumada oldukça değerli olduğunu kanıtladı.

Ön bilgileri makine öğrenimine, özellikle de sinir ağlarına enjekte etmek, ağ tasarımı, yerel bağlantı, ağırlık kısıtlamaları veya uygun sinirsel aktiviteler aracılığıyla yapılabilir. Bu yaklaşım, ağı belirli bir problem çözme yaklaşımına doğru yönlendirir. Başka bir yöntem, ağa öğrenmesi için daha fazla örnek sağlayan, önceki bilgilere dayalı olarak sentetik eğitim verileri oluşturmaktır. Bilgisayarlar daha hızlı hale geldikçe, ikinci yaklaşım giderek daha uygulanabilir hale geliyor. Altta yatan mekanizmaları tam olarak anlamadan potansiyel olarak üstün çözümler elde ederek, çok katmanlı ağları kullanmanın etkili yollarını keşfetmek için optimizasyona izin verir.

Sentetik veriler kullanılarak, el yazısı rakam tanımada çeşitli ilerlemeler kaydedilmiştir. Sentetik veri oluşturma, grafik işleme birimleri (GPU'lar) üzerinde geniş ağları eğitme ve konsensüs modelleri oluşturma gibi püf noktaları bir araya getirilerek önemli iyileştirmeler sağlandı. Örneğin, İsviçre'de Jurgen Schmidhuber tarafından yönetilen bir grup, hata oranını yaklaşık 25 hataya indirdi ve muhtemelen insan hatası oranına yaklaştı. Farklı modellerin performansını değerlendirmek, yalnızca sayısal ölçümlere güvenmek yerine hangi hataları yaptıklarının dikkate alınmasını gerektirir. McNemar testi gibi istatistiksel testler, belirli hataları analiz ederek daha fazla hassasiyet sağlayarak model üstünlüğünün daha iyi değerlendirilmesini sağlar.

Bu nedenle, modelleri hata oranlarına göre karşılaştırırken, yaptıkları belirli hataları göz önünde bulundurmak ve farklılıkların istatistiksel olarak anlamlı olup olmadığını belirlemek için McNemar testi gibi istatistiksel testler yapmak önemlidir. Yalnızca genel hata oranlarına bakmak, kesin bir karar vermek için yeterli bilgiyi sağlamayabilir.

Jurgen Schmidhuber'in İsviçre'deki grubu tarafından yapılan çalışma, sentetik veriler yoluyla bilgi enjekte etmenin etkinliğini gösterdi. Ek eğitim örnekleri oluşturmak için gerçek eğitim vakalarını dönüştürerek öğretici sentetik veriler oluşturmak için önemli çaba harcıyorlar. Katman başına birçok birim ve bir grafik işleme biriminde (GPU) çok sayıda katman içeren büyük bir ağı eğiterek, bilgi işlem gücünden yararlanabildiler ve fazla uydurmayı önleyebildiler.

Yaklaşımları üç temel tekniği birleştirdi: sentetik veri üretmek, bir GPU üzerinde geniş bir ağ eğitmek ve son tahmini belirlemek için birden fazla modelle bir fikir birliği yöntemi kullanmak. Bu yaklaşım sayesinde, hata oranını yaklaşık 25 hataya düşürerek etkileyici sonuçlar elde ettiler ki bu insan hatası oranıyla karşılaştırılabilir.

Farklı hata oranlarına sahip modelleri karşılaştırırken ilginç bir soru ortaya çıkıyor: 30 hata içeren bir modelin 40 hata içeren bir modelden önemli ölçüde daha iyi olup olmadığını nasıl anlarız? Şaşırtıcı bir şekilde, her model tarafından yapılan belirli hatalara bağlıdır. Sadece rakamlara bakmak yetmez. Belirli hatalara odaklanan istatistiksel bir test olan McNemar testi, modelleri karşılaştırmada daha fazla hassasiyet sağlar.

Örneğin, 2x2'lik bir tabloyu ele aldığımızda, bir modelin doğru, diğerinin yanlış yaptığı durumları inceleyebiliriz. Bu durumların oranlarını analiz ederek, modeller arasındaki farkların anlamlılığını belirleyebiliriz. Bazı durumlarda, bir model daha düşük bir hata oranına sahip olabilir, ancak diğer modelin başarılı olduğu belirli durumlarda daha kötü performans göstererek karşılaştırmayı daha az anlamlı hale getirebilir.

Bu nedenle, modelleri değerlendirirken ve karşılaştırırken, hem hata oranlarını hem de yapılan belirli hataları dikkate almak çok önemlidir. McNemar testi gibi istatistiksel testler, modeller arasındaki performans farklılıklarına ilişkin daha doğru bilgiler sağlayabilir. Bu, model seçimi ve iyileştirme hakkında bilinçli kararlar vermemize yardımcı olur.

Modelleri değerlendirirken ve karşılaştırırken hata oranlarını ve belirli hataları dikkate almanın yanı sıra dikkate alınması gereken başka faktörler de vardır.

  1. Veri kalitesi ve miktarı: Eğitim verilerinin kalitesi ve miktarı, model performansı üzerinde önemli bir etkiye sahip olabilir. Büyük, çeşitli ve temsili veri kümeleri üzerinde eğitilen modeller daha iyi genelleme yapma eğilimindedir. Eğitim ve değerlendirme için kullanılan verilerin, modelin karşılaşacağı gerçek dünya senaryolarını doğru bir şekilde yansıtmasını sağlamak önemlidir.

  2. Hesaplamalı kaynaklar: Bir modeli eğitmek ve dağıtmak için gerekli olan hesaplama kaynakları temel hususlardır. Bazı modeller, pratikliklerini ve ölçeklenebilirliklerini etkileyebilecek yüksek performanslı GPU'lar veya özel donanımlar gibi kapsamlı bilgi işlem gücü gerektirebilir.

  3. Yorumlanabilirlik: Uygulamaya bağlı olarak, modelin tahminlerinin yorumlanabilirliği çok önemli olabilir. Derin sinir ağları gibi bazı modeller genellikle kara kutu olarak kabul edilir ve bu da kararlarının arkasındaki mantığı anlamayı zorlaştırır. Buna karşılık, karar ağaçları veya doğrusal modeller gibi diğer modeller daha fazla yorumlanabilirlik sunar. Model seçimi, sorunun ve paydaşların gereklilikleriyle uyumlu olmalıdır.

  4. Sağlamlık ve genelleme: Bir modelin performansı, genelleme kabiliyetini değerlendirmek için yalnızca eğitim verileri üzerinde değil, aynı zamanda görünmeyen veriler üzerinde de değerlendirilmelidir. Sağlam bir model, çeşitli veri örneklerinde iyi performans göstermeli ve gürültüye, aykırı değerlere ve rakip saldırılara karşı dirençli olmalıdır.

  5. Ölçeklenebilirlik ve verimlilik: Uygulamanın gereksinimlerine bağlı olarak, model ölçeklenebilirliği ve verimliliği önemli hususlardır. Belirli senaryolarda büyük miktarda veriyi verimli bir şekilde işleyebilen veya gerçek zamanlı tahminler yapabilen modeller tercih edilebilir.

  6. Etik hususlar: Modelleri seçerken ve uygularken etik sonuçları göz önünde bulundurmak esastır. Yapay zeka sistemlerinin sorumlu ve adil kullanımını sağlamak için verilerdeki veya modelin tahminlerindeki önyargı, adalet, mahremiyet ve güvenlik endişeleri dikkate alınmalıdır.

  7. Kullanıcı geri bildirimi ve alan uzmanlığı: Son kullanıcılardan ve alan uzmanlarından geri bildirim toplamak, bir modelin performansı ve uygunluğu hakkında değerli bilgiler sağlayabilir. Girdileri, iyileştirme için belirli alanların belirlenmesine veya otomatik değerlendirme ölçütleri tarafından yakalanmayabilecek sınırlamaların ortaya çıkarılmasına yardımcı olabilir.

Hata oranlarına ve belirli hatalara ek olarak bu faktörleri göz önünde bulundurarak, modelleri değerlendirirken ve karşılaştırırken daha kapsamlı ve bilinçli kararlar verebiliriz.

Lecture 5.3 — Convolutional nets for digit recognition [Neural Networks for Machine Learning]
Lecture 5.3 — Convolutional nets for digit recognition [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
For cool updates on AI research, follow me at https://twitter.com/iamvriad.Lecture from the course Neural Networks for Machine Learning, as taught by Geoffre...
 

Ders 5.4 — Nesne tanıma için evrişimli ağlar



Ders 5.4 — Nesne tanıma için evrişimli ağlar [Makine Öğrenimi için Sinir Ağları]

El yazısı rakamları tanımak için geliştirilen ağların, yüksek çözünürlüklü renkli görüntülerdeki nesneleri tanıyacak şekilde ölçeklenip ölçeklenemeyeceği sorusu her zaman bir spekülasyon konusu olmuştur. Dağınık sahnelerle uğraşma, segmentasyon, 3B bakış açısı, birden fazla nesne ve aydınlatma varyasyonları gibi çeşitli faktörler nedeniyle zorlu bir görev olarak kabul edildi. Geçmişte araştırmacılar, ağların el yazısı rakamları tanıma yeteneğini geliştirmeye odaklandı ve bu da bazılarının bulgularının gerçek renkli görüntülere genellenebilirliğinden şüphe duymasına yol açtı.

Bu soruyu ele almak için yakın zamanda ImageNet adlı bir yarışma düzenlendi ve burada bilgisayarla görme sistemleri 1,2 milyon yüksek çözünürlüklü renkli görüntünün bir alt kümesi üzerinde test edildi. Görev, görüntüleri bin farklı sınıfla doğru bir şekilde etiketlemekti. Sistemlerin beş tahmin yapmasına izin verildi ve tahminlerden biri bir kişi tarafından atanan etiketle eşleşirse doğru kabul edildi. Ek olarak, sistemlerin tanınan nesnenin etrafına bir kutu yerleştirmesi gereken bir yerelleştirme görevi vardı.

Çeşitli kurumlardan önde gelen bilgisayarlı görü grupları yarışmaya katıldı ve erken aşamalarda elle ayarlanmış karmaşık çok aşamalı sistemleri en üst aşamada öğrenme algoritmalarıyla birleştirdi. Ancak, en iyi sistemler için %26 ila %27 arasında değişen hata oranlarıyla görevin çok zorlu olduğu ortaya çıktı. Buna karşılık, Alex Krizhevsky'nin derin sinir ağı, %16'lık önemli ölçüde daha düşük bir hata oranı elde etti.

Alex Krizhevsky'nin derin evrişimli sinir ağlarına dayanan ağı, aktivasyon fonksiyonları olarak yedi gizli katman ve düzeltilmiş doğrusal birimler kullandı. Ağ, yoğunluktaki değişimleri işlemek için bir katman içinde rekabete dayalı normalleştirme kullandı. Altörnekleme ve yansımalar gibi dönüşümlerle veri büyütme ve üst katmanlarda bırakma düzenlemesinin kullanımı da dahil olmak üzere genelleştirmeyi iyileştirmek için çeşitli teknikler kullanıldı. Ağ, güçlü donanım, özellikle Nvidia GTX 580 grafik işlemcileri konusunda eğitildi.

Yarışmanın sonuçları, Alex Krizhevsky'nin ağının diğer bilgisayarlı görüş sistemlerinden önemli bir farkla daha iyi performans gösterdiğini gösterdi. Başarısı, gerçek renkli görüntülerde nesne tanıma için derin sinir ağlarının potansiyelini gösterdi. Bu ağlar, ön bilgileri kullanabilir ve büyük ölçekli veri kümelerini ve hesaplamaları işleyebilir. Verimli donanım kullanımı ve ağları birden çok çekirdek üzerine dağıtma olasılığı, yeteneklerini daha da artırır. Sonuç olarak, derin sinir ağlarının gelişmeye devam etmesi ve statik görüntülerde nesne tanıma için standart yaklaşım haline gelmesi beklenmektedir.

Benzer şekilde, derin sinir ağları diğer çeşitli alanlarda etkileyici performans göstermiştir. Örneğin, dil çevirisi, duygu analizi ve soru yanıtlama gibi doğal dil işleme görevlerinde başarılı oldular. Bu görevlerde ağlar, metnin anlamını ve bağlamını anlamayı öğrenerek doğru ve anlamlı yanıtlar üretmelerini sağlar.

Ayrıca, geleneksel yöntemlerden daha iyi performans gösterdikleri konuşma tanımaya derin sinir ağları da uygulanmıştır. Bu ağlar, büyük miktarda etiketlenmiş konuşma verisinden öğrenerek, konuşulan kelimeleri yüksek doğrulukla etkili bir şekilde tanıyabilir ve yazıya dökebilir.

Sağlık hizmetleri alanında, derin sinir ağları, tıbbi görüntü analizinde dikkate değer yetenekler göstermiştir. X-ışınları, MRI'lar ve BT taramaları gibi tıbbi görüntülerden hastalıkların teşhis edilmesine yardımcı olabilirler. Bu ağlar, geniş bir etiketli tıbbi görüntü koleksiyonundan öğrenerek anormallikleri, tümörleri ve diğer tıbbi durumları insan uzmanlarla karşılaştırılabilir bir doğruluk düzeyiyle saptayabilir.

Derin sinir ağlarının başarısı, verilerin hiyerarşik temsillerini otomatik olarak öğrenme yeteneklerine bağlanabilir. Bu ağlar, birden çok soyutlama düzeyinde aşamalı olarak özellikleri ayıklayarak, verilerdeki karmaşık kalıpları ve ilişkileri yakalayabilir. Büyük veri setlerinin ve güçlü hesaplama kaynaklarının mevcudiyeti ile birleşen bu özellik öğrenme süreci, çeşitli alanlarda önemli ilerlemelerin yolunu açmıştır.

Sonuç olarak, derin sinir ağlarının nesne tanıma, doğal dil işleme, konuşma tanıma ve tıbbi görüntü analizi dahil olmak üzere çok çeşitli görevlerde oldukça etkili olduğu kanıtlanmıştır. Büyük veri kümelerinden öğrenme ve anlamlı temsilleri otomatik olarak çıkarma becerileri birçok alanda devrim yarattı. Hesaplama kaynakları gelişmeye devam ettikçe, derin sinir ağlarının yeteneklerinde daha da etkileyici başarılar ve daha fazla ilerleme bekleyebiliriz.

Lecture 5.4 — Convolutional nets for object recognition [Neural Networks for Machine Learning]
Lecture 5.4 — Convolutional nets for object recognition [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
Lecture from the course Neural Networks for Machine Learning, as taught by Geoffrey Hinton (University of Toronto) on Coursera in 2012. Link to the course (l...
 

Ders 6.1 — Mini parti gradyan inişine genel bakış



Ders 6.1 — Mini parti gradyan inişine genel bakış [Makine Öğrenimi için Sinir Ağları]

Bu videoda, büyük sinir ağlarında yaygın olarak kullanılan mini toplu sürüme odaklanarak, sinir ağları için stokastik gradyan inişli öğrenmeyi tartışacağız. Doğrusal bir nöronun hata yüzeyi, yatay eksenlerin ağırlıkları ve dikey eksenin hatayı temsil ettiği ikinci dereceden bir kase oluşturur. Çok katmanlı doğrusal olmayan ağlar için, hata yüzeyi daha karmaşıktır ancak yerel olarak ikinci dereceden bir kasenin bir kısmı ile yaklaşık olarak tahmin edilir.

Tam toplu öğrenme kullanılırken, en dik yokuş yönünde aşağı inmek istenen hedefe götürmeyebilir. En dik iniş yönü genellikle istenen yöne neredeyse dik olarak ilerler ve yakınsama sorunlarına neden olur. Hata yüzeyleri bazı yönlerde oldukça eğimli ve diğer yönlerde daha az eğimli olma eğiliminde olduğundan, bu sorun doğrusal olmayan çok katmanlı ağlarda devam eder.

Bunu ele almak için stokastik gradyan iniş (SGD) kullanılır. SGD, tüm veri kümesindeki gradyanı hesaplamak yerine, gradyanı verilerin alt kümeleri veya mini yığınları üzerinde hesaplar. Bu yaklaşım, ağırlık güncellemeleri için azaltılmış hesaplama ve çoklu eğitim durumları için gradyan hesaplamalarını paralel hale getirme yeteneği gibi çeşitli avantajlar sunar.

Mini partilerin kullanılması, gereksiz ağırlık kaybını önlemeye yardımcı olur. Tüm veri kümesini temsil eden mini gruplara sahip olmak ve tek bir sınıftan tüm örneklere sahip olmak gibi karakteristik olmayanlardan kaçınmak önemlidir. Tam gradyan algoritmaları mevcut olsa da, hesaplama verimliliği nedeniyle genellikle büyük ve yedekli eğitim setleri için mini toplu öğrenme tercih edilir.

Temel mini toplu gradyan iniş öğrenme algoritması, bir başlangıç öğrenme oranını tahmin etmeyi ve ağın performansını izlemeyi içerir. Hata kötüleşir veya dalgalanırsa, öğrenme oranı azalır. Hata çok yavaş düşerse, öğrenme oranı arttırılabilir. Bu gözlemlere dayalı olarak öğrenme oranının ayarlanmasının otomatikleştirilmesi faydalıdır. Öğrenmenin sonuna doğru, mini parti gradyanlarının neden olduğu ağırlıklardaki dalgalanmaları yumuşatmak için öğrenme oranını azaltmak genellikle yararlıdır. Doğrulama setleri, öğrenme hızının ne zaman azaltılacağını değerlendirmek ve hatanın sürekli olarak azalmanın ne zaman duracağını belirlemek için kullanılır.

Öğrenme oranını dikkatli bir şekilde ayarlayarak ve eğitim süreci boyunca ayarlayarak, mini toplu gradyan iniş, yedekli veri kümeleri üzerinde büyük sinir ağlarını eğitmek için etkili bir yaklaşım sağlar.

Ek olarak, sinir ağları için iki ana öğrenme algoritması türü olduğunu belirtmekte fayda var: tam gradyan algoritmaları ve mini toplu algoritmalar. Tam gradyan algoritmaları, gradyanı tüm eğitim durumlarını kullanarak hesaplar ve öğrenmeyi hızlandırmak için çeşitli optimizasyon tekniklerine izin verir. Bununla birlikte, düzgün doğrusal olmayan işlevler için geliştirilen bu yöntemler, çok katmanlı sinir ağlarıyla etkin bir şekilde çalışmak için modifikasyonlar gerektirebilir.

Öte yandan, mini-batch öğrenme, oldukça fazla ve büyük eğitim setleri için avantajlıdır. Mini partilerin nispeten büyük olması gerekebilir, ancak hesaplama verimliliği sunarlar. Mini kümelerin kullanımı, grafik işleme birimleri (GPU'lar) gibi modern işlemcilerin yeteneklerinden yararlanarak, birden çok eğitim durumu için eş zamanlı olarak gradyanların paralel olarak hesaplanmasına olanak tanır.

Eğitim süreci boyunca, öğrenme oranı ile bir denge kurmak önemlidir. Öğrenme hızında ayarlamalar, ağın performansına ve hatanın gözlenen davranışına göre yapılmalıdır. Öğrenmenin sonuna doğru, öğrenme hızının düşürülmesi, mini toplu gradyanların neden olduğu dalgalanmaları yumuşatarak iyi bir uzlaşma olan son ağırlık setinin elde edilmesine yardımcı olabilir.

Doğrulama setleri, ağın ilerlemesinin izlenmesinde çok önemli bir rol oynar. Hatayı ayrı bir doğrulama setinde ölçerek, hatanın sürekli olarak azalmayı durdurup durdurmadığı değerlendirilebilir ve öğrenme oranını ayarlamak için uygun süre belirlenebilir. Bu doğrulama örnekleri, eğitim veya son testler için kullanılmaz.

Mini toplu gradyan iniş öğrenme algoritması, fazlalık veri kümeleri üzerinde büyük sinir ağlarını eğitmek için pratik ve verimli bir yaklaşım sağlar. Öğrenme oranının dikkatli bir şekilde ayarlanması, ağın performansının doğrulama setleri kullanılarak izlenmesi ve temsili mini partilerin kullanılması, başarılı eğitim sonuçlarına katkıda bulunur.

Lecture 6.1 — Overview of mini batch gradient descent [Neural Networks for Machine Learning]
Lecture 6.1 — Overview of mini batch gradient descent [Neural Networks for Machine Learning]
  • 2016.02.04
  • www.youtube.com
For cool updates on AI research, follow me at https://twitter.com/iamvriad.Lecture from the course Neural Networks for Machine Learning, as taught by Geoffre...
Neden: