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

 

3. Ders: Kodlayıcılar için Pratik Derin Öğrenme 2022



3. Ders: Kodlayıcılar için Pratik Derin Öğrenme 2022

Bu video, kodlayıcılar için pratik derin öğrenmeye bir giriş sağlar. Matris çarpımı ve gradyanlarının temellerini kapsar ve köpek ve kedi ırklarının olasılığını tahmin etmek için derin bir öğrenme modelinin nasıl kullanılacağını gösterir. Bu video, kodlayıcılar için derin öğrenmeye kısa bir giriş sağlar ve matris çarpımı için sezgisel bir his elde etmenin nasıl uzun zaman alabileceğine dair bir tartışma içerir. Bir sonraki ders, metin verilerini almak ve nesrine dayanarak tahminler yapmakla ilgili olan doğal dil işlemeye odaklanacak.

  • 00:00:00 Bu ders, matris çarpımlarını ve gradyanları kapsar ve matematiğe daha yatkın öğrenciler içindir. Kurs ayrıca sıfırdan bir Linux kutusu kurmaya ilişkin bir "Sıfır Dersi" içerir.

  • 00:05:00 Bu haftanın videosunda, derin öğrenmeyle ilgili farklı projeler oluşturan beş öğrenci yer alıyor. Bir öğrenci bir Marvel detektörü, bir başkası bilgisayarın her zaman kaybettiği bir oyun, bir başkası ortalama sıcaklıkları tahmin etmek için bir uygulama, bir başkası bir sanat hareketi sınıflandırıcısı ve son olarak bir öğrenci bir redaksiyon detektörü yarattı.

  • 00:10:00 Bu video, farklı platformların ve derin öğrenme kitaplıklarının kullanımı da dahil olmak üzere kodlayıcılar için pratik derin öğrenmeyi kapsar. Bir modelin nasıl eğitileceğini ve bir üretim ortamına nasıl dağıtılacağını kapsar.

  • 00:15:00 Bu derste öğrenci, derin öğrenmenin nasıl çalıştığını ve farklı derin öğrenme modellerinin nasıl kullanılacağını açıklar. Ayrıca köpek ve kedi ırklarının olasılığını tahmin etmek için derin bir öğrenme modelinin nasıl kullanılacağını gösteriyor.

  • 00:20:00 Bu videoda bir derin öğrenme modeli gösterilmektedir. Model, her biri kod ve parametreler içeren katmanlardan oluşur. Model esnektir ve verilerdeki kalıpları tanımak için eğitilebilir.

  • 00:25:00 Bu derste eğitmen, bir fonksiyonun kısmi uygulamasını kullanarak bir veri kümesine uyacak bir fonksiyonun nasıl oluşturulacağını gösterir. Daha sonra fonksiyonun nasıl çizileceğini ve fonksiyonun katsayılarının verilere daha iyi uyması için nasıl ayarlanacağını gösterir.

  • 00:30:00 Bu video, bir bilgisayarın bir kayıp fonksiyonu kullanarak değerleri tahmin etme becerisinin nasıl geliştirileceğini açıklar. Yazar, kaydırıcıları grafik kaydırıcı tabanlı bir model üzerinde hareket ettirerek ve daha iyiye mi yoksa daha kötüye mi gittiğini görmek için kayıp fonksiyonunu kontrol ederek bunun nasıl yapılacağını gösterir. Pytorch, gradyanı sizin için otomatik olarak hesaplayarak süreci hızlı ve kolay hale getirebilir.

  • 00:35:00 Bu videoda, Pytorch programcısı ikinci dereceden bir denklemin katsayılarını ayarlamak için gradyan fonksiyonunun nasıl kullanılacağını açıklıyor. Gradyan işlevi, uygulandığı eğrinin eğiminin negatifini döndürür.

  • 00:40:00 Bu video, Pytorch kullanarak bir derin öğrenme modelinin nasıl oluşturulacağını açıklar. Model, gradyan iniş kullanılarak optimize edilir ve nihai katsayılar, rectified_linear() matematiksel işlevi tarafından belirlenir.

  • 00:45:00 Bu videoda Jeremy, derin öğrenme modellerinde parametreleri optimize etmek için gradyan inişinin nasıl kullanılacağını açıklıyor. Bu, gerçek hayatta modelleri eğitmek için kullanılan tekniğin aynısıdır.

  • 00:50:00 Bu YouTube videosu, kodlayıcılar için pratik derin öğrenmeyi ve doğruluk ve hız için eğitim modellerini nasıl uygulayacağınızı kapsar. İyi ayarlanmış, doğru bir modelle başlamanızı ve doğruluğun gelişip gelişmediğini görmek için kademeli olarak daha fazla veri eklemenizi önerir.

  • 00:55:00 Bu videoda yazar, türevleri kullanarak bir fonksiyonun gradyanını nasıl hesaplayacağını tartışıyor. Yazar, gradyan boyunca çok uzağa sıçramayı ve sapmayı önlemek için gradyanı öğrenme oranı adı verilen küçük bir sayı ile çarpmanızı önerir.

  • 01:00:00 Bu derste eğitmen, gerçek veriler üzerinde derin öğrenme hesaplamaları yapmak için matris çarpımının nasıl yapıldığını gösterir. Bunu yapmanın kolay bir yolunu sağlayan bir web sitesi sağlıyor.

  • 01:05:00 Konuşmacı, gerçek Titanic'teki yolcuların hayatta kalıp kalamayacağını tahmin etmek için derin öğrenmenin nasıl kullanılacağını açıklıyor. Önce tahminle ilgili olmayan sütunları kaldırırlar ve ardından her satırı bağımlı değişkene karşılık gelen bir katsayı ile çarparlar. Ardından, "Southampton'da gemiye bindiler mi?" Adlı bir sütun oluştururlar. ve "Cherbourg'da gemiye bindiler mi?" ve bunları ikili kategorik değişkenlere dönüştürün. Son olarak, tüm katsayıların ortalamasını alırlar ve bunu bağımlı değişkeni tahmin etmek için kullanırlar.

  • 01:10:00 Bu ders, doğrusal bir regresyon kullanarak derin öğrenmenin kodlama problemlerine nasıl uygulanacağını açıklar. İlk olarak, veriler normalleştirilir ve daha eşit bir şekilde dağıtılması için log-dönüştürülür. Daha sonra katsayılar, Excel'de bir SumProduct işlevi kullanılarak hesaplanır. Son olarak, kayıp fonksiyonunu optimize etmek için gradyan iniş kullanılır.

  • 01:15:00 Bu videoda Microsoft Excel kullanılarak sıfırdan bir derin öğrenme modeli oluşturulmaktadır. Model, hayatta kalma oranlarını tahmin etmede bir regresyondan daha iyi performans gösterir, ancak daha yavaştır ve uygulanması daha zahmetlidir. işlemi hızlandırmak için matris çarpımı kullanılır.

  • 01:20:00 Bu video, kodlayıcılar için derin öğrenmeye kısa bir giriş sağlar ve matris çarpımı için sezgisel bir his edinmenin nasıl uzun zaman alabileceğine dair bir tartışma da içerir. Bir sonraki ders, metin verilerini almak ve nesrine dayanarak tahminler yapmakla ilgili olan doğal dil işlemeye odaklanacak.

  • 01:25:00 Bu video, derin öğrenmenin İngilizce dışındaki dillerde sınıflandırma için nasıl kullanılacağına ilişkin adım adım bir kılavuz sağlar.

  • 01:30:00 Bu videoda sunum yapan kişi, doğrulama kümelerinin ve metriklerin derin öğrenmedeki önemini tartışıyor.
Lesson 3: Practical Deep Learning for Coders 2022
Lesson 3: Practical Deep Learning for Coders 2022
  • 2022.07.21
  • www.youtube.com
00:00 Introduction and survey01:36 "Lesson 0" How to fast.ai02:25 How to do a fastai lesson04:28 How to not self-study05:28 Highest voted student work07:56 P...
 

4. Ders: Kodlayıcılar için Pratik Derin Öğrenme 2022



4. Ders: Kodlayıcılar için Pratik Derin Öğrenme 2022

Bu video, Coders 2022 yarışması için bir derin öğrenme modelinin nasıl oluşturulacağını açıklar. Yazar, bir doğrulama setinin nasıl oluşturulacağını, modelinizin performansını test etmek için rekabet verilerinin nasıl kullanılacağını ve gerçek dünya ayarlarında aşırı uyumdan nasıl kaçınılacağını açıklamaktadır. Bu videoda Jeremy, iki değişken arasındaki ilişkiyi ölçmek için Pearson korelasyon katsayısının nasıl kullanılacağını ve fast.ai öğrenen gibi davranan bir model yetiştirmek için Pytorch'un nasıl kullanılacağını açıklıyor. Ayrıca NLP teknikleri tarafından üretilen tahminlerle ilgili bir sorunu ve bunun bir sigmoid işlevi kullanılarak nasıl çözülebileceğini tartışıyor.

  • 00:00:00 Bu video, fast.ai'den farklı bir kitaplık kullanarak önceden eğitilmiş bir doğal dil işleme modelinde nasıl ince ayar yapılacağını açıklar.

  • 00:05:00 Bu video, Coders 2022 için Uygulamalı Derin Öğrenme algoritması ULMFiT'i kapsar. ULMFiT, ilk olarak bir fast.ai kursunda sunulan bir makine öğrenimi algoritmasıydı. ULMFiT daha sonra yazar tarafından akademik bir makaleye dönüştürüldü. Wikipedia ve IMDB film incelemeleri üzerine eğitim aldıktan sonra, algoritma bir incelemenin duyarlılığını %70 doğrulukla tahmin edebildi.

  • 00:10:00 Bu derste Jeremy, makine öğrenimine yönelik Transformers maskeli dil modeli yaklaşımının temellerini açıkladı. Bu yaklaşımın ULMFiT yaklaşımından daha popüler olduğunu ve trafo modelinde beş katman olduğunu kaydetti. John, bir sonraki kelimeyi tahmin eden bir modelden sınıflandırma için kullanılabilecek bir modele nasıl geçileceği hakkında bir soru sordu. Jeremy, ilk katmanlarda kenar algılayıcılara ve gradyan algılayıcılara ihtiyacınız olacağını ve son katmanda tahmin ettiğiniz her kategori için aktivasyonların olacağını söyledi. Bu modeli yavaş yavaş sonuna yeni bir rasgele matris ekleyerek eğitebileceğinizi söyledi.

  • 00:15:00 Kaggle yarışması "ABD Patenti Cümleden Cümle Eşleştirme Yarışması", hangi çapa ve hedef çiftlerinin aynı şeyden bahsettiğini otomatik olarak belirleyebilen bir model gerektiriyor. Bu videoda sunum yapan kişi, NLP tekniklerinden yararlanmak için verileri bir sınıflandırma problemine dönüştürmeyi öneriyor.

  • 00:20:00 Bu video, virgülle ayrılmış değer (CSV) biçiminde zaten depolanmış bir veri kümesiyle çalışarak derin öğrenmenin sınıflandırma için pratik bir şekilde nasıl kullanılacağını açıklar. Video ayrıca verileri okumak için pandaların nasıl kullanılacağını da kapsar.

  • 00:25:00 Bu video, derin öğrenme için dört kitaplığın kullanımını kapsar - numpy, matplotlib, pandalar ve pytorch. Yazar, bu kitaplıklara aşina değilseniz Wes McKinney'nin "Veri Analizi için Python" kitabını okumanızı önerir. Bir sinir ağını eğitmenin ilk adımı, verileri tokenize etmek ve ikinci adım, ağı eğitmektir.

  • 00:30:00 Bu videoda sunum yapan kişi, bir metnin nasıl belirteçlere dönüştürüleceğini ve bir Hugging Face "veri kümesi" oluşturmak için belirteçlerin nasıl sayısallaştırılacağını açıklıyor. Sunum yapan kişi, belirteçleştirme için önceden eğitilmiş bir model kullanılmasını önerir ve mevcut farklı modellerden bazılarını açıklar.

  • 00:35:00 Bu videoda sunum yapan kişi, bir cümleyi simgelemek için belirteç oluşturucunun nasıl kullanılacağını ve simgelerin sayılara nasıl dönüştürüleceğini açıklıyor. Veri seti, orijinal veri seti ile aynı olacaktır, ancak belirteç haline getirilmiş veri seti, belirteç oluşturucu nedeniyle farklı olacaktır.

  • 00:40:00 Video, derin öğrenmeye olanak sağlamak için metin dizilerinin sayılara nasıl dönüştürüleceğini tartışıyor ve bilgi sağlandığı sürece belirli bir formatı takip etmenin gerekli olmadığını açıklıyor. Bir alan özellikle uzunsa, dönüştürücü yaklaşımı kullanmak faydalı olabilir.

  • 00:45:00 Bu videoda yazar, makine öğrenimi için ayrı eğitim, doğrulama ve test setlerine sahip olmanın önemini açıklıyor. Bir polinom regresyonunun nasıl çizileceğini gösterirler ve yetersiz uyum ile aşırı uyum arasındaki farkı gösterirler.

  • 00:50:00 Video, bir derin öğrenme modeli için nasıl iyi bir doğrulama seti oluşturacağınızı ve modelinizin performansını test etmek için rekabet verilerini nasıl kullanacağınızı açıklar. Ayrıca, gerçek dünya ortamlarında fazla uydurmanın nasıl önleneceğini de tartışır.

  • 00:55:00 Bu videoda derin öğrenmeyi ve Coders 2022 yarışmaları için model oluşturmayı öğreniyoruz. Bir doğrulama setinin, modeli eğitmek için kullanılmayan bir dizi görüntü olduğunu ve bir test setinin, doğruluğu ölçmek için kullanılan başka bir doğrulama seti olduğunu öğreniyoruz. Ayrıca iki test seti olduğunu öğreniyoruz - yarışma sırasında skor tablosunda gösterilen ve yarışma bitene kadar gösterilmeyen ikinci bir test seti.

  • 01:00:00 "Pearson korelasyon katsayısı", iki değişkenin ne kadar benzer olduğunu ölçmek için yaygın olarak kullanılan bir ölçüdür. Tahminleriniz gerçek değerlere çok benziyorsa “Pearson korelasyon katsayısı” yüksek olacaktır.

  • 01:05:00 Bu 1 dakikalık video, iki değişken arasındaki ilişkiyi ölçmek için Pearson korelasyon katsayısının nasıl kullanılacağını açıklıyor. Korelasyon katsayısı, iki değişkenin ne kadar yakından ilişkili olduğunun bir ölçüsüdür ve iki değişken arasındaki ilişkinin gücünü değerlendirmek için kullanılabilir. Korelasyon katsayısı, bir dağılım grafiği kullanılarak görselleştirilebilir ve kullanıldığı veri setini değerlendirmek için yararlı olabilir.

  • 01:10:00 Bu videoda sunum yapan kişi, bir derin öğrenme modelinin nasıl doğru şekilde eğitileceğini tartışıyor. Korelasyon, aykırı değerler ve verilerin düzgün bir şekilde nasıl bölüneceği gibi konuları kapsarlar. Daha sonra fast.ai'de bir "öğrenci" ile modelin nasıl eğitileceğini ve aynı anda kaç satırın işlendiğini kontrol etmek için "parti boyutu" ve "dönemlerin" nasıl kullanılacağını gösterirler.

  • 01:15:00 Hugging Face dönüştürücüler, farklı görevler için çeşitli öğrenme oranları sağlar ve önceden eğitilmiş bir modelden dizileri sınıflandırmak için uygun bir model sağlar. Ayrıca verilerdeki aykırı değerleri de belirleyebilir.

  • 01:20:00 Bu derste eğitmen, bir fast.ai öğrenicisi gibi davranan bir model yetiştirmek için Pytorch'u nasıl kullanacağını açıklıyor. Aykırı değerlerin asla silinmemesi gerekse de araştırılabileceğini ve gerekirse düzeltilebileceğini belirtiyor.

  • 01:25:00 Derin öğrenme, birçok uygulama alanında kullanılan güçlü bir teknolojidir. Nispeten yeni başlayanlar için uygundur ve doğal dil işleme (NLP) alanı en büyük fırsatların olduğu yerdir. Derin öğrenme NLP'sinin olası kullanımlarından biri, sosyal medya için bağlama uygun metin oluşturmaktır; bu, insanların dünyayı nasıl gördüklerine ilişkin çıkarımlara sahip olabilir.

  • 01:30:00 Bu videoda John, makine öğrenimi gibi NLP tekniklerinin belirli bir bakış açısı lehine önyargılı metin oluşturmak için nasıl kullanılabileceğini açıklıyor. Video ayrıca NLP teknikleri tarafından üretilen tahminlerle ilgili bir sorunu ve bunun bir sigmoid işlevi kullanılarak nasıl çözülebileceğini tartışıyor.
Lesson 4: Practical Deep Learning for Coders 2022
Lesson 4: Practical Deep Learning for Coders 2022
  • 2022.07.21
  • www.youtube.com
00:00:00 - Using Huggingface00:03:24 - Finetuning pretrained model00:05:14 - ULMFit00:09:15 - Transformer00:10:52 - Zeiler & Fergus00:14:47 - US Patent Phras...
 

5. Ders: Kodlayıcılar için Pratik Derin Öğrenme 2022



5. Ders: Kodlayıcılar için Pratik Derin Öğrenme 2022

Bu video, derin öğrenme kullanılarak doğrusal bir modelin nasıl oluşturulacağı ve eğitileceği hakkında bir eğitim sağlar. Video, belirli bir işlev içindeki değişkenlerin değerlerini değiştiren yerinde işlemleri tartışarak başlar. Ardından video, geriye doğru gradyan iniş kullanarak doğrusal bir model için kaybın nasıl hesaplanacağını gösterir. Son olarak video, doğrusal bir model içinde katsayıları başlatan ve güncelleyen bir işlev sağlar. Video, işlevin nasıl çalıştırılacağını ve kaybın nasıl yazdırılacağını göstererek sona erer. Bu video, bir veri kümesindeki belirli bir sütun için en iyi ikili bölmenin nasıl hesaplanacağını açıklar. Bu, karşılaştırma için bir temel model sağladığından, özellikle makine öğrenimi yarışmaları için kullanışlıdır.

  • 00:00:00 Bu ders, Jupyter Notebook kullanarak doğrusal modeli ve sinir ağını sıfırdan kapsar. Amaç, kodun arkasındaki mantığı anlamak ve beklenen çıktıyı elde etmektir.

  • 00:05:00 Video, Kaggle'ın nasıl kurulacağı ve ortam değişkeninin nasıl kullanılacağı, pandalarla CSV dosyalarının nasıl okunacağı ve eksik değerlerin nasıl uygulanacağı gibi konuları kapsayan kodlayıcılar için pratik derin öğrenmeyi tartışıyor. Ayrıca mod ve veri çerçevelerini doldurmak için yöntemlerin ve indirgemelerin nasıl kullanılacağı gibi pandalardaki temel kavramları da kapsar.

  • 00:10:00 Bu derste Jeremy, pandalarda fillna() yöntemini kullanarak bir veri kümesindeki eksik değerlerin nasıl yükleneceğini anlatıyor. Çoğu durumda bu "aptalca" yolun yeterince iyi olacağını ve yaygın yöntemlerin birden çok kez açıklanmaması için veri setimizin temellerini bilmenin önemli olduğunu açıklıyor. Javier, modelde kullanılmayan alanları çıkarmanın artılarını ve eksilerini soruyor.

  • 00:15:00 Bu derste, eğitmen "kukla değişkenler" kavramını ve kategorik verileri daha mantıklı bir şekilde temsil etmek için nasıl kullanılabileceğini tanıtır. Ayrıca verilerdeki tüm sayısal ve sayısal olmayan değişkenlerin nasıl tanımlanacağını da gösteriyor.

  • 00:20:00 Bu videoda eğitmen, veri çerçevesindeki bir sütunun nasıl tensöre dönüştürüleceğini ve bu Tensörlerin doğrusal bir model ve sinir ağı eğitmek için nasıl kullanılacağını gösterir. Matris ve eleman bazında çarpma yaparken sade Python yerine Pytorch'un nasıl kullanılacağını da gösteriyor.

  • 00:25:00 Bu videoda, eğitmen Python'da bir matris-vektör ürününün nasıl gerçekleştirileceğini tartışıyor. Bir matrisi bir vektörle çarpmanın bir örneğini veriyor ve sonucun ilginç olduğunu çünkü matematikçilerin aynı işlemi matris cebirini kullanarak da yapabildiklerini açıklıyor. Ayrıca, tekrarlanabilir sonuçlar elde etmek için sözde rastgele bir sekans başlatmanın önemli olduğunu açıklıyor.

  • 00:30:00 Yazar bu videoda yayıncılığın nasıl çalıştığını ve neden yararlı olduğunu açıklıyor. Yayın, her bir değerin boyutunu dikkate alarak birden fazla değerin birlikte çarpılmasına izin veren bir tekniktir. Bu, GPU'da çalıştırmak için daha kısa ve daha hızlı kod sağlar.

  • 00:35:00 Bu video, gradyan iniş kaybını hesaplayarak derin öğrenme modellerini nasıl optimize edeceğinizi açıklar. Yazar, kaybı hesaplamak için bir işlev oluşturarak ve ardından işlevi bir Pytorch oturumuna aktararak bunun nasıl yapılacağını gösterir.

  • 00:40:00 Bu YouTube videosu, derin öğrenme kullanılarak doğrusal bir modelin nasıl oluşturulacağı ve eğitileceği hakkında bir eğitim sağlar. Video, belirli bir işlev içindeki değişkenlerin değerlerini değiştiren yerinde işlemleri tartışarak başlar. Ardından video, geriye doğru gradyan iniş kullanarak doğrusal bir model için kaybın nasıl hesaplanacağını gösterir. Son olarak video, doğrusal bir model içinde katsayıları başlatan ve güncelleyen bir işlev sağlar. Video, işlevin nasıl çalıştırılacağını ve kaybın nasıl yazdırılacağını göstererek sona erer.

  • 00:45:00 Bu 1 dakikalık video, Titanik'ten kimin sağ çıktığını tahmin eden bir derin öğrenme modeli için doğruluk işlevinin nasıl oluşturulacağını tartışıyor. İşlev, sayılar çok büyüdüğünde veya çok küçüldüğünde bire asimptot yapan matematiksel bir işlev olan sigmoid işlevine dayanır.

  • 00:50:00 Bu videoda John, bir sigmoid işlevi kullanarak bir sinir ağının nasıl optimize edileceğini açıklıyor. Ayrıca, fast.ai kullanılarak kategori bloğuna bağlı değişkenlerin nasıl ele alınacağını da açıklıyor.

  • 00:55:00 Yazar bu videoda Pytorch kullanarak Python'da sıfırdan bir modelin nasıl oluşturulacağını ve modelin Kaggle'a nasıl gönderileceğini açıklıyor. Yazar, "matris çarpma" operatörünün matris çarpma anlamına geldiğinden, ancak Python'un operatörün bir uygulamasıyla gelmediğinden bahseder.

  • 01:00:00 Bu videoda sunum yapan kişi, Pytorch kullanarak bir sinir ağının nasıl oluşturulacağını açıklıyor. İlk adım, ilk sütunun katsayılarının toplamından oluşan bir matris oluşturmaktır. Bu matris daha sonra eğitim veri vektörü ile çarpılır. İkinci adım, gizli aktivasyonlarla ikinci bir matris oluşturmaktır. Bu matris daha sonra ilk sütunun katsayıları ile çarpılır. Son adım, vektörleri merkezileştirmek ve sinir ağını eğitmektir.

  • 01:05:00 Bu videoda Jeremy, derin öğrenmeyi kullanarak bir sinir ağının nasıl eğitileceğini açıklıyor. Ağı eğitmek için önce gradyanları hesaplaması ve katsayıları başlatması gerektiğini açıklıyor. Ardından, katsayıları gradyanlardan çıkaran update_coeffs()'i yürütür. Son olarak, ağı eğitir ve sonuçları doğrusal bir modelle karşılaştırır.

  • 01:10:00 Bu video, derin öğrenme modellerinin nasıl başlatılacağını, katsayıların nasıl güncelleneceğini ve tüm katmanlar arasında nasıl döngü kurulacağını açıklar. Ayrıca, derin öğrenmenin neden küçük veri kümelerinde o kadar etkili olmayabileceğini ve derin öğrenme modelleriyle nasıl iyi sonuçlar alınabileceğini tartışır.

  • 01:15:00 Bu derste yazar, derin öğrenme çerçevesinin nasıl kullanılacağını öğretir ve sıfırdan yapmaktan çok daha kolay olduğunu gösterir. Yazar ayrıca Pandalar ile özellik mühendisliği hakkında bir eğitim sunuyor.

  • 01:20:00 Bu videoda eğitmen, derin bir öğrenme modeli için bir öğrenme oranı önermek üzere fastai kitaplığının nasıl kullanılacağını gösteriyor. Birden fazla çağın nasıl çalıştırılacağını gösteriyor ve modelin tahminlerini diğer iki modelin tahminleriyle karşılaştırıyor. Son olarak, satırlar üzerinden ortalaması alınan beş tahminlik bir dizi oluşturmak için topluluk işlevinin nasıl kullanılacağını gösteriyor.

  • 01:25:00 Bu videoda John, rastgele ormanların nasıl çalıştığını ve neden popüler bir makine öğrenimi algoritması olduğunu açıklıyor. Ayrıca, gerekli tüm modülleri içe aktarmak için kullanışlı bir kısayolun nasıl kullanılacağını da gösteriyor.

  • 01:30:00 Bu videoda Pandas, derin öğrenmenin nasıl çalıştığını ve kodlama problemlerine nasıl uygulanacağını açıklıyor. Rastgele orman algoritması tanıtıldı ve bu tekniğin kategorik bir değişken kullanılarak yapılan tahminlerin doğruluğunu artırmak için kullanılabileceği gösterildi.

  • 01:35:00 Bu 1 paragraflık özet, iki veri grubunun standart sapma puanlarını toplamanın basit bir yöntemini kullanarak bir ikili bölmenin nasıl puanlanacağını açıklar. En iyi ayrılma noktası, en küçük indeksi en küçük puana sahip ayrılma noktaları listesine göre hesaplayarak bulunur.

  • 01:40:00 Bu derste eğitmen, bir veri kümesindeki belirli bir sütun için en iyi ikili bölmenin nasıl hesaplanacağını açıklar. Bu, karşılaştırma için bir temel model sağladığından, özellikle makine öğrenimi yarışmaları için kullanışlıdır.
Lesson 5: Practical Deep Learning for Coders 2022
Lesson 5: Practical Deep Learning for Coders 2022
  • 2022.07.21
  • www.youtube.com
00:00:00 - Introduction00:01:59 - Linear model and neural net from scratch00:07:30 - Cleaning the data00:26:46 - Setting up a linear model00:38:48 - Creating...
 

Ders 6: Kodlayıcılar için Pratik Derin Öğrenme 2022



Ders 6: Kodlayıcılar için Pratik Derin Öğrenme 2022

Bu YouTube videosu, kodlayıcılar için derin öğrenmeye nasıl başlanacağı konusunda bir kılavuz sağlar. Ana odak noktası, kodlayıcılar için uygulamalı derin öğrenme olup, bir yarışmanın nasıl kurulacağına, bir doğrulama setinin nasıl alınacağına ve hızlı bir şekilde nasıl yineleneceğine ilişkin ipuçları içerir. Video ayrıca, özellik önemi ve kısmi bağımlılık grafiklerinin önemini ve bunların bir makine öğrenimi modeli kullanılarak nasıl oluşturulacağını tartışıyor.

Bu video, kodlama projelerinin doğruluğunu artırmak için derin öğrenmenin nasıl kullanılacağına dair bir genel bakış sağlar. Veri kümelerinin genellikle çok çeşitli giriş boyutlarına ve en boy oranlarına sahip olabileceğini ve bunun da dikdörtgenlerle doğru temsiller oluşturmayı zorlaştırdığını açıklar. Bunun yerine, çoğu durumda iyi çalıştığı tespit edilen kare temsillerin kullanılmasını önerir.

  • 00:00:00 Bu derste yazarlar, Titanik'te hangi erkeklerin hayatta kalacağını tahmin etmek için bir karar ağacının nasıl oluşturulacağını gösteriyor.

  • 00:05:00 Video, en fazla dört yaprak düğümü olan bir karar ağacı sınıflandırıcısının nasıl oluşturulacağını tartışıyor. Ağaç otomatik olarak oluşturulabilir ve Gini katsayısını hesaplamak için kod sağlanır. Karar ağacının ortalama mutlak hatası 0,407 olarak hesaplanmıştır.

  • 00:10:00 Bu video, bir Kaggle yarışmasından alınan verileri kullanarak yolcu ücreti sınıflandırmalarını tahmin etmek için bir karar ağacının nasıl oluşturulacağını açıklar. Karar ağaçları etkilidir ve ön işleme gerektirmez, bu da onları tablo verileri için iyi bir seçenek haline getirir.

  • 00:15:00 Leo Breiman'ın "torbalama" tekniği, herhangi bir bağımsız modelden daha iyi olan çok sayıda tarafsız model oluşturmak için kullanılır. Bu, her karar ağacı oluşturulduğunda verilerin bir alt kümesini rastgele seçerek ve bu verileri modeli eğitmek için kullanarak yapılır.

  • 00:20:00 Bu derste, uygulaması basit ve küçük veri kümelerinde iyi performans gösteren bir makine öğrenimi algoritması olan Random Forest'ı nasıl oluşturacağımızı öğrendik. Eğitim verilerinde hangi özelliklerin en önemli olduğunu belirlememize yardımcı olması için özellik önem grafiklerinin nasıl kullanılacağını da gösterdik.

  • 00:25:00 John bu videoda, Rastgele Ormanların nasıl çalıştığı ve ağaç sayısını artırmanın neden her zaman daha iyi bir hata oranına yol açtığı da dahil olmak üzere derin öğrenmenin temellerini ele alıyor. Jeremy daha sonra Rastgele Ormanların bir doğrulama setine ihtiyaç duymadan büyük veri setlerinin sonuçlarını tahmin etmek için nasıl kullanılabileceğini açıklamaya devam ediyor.

  • 00:30:00 Video, bir makine öğrenimi modelinin eğitiminde kullanılmayan veriler üzerinde yapılan tahminlerin doğruluğunun bir ölçüsü olan Torba Dışı Hatası veya OOB hatasının nasıl hesaplanacağını açıklıyor. OOB hatasının yüksek olması, modelin verileri doğru bir şekilde tahmin etmediğini gösterir.

  • 00:35:00 Video, özellik önemi ve kısmi bağımlılık grafiklerinin önemini ve bunların bir makine öğrenimi modeli kullanılarak nasıl oluşturulacağını tartışıyor.

  • 00:40:00 Bu videoda Jeremy, Rastgele Orman modellerinin nasıl çalıştığını ve özellik önem grafiklerinin nasıl yorumlanacağını açıklıyor. Ayrıca Rastgele Orman modellerinin diğer açıklanabilirlik tekniklerinden daha güvenilir olduğundan bahseder.

  • 00:45:00 Rastgele Ormanlar, tahminlerde bulunma konusunda özellikle iyi olan bir makine öğrenimi algoritmasıdır. Ancak, daha fazla ağaç eklemek, modeli daha doğru hale getirecektir ve fazla uydurma bir sorun değildir. Gradient Boosting, Rastgele Ormanlara benzer bir makine öğrenimi algoritmasıdır, ancak bir ağaca tekrar tekrar sığdırmak yerine çok küçük ağaçlara uyar ve bu da çok az veri bölünmesine neden olur.

  • 00:50:00 Video, bir gradyan hızlandırma makinesinin (GBM) rastgele bir ormandan nasıl daha doğru olduğunu, ancak bir GBM ile aşırı uyum sağlayabileceğinizi açıklıyor. İzlenecek yol, bir Kaggle yarışmasının nasıl seçileceğini ve zirveye nasıl ulaşılacağını gösterir.

  • 00:55:00 Bu YouTube videosu, kodlayıcılar için derin öğrenmeye nasıl başlanacağı konusunda bir kılavuz sağlar. Ana odak noktası, kodlayıcılar için uygulamalı derin öğrenme olup, bir yarışmanın nasıl kurulacağına, bir doğrulama setinin nasıl alınacağına ve hızlı bir şekilde nasıl yineleneceğine ilişkin ipuçları içerir.

  • 01:00:00 Bu video, derin öğrenme modellerini eğitmek için FastKaggle'ın nasıl kullanılacağını açıklar. Boyut, en boy oranına bağlı olarak değişebileceğinden, görüntülerle çalışırken dikkatli olmanız gerektiğini açıklar. Videoda ayrıca "ezmek" adlı bir işlev kullanılarak görüntülerin nasıl yeniden boyutlandırılacağı da gösteriliyor.

  • 01:05:00 Bu videoda eğitmen, makine öğrenimi modellerinde verilerin nasıl göründüğünü hızlı bir şekilde görmek için hızlı yapay zeka kitaplığı show_batch()'in nasıl kullanılacağını tartışıyor. Hızlı eğitim performansı ve doğruluğu için resnet26d kullanılmasını önerir.

  • 01:10:00 Video, bir veri yükleyici ve modelin tahminlerini ve etiketlerini içeren bir CSV dosyası kullanarak bir derin öğrenme modelinin Kaggle'a bir dakikadan kısa sürede nasıl gönderileceğini gösterir.

  • 01:15:00 Sunucu, Kaggle'da halka açık not defterleri oluşturma stratejisini paylaşıyor; bu strateji, not defterlerini düzenli tutmak için gerektiğinde çoğaltmayı ve yeniden adlandırmayı içeriyor. Bu düşük teknolojili yaklaşımın kendisi için iyi çalıştığını ve genellikle bir seferde yalnızca bir not defteri gönderdiğini belirtiyor.

  • 01:20:00 Sunum yapan kişi, AutoML çerçeveleri ve rastgele ormanlar dahil olmak üzere derin öğrenme için farklı yöntemlere kısa bir genel bakış sağlar. Aşırı eğitim modellerinden kaçınmak için bir öğrenme oranı bulucu kullanılmasını ve mümkünse derin öğrenme için GPU'ların kullanılmasını önerir.

  • 01:25:00 Bu derste yazar, farklı bir evrişimli sinir ağı (CNN) mimarisi kullanarak bir Kaggle yarışmasında bir yinelemenin nasıl hızlandırılacağını açıklıyor. Ayrıca doğru CNN boyutunu seçmek için pratik bir kuralın nasıl kullanılacağını gösteriyor.

  • 01:30:00 Bu videoda sunum yapan kişi, kırpma ve dolgu dahil olmak üzere farklı ön işleme teknikleri kullanarak bir derin öğrenme modelinin performansının nasıl geliştirileceğini tartışıyor. Ayrıca, Test Süresi Büyütme'nin (TTA) bir görüntünün birden çok sürümünün ortalamasını alarak bir modelin performansını iyileştirebileceğini belirtiyor.

  • 01:35:00 Bu videoda Jeremy, derin öğrenmeyi kullanarak bir bilgisayarla görme modelinin doğruluğunun nasıl iyileştirileceğini tartışıyor. Modelin doğruluğunun, üzerinde eğitildiği görüntüleri değiştirerek geliştirilebileceğini belirtiyor ve bunun pandalar kullanılarak nasıl yapılacağına dair bir örnek sunuyor. Ayrıca, derin öğrenme algoritmalarının nasıl hızlı çalıştığını ve eğitim sürecini hızlandırmak için TTA'nın veya test süresi artırmanın nasıl kullanılacağını açıklıyor. Son olarak, Victor ve John'un sorduğu soruların bir özetini sunar.

  • 01:40:00 Bu videoda Jeremy, kodlama projelerinin doğruluğunu artırmak için derin öğrenmenin nasıl kullanılabileceğini açıklıyor. Veri kümelerinin genellikle çok çeşitli girdi boyutlarına ve en boy oranlarına sahip olabileceğini ve bunun da dikdörtgenlerle doğru temsiller oluşturmayı zorlaştırdığını belirtiyor. Bunun yerine, çoğu durumda iyi çalıştığı tespit edilen kare gösterimleri kullanmayı önerir.
Lesson 6: Practical Deep Learning for Coders 2022
Lesson 6: Practical Deep Learning for Coders 2022
  • 2022.07.21
  • www.youtube.com
00:00 Review02:09 TwoR model04:43 How to create a decision tree07:02 Gini10:54 Making a submission15:52 Bagging19:06 Random forest introduction20:09 Creating...
 

7. Ders: Kodlayıcılar için Pratik Derin Öğrenme 2022



7. Ders: Kodlayıcılar için Pratik Derin Öğrenme 2022

Pratik Derin Öğrenme for Coders 2022'nin 7. Dersinde Jeremy, daha büyük modeller için gereken belleği azaltarak derin öğrenme modellerinin nasıl ölçeklendirileceğini açıklıyor. Ağırlıkları her mini partinin her döngüsünde güncellemeyi değil, bunun yerine birkaç kez yapmayı içeren, daha büyük GPU'lara ihtiyaç duymadan daha büyük parti boyutlarının kullanılmasına izin veren, gradyan birikimi adı verilen bir numara gösteriyor. Ek olarak Jeremy, k-katlı çapraz doğrulamayı ve çapraz entropi kaybı adı verilen farklı bir kayıp fonksiyonunu kullanarak hem pirinç türünü hem de görüntüdeki hastalığı tahmin eden bir derin öğrenme modeli oluşturmayı tartışıyor. Genel olarak video, daha karmaşık derin öğrenme modelleri oluşturmak için pratik ipuçları ve püf noktaları sağlar.

Bu videoda konuşmacı, PyTorch'ta işbirlikçi filtreleme ve nokta ürünü kullanarak öneri sistemlerinin oluşturulmasını araştırıyor. Film derecelendirmelerinin matris çarpımı tahminini açıklıyor ve tahmin edilen derecelendirmelerin gerçek derecelendirmelerle ne kadar iyi eşleştiğinin bir ölçüsü olan kayıp fonksiyonunu hesaplıyor. Kukla değişkenlerle matris çarpanlarında hızlanmaya izin veren gömme kavramını tanıtıyor. Ardından konuşmacı, kullanıcı derecelendirmelerini ayırt etmek ve aşırı uydurmayı önlemek için matrise önyargı ve düzenlileştirmenin nasıl ekleneceğini açıklar. Son olarak, hiperparametre arama konusu tartışılarak doğru öneriler için ayrıntılı verilere duyulan ihtiyaç vurgulanır. Genel olarak, video, izleyiciler için pratik bir anlayış oluşturmak için karmaşık derin öğrenme kavramlarını parçalara ayırır.

  • 00:00:00 Bu bölümde eğitmen, modelleri daha da büyütmek için daha büyük modeller için gereken belleği azaltmayı içeren basit bir numara sunuyor. Daha büyük modeller kullanıldığında, daha fazla parametre, daha karmaşık özellikleri bulabilecekleri anlamına gelir ve böylece onları daha doğru hale getirir. Ancak, daha büyük modellerin bir dezavantajı vardır çünkü bunların aktivasyonları veya hesaplanması gereken gradyanları çok fazla GPU belleği kullanır ve kullanılabilir bellek yetersizse bir hata mesajına neden olur. Eğitmen, bu sorunun nasıl aşılacağını ve bir x-large modelinin Kaggle'ın 16 Gig GPU'sunda bile nasıl kullanılacağını açıklıyor.

  • 00:05:00 Videonun bu bölümünde Jeremy, Kaggle'da derin öğrenme modelleri çalıştırmanın pratikliklerini ve modellerin bellek kullanımını belirlemek için hızlı hileli yöntemlerin nasıl kullanılacağını tartışıyor. Daha büyük bir GPU satın alma ihtiyacını ortadan kaldırmak için model "cuda yetersiz bellek hatası" ile çökerse kullanılabilecek, gradyan birikimi adı verilen bir numara gösteriyor. Toplu iş boyutunu ve görüntü sayısını ayarlayarak, modelin öğrenme oranlarını etkilemeden mümkün olan en düşük bellek miktarını kullanması sağlanabilir.

  • 00:10:00 Bu bölümde konuşmacı, ağırlıkları her mini parti için her döngüde güncelleme değil, bunun yerine birkaç kez güncelleme fikri olan gradyan birikimi kavramını tartışıyor. Bu, gradyan birden fazla küçük parti üzerinde toplanabileceğinden, daha büyük GPU'lara ihtiyaç duymadan daha büyük parti boyutlarının kullanılmasına izin verir. Toplu normalleştirme kullanmayan mimariler için sonuçlar sayısal olarak aynıdır, ancak kullananlar için daha fazla oynaklık getirebilir. Genel olarak, gradyan birikimi, daha büyük modellerin eğitimi için önemli sonuçları olan basit bir fikirdir.

  • 00:15:00 Bu bölümde, Jeremy forumdan lr_find() ve gradyan birikimi ile ilgili soruları tartışıyor. lr_find() öğesinin veri yükleyicilerin grup boyutunu kullandığını ve gradyan birikiminin, farklı mimariler için en uygun boyutu bulmak üzere farklı gruplarla denemeler yapılmasına izin verdiğini açıklıyor. Jeremy, GPU'nuza sığabilecek en büyük parti boyutunu seçmenizi tavsiye ediyor, ancak her zaman en büyük parti boyutunu kullanmanın gerekli olmadığını belirtiyor. Temel kural, parti büyüklüğünü ikiye bölmek ve öğrenme oranını ikiye bölmektir. Son olarak, Jeremy, parti boyutunu istenen birikim değerine bölerek ve öğrenciyi oluştururken GradientAccumulation geri aramasını ileterek fastai'de gradyan birikiminin nasıl kullanılacağını gösteriyor ve 16GB'lık bir kartta birden fazla modeli eğitmesine olanak tanıyor.

  • 00:20:00 Bu bölümde sunum yapan kişi, önceden eğitilmiş sabit boyutlara sahip vit, swinv2 ve swin trafo modellerini kullanmayı tartışıyor. Bu soruna geçici bir çözüm bulmak için, son boyutun kare ve gerekli boyutta olması gerekir. Sunucu, bir mimariler sözlüğü ve ön işleme ayrıntıları kullanır, eğitim yolunu tüm görüntüleri kullanmaya geri döndürür ve her bir modeli eğitmek için her bir mimari ve dönüşüm boyutunu döngüye sokar. Eğitim betiği, daha sonra her hastalık için bir dizin listesi oluşturmak üzere torbalama yoluyla ortalaması alınan bir listeye eklenen tta tahminlerini döndürür. Sunum yapan kişi girişleri düzenli olarak göndererek sonuçlarını iyileştirdi ve skor tablosunda üst sıralarda yer almayı başardı.

  • 00:25:00 Bu bölümde Jeremy, k-katlamalı çapraz doğrulama kavramını ve onun birleştirme modelleriyle yaptığı şeye nasıl benzediğini tartışıyor. K-katlı çapraz doğrulamanın, verilerin beş alt kümeye bölündüğü yer olduğunu ve modellerin her bir alt kümede örtüşmeyen doğrulama kümeleriyle eğitildiğini ve bunların daha sonra birleştirildiğini açıklıyor. Kendi yönteminden potansiyel olarak daha iyi olsa da Jeremy, modellerin kolayca eklenmesine ve çıkarılmasına izin verdiği için birleştirmeyi tercih ediyor. Jeremy ayrıca gradyan birikimini ve gerçek dezavantajların ya da potansiyel sorunların nasıl olmadığını tartışıyor ve pahalı olanlardan ziyade daha az belleğe sahip daha ucuz grafik kartları almanızı tavsiye ediyor. Son olarak, Nvidia'nın şehirdeki GPU'lar için tek oyun olduğundan ve tüketici RTX kartlarının pahalı kurumsal kartlar kadar iyi olduğundan bahsediyor.

  • 00:30:00 Bu bölümde Jeremy, derin öğrenme için bir GPU'ya yatırım yapmanın faydalarını tartışıyor ve bulut bilişimde kullanımları nedeniyle pahalı olabileceklerini kabul ediyor. Ayrıca, 2. Bölümde ele alınacak olan daha büyük bir modelle aynı aktivasyonları üretmek için daha küçük bir modelin nasıl eğitileceğine de değiniyor. Videonun geri kalanı, bir görüntünün hem hastalığını hem de pirinç türünü tahmin eden bir model oluşturmaya odaklanıyor. , iki bağımlı değişkene sahip bir veri yükleyici gerektirir. Jeremy, birden çok bağımlı değişkene sahip bir yükleyici oluşturmak için DataBlock'un nasıl kullanılacağını açıklıyor ve girdi ve çıktı kategorileri arasında nasıl ayrım yapılacağını gösteriyor.

  • 00:35:00 Bu bölümde eğitmen, hem pirinç türünü hem de görüntüde bulunan hastalığı tahmin eden bir derin öğrenme modelinin nasıl oluşturulacağını açıklıyor. Bunu başarmak için get_y işlevi iki farklı etikete sahip bir dizi almalıdır. Biri hastalığı gösterdiği için üst dizinin adı, ikincisi ise çeşididir. Öğretmen, dosya adının veri çerçevesindeki konumu alan ve çeşitlilik sütununu döndüren bir işlev oluşturur. Son olarak, 20 şeyi öngören bir model oluştururlar: 10 hastalığın ve 10 çeşidin her birinin olasılığı. Hata oranı metriği, yeni veri kümesiyle çalışmak için iki yerine üç şeyi ele alacak şekilde değiştirilmelidir.

  • 00:40:00 Bu bölümde konuşmacı, bağımlı değişken bir kategori olduğunda çapraz entropi kaybı adı verilen farklı bir kayıp fonksiyonuna duyulan ihtiyacı açıklıyor. fastai'nin vision_learner'ı daha önce çapraz entropi kaybını tahmin edip kullanmışken, konuşmacı şimdi nasıl çalıştığını bir elektronik tablo yardımıyla ayrıntılı olarak açıklıyor. Beş kategoriye sahip bir modelin çıktısından başlayarak, konuşmacı softmax işlevini kullanarak model çıktılarının olasılıklara nasıl dönüştürüleceğini gösterir. Çıktılar olasılıklar olduğunda, tahmin edilen olasılıklar ile gerçek olasılıklar arasındaki farkı ölçmek ve modelin ne kadar iyi performans gösterdiğini belirlemek için çapraz entropi kaybı fonksiyonu kullanılır.

  • 00:45:00 Bu bölümde, softmax'ı ve önceden seçilen kategorilerden belirli bir şeyi tahmin etmek için nasıl kullanıldığını öğreniyoruz. Çapraz entropi kaybını hesaplamak için kullanılan formül, olasılıkların ve gerçek hedef değerlerin çarpımını ve ardından toplamı almayı içerir. Hesaplamaları hızlandırmak için softmax günlüğü kullanılır. Sonuç, çapraz entropi kaybını hesaplamak için her satır için toplanan tek bir olasılık değeridir.

  • 00:50:00 Bu bölümde, eğitmen ikili çapraz entropi kaybı fonksiyonunu ve bunun çoklu hedeflerle nasıl kullanılacağını açıklar. Pytorch'ın, bir sınıf ve bir işlev olmak üzere iki kayıp işlevi sürümüne sahip olduğunu ve bunların nasıl kullanılacağını gösterdiğini belirtiyor. Çok hedefli bir model oluştururken, görebilen öğrenici, on tanesi hastalığı ve on tanesi çeşitliliği tahmin etmek üzere yirmi çıktıya ihtiyaç duyar. Eğitmen bu modelin nasıl oluşturulacağını gösterir ve ardından onu eğitir. Genel olarak, bu model, ikinci hedef grubunun eklenmesi dışında önceki modelle aynıdır.

  • 00:55:00 Bu bölümde, bir modelin kayıp fonksiyonu aracılığıyla neyi tahmin ettiğini nasıl bildiğini öğreniyoruz. Girdi değerlerinin ilk on sütunu hastalık olasılığını tahmin eder ve ikinci on sütun çeşitlilik olasılığını temsil eder. Çapraz entropi kullanarak, bu iki değeri tahmin etmeye dayalı bir kayıp fonksiyonu oluşturmak için hem hastalık hem de çeşit hedef değerlerini hesaba katarız. Kayıp işlevi, ilk on sütun hastalık ve ikinci on sütun çeşitlilik için iyi tahminler yaptığında azalır ve katsayıları her sütunu etkili bir şekilde kullanmada daha iyi hale getirir. Eğitim dönemi boyunca hem hastalık hem de çeşitlilik tahminleri için hata oranlarını hesaplıyor ve izliyoruz. Çok hedefli bir model kullanarak daha uzun süre eğitim vermek, farklı hedeflerin tanınmasına yardımcı olan belirli özellikler nedeniyle bazen tek bir hedef modelden daha iyi hastalık tahmini ile sonuçlanabilir.

  • 01:00:00 Videonun bu bölümünde, konuşmacı birden çok şeyi tahmin eden modeller oluşturmanın faydalarını tartışıyor ve izleyicileri küçük veri kümeleri üzerinde modeller denemeye teşvik ediyor. Ayrıca, tavsiye sistemleri kavramını öğretmek için film derecelendirmelerinden oluşan bir veri kümesi kullanan İşbirlikçi Filtreleme Derin İnceleme not defterini de tanıtıyor. Bu tür verilerin tavsiye sistemleri gibi endüstrilerde yaygın olduğunu açıklıyor ve veri setini daha iyi anlamak için bir çapraz tablolama örneği sunuyor. Konuşmacı daha sonra bir sonraki not defterine geçmeden önce ara verir.

  • 01:05:00 Bu bölümde konuşmacı, işbirlikçi bir filtreleme veri kümesindeki boşlukların nasıl doldurulacağını açıklıyor. İşbirlikçi filtreleme, birçok kullanıcıdan toplanan verileri kullanarak bir kullanıcıya bir ürün önermeye yardımcı olur. Bir kullanıcının belirli bir filmi beğenip beğenmediğini anlamak için konuşmacı, vektör analizi yoluyla kullanıcı tercihlerinin karşılık gelen değerlerini ve film türünü çarpmak için bir yöntem önerir. Ancak, kullanıcılar veya filmler hakkında bize herhangi bir bilgi verilmediğinden, konuşmacı eksik veri noktalarını doldurmak için gizli faktörler oluşturmayı önerir. Konuşmacı, sözde gizli faktörleri kullanarak, korelasyonu bulmak ve hipotez oluşturmak için SGD kullanmayı önerir.

  • 01:10:00 Bu bölümde video, geçmişteki derecelendirmelerine göre kullanıcıların film derecelendirmelerini tahmin etmek için matris çarpımının nasıl kullanılacağını açıklar. Öğretici, filmler ve kullanıcılar için gizli faktörler için rasgele değerler atar ve derecelendirmeleri tahmin etmek için nokta çarpımı gerçekleştirir. Daha sonra bir kayıp fonksiyonu hesaplanır ve Veri Çözücü aracı kullanılarak optimizasyon gerçekleştirilir. Video, tahmin edilen puanların optimizasyondan sonra gerçek puanlarla karşılaştırılarak iyileştiğini gösteriyor. Benzer zevklere sahip kullanıcılara benzer filmlerin önerildiği matris tamamlama tekniği ve işbirlikçi filtreleme de tanıtılmaktadır.

  • 01:15:00 Bu bölümde video, PyTorch'ta işbirliğine dayalı filtreleme ve nokta ürünleri kullanmayı tartışıyor. İki vektör arasındaki açının kosinüsü korelasyona yaklaşabilir ve bunlar normalleştirildiğinde aynıdır. PyTorch'ta gerekli hesaplamaları açıklamak için Excel kullanılır. Video ayrıca, genellikle karmaşık bir matematiksel araç olarak düşünülen gömmelerin aslında bir şeyleri aramak için kullanılan diziler olduğunu da belirtiyor. Video, derin öğrenmeyi herkes için daha kolay anlaşılır hale getirmek için kafa karıştırıcı jargonu yıkmaya çalışıyor.

  • 01:20:00 Bu bölümde Jeremy, film derecelendirme verileriyle çalışmak için PyTorch'ta işbirliğine dayalı filtreleme veri yükleyicilerinin nasıl kullanılacağını açıklıyor. Filmin kullanıcı kimliğini ve adını almak için film tablosunu derecelendirme tablosuyla birleştirir. CollabDataLoaders işlevi, derecelendirmeler, kullanıcı kimliği ve öğe başlığı sütunlarıyla birlikte veri çerçevesinden veri yüklemek için kullanılır. Ardından, rastgele sayılardan oluşan bir matris kullanarak kullanıcı ve film faktörleri oluşturur; burada sütun sayıları, oluşturmak istediği faktör sayısına eşittir. Faktör sayısını belirlemek için önceden belirlenmiş bir formül kullandığını ve bu formülün kendi sezgilerinden türetildiğini ve bir fonksiyon uydurularak test edildiğinden bahsetmiştir.

  • 01:25:00 Bu bölümde, konuşmacı, tek sıcak kodlu bir vektörün vektördeki bir dizin numarasını aramak için kullanılabileceğini açıklıyor; bu, tek sıcak kodlu bir vektörün nokta çarpımını almakla aynı şeydir. bir şeyle Gömmeler daha sonra, bir şeyi sıcak kodlanmış bir vektörle çarpmak için bir hesaplama kısayolu olarak tanıtılır ve kukla değişkenlerle matris çarpanları yaparken hızlanmaya izin verir. Konuşmacı ayrıca, bazı ek işlevler sağlayan Modül adlı bir üst sınıfı içeren bir sınıf olan bir Pytorch modelinin oluşturulmasını da tanıtıyor. İç çarpım nesnesi, dunder init yöntemini çağıran ve faktörlere göre kullanıcı yerleştirmeleri ve vektörlere göre filmler oluşturan bir modelin nasıl oluşturulacağına örnek olarak kullanılır.

  • 01:30:00 Bu bölümde eğitmen, modeli hesaplamak için "ileri" adlı bir yöntemi çağırmak için PyTorch'u nasıl kullanacağını açıklar. Nesnenin kendisi ve üzerinde hesaplanan veriler "ileriye" iletilir. Nokta çarpımı kullanmak ve verileri PyTorch aracılığıyla geçirmek, Excel kullanmaktan çok daha hızlıdır. Ancak, model iyi çalışmıyor, çünkü örnek olarak, hiç kimse bir filmi birin altında derecelendirmezken, mümkün olan en yüksek değerden daha büyük değerleri tahmin ediyor. Eğitmen, tahmini sıfır ile 5,5 arasında bir aralığa sıkıştırmak için sigmoid işlevini kullanarak bunu düzeltir. Bu değişikliğe rağmen, kayıp önemli ölçüde iyileşmez, ancak eğitmen bazı kullanıcıların yüksek derecelendirmelere sahip olduğu yeni bir gözlem sunar ve kullanıcı yanlılığının dahil edilmesinin modeli geliştirebileceğini öne sürer.

  • 01:35:00 Bu bölümde, konuşmacı film öneri modelinde kullanılan matrise önyargının nasıl ekleneceğini gösteriyor. Bu önyargıları ekleyerek, daha düşük veya daha yüksek puan verme eğiliminde olan kullanıcıları ayırt etmek mümkündür. Konuşmacı ayrıca, ağırlık azaltma veya L2 düzenlemesi kullanarak aşırı uyumdan nasıl kaçınılacağını tartışır. Konuşmacı, bunun ağırlıkların kareleri toplamının kayıp fonksiyonuna eklenmesiyle elde edilebileceğini açıklıyor. Genel olarak bu bölüm, derin öğrenme modellerinde önyargılar ve düzenlileştirme konusuna yararlı bir giriş sağlar.

  • 01:40:00 Bu bölümde video, derin öğrenme modellerinde fazla uydurmayı önlemek için bir düzenlileştirme biçimi olarak ağırlık azaltmanın kullanımını tartışıyor. Model, çok yüksek olmayan ancak tahminde faydalı olacak kadar yüksek olan doğru ağırlık karışımını bularak, kayıp fonksiyonunun mümkün olan en düşük değerini alabilir. Ağırlık azaltma katsayısı, sığdırma yöntemine aktarılabilir ve varsayılanlar normalde görüntü uygulamaları için iyidir, ancak tablolu ve işbirlikçi filtreleme için, kullanıcılar neyin en iyi sonucu verdiğini görmek için 10'un birkaç katını denemelidir. Düzenleme, modeli olması gerekenden daha karmaşık hale getirmemekle ilgilidir; daha yüksek ağırlık azaltma değerleri, fazla uydurmayı azaltırken aynı zamanda modelin iyi tahminler yapma kapasitesini de azaltır.

  • 01:45:00 Bu bölümde Jeremy ve John, hiperparametre arama konusunu ve bunun bireysel modeller oluştururken sıklıkla nasıl kullanıldığını tartışıyor. Ancak konu hiperparametreler için keşif yapmaya geldiğinde Jeremy'nin pratik kuralından başka kural yoktur. Tavsiye sistemlerinin işbirlikçi filtreleme yerine kullanıcı deneyiminin ortalama puanlarına göre oluşturulup oluşturulamayacağına ilişkin bir soruya yanıt olarak Jeremy, birinin sahip olduğu tek şeyin satın alma geçmişi olmasının ideal olmayacağını açıklıyor. Bunun yerine, doğru önerilerde bulunmak için kullanıcılar hakkında demografik bilgiler ve ürünler hakkında meta veriler gibi ayrıntılı verilere ihtiyaç vardır.
Lesson 7: Practical Deep Learning for Coders 2022
Lesson 7: Practical Deep Learning for Coders 2022
  • 2022.07.21
  • www.youtube.com
00:00 - Tweaking first and last layers02:47 - What are the benefits of using larger models05:58 - Understanding GPU memory usage08:04 - What is GradientAccum...
 

Ders 8 - Kodlayıcılar için Pratik Derin Öğrenme 2022



Ders 8 - Kodlayıcılar için Pratik Derin Öğrenme 2022

Bu video, kodlayıcılar için derin öğrenmenin temellerini kapsar. Pytorch kitaplığını kullanarak derin öğrenme modelleri için parametrelerin nasıl oluşturulacağını, bir veri kümesindeki faktörlerin sayısını azaltmak için PCA'nın nasıl kullanılacağını ve endüstriyel ağır ekipmanların açık artırma satış fiyatını tahmin etmek için bir Neural Net'in nasıl kullanılacağını açıklar.

Bu YouTube videosu, programcılar için derin öğrenmeye genel bir bakış sağlar. Konuşmacı, bu alanda azmin önemli olduğunu açıklıyor ve başarılı olmak istiyorsanız bir şeyler bitene kadar devam etmeniz gerektiğini tavsiye ediyor. Ayrıca forums.fast.ai'de diğer yeni başlayanlara yardım etmeyi öneriyor.

  • 00:00:00 Bu derste Pytorch, katsayıların ve ağırlıkların doğru şekilde başlatıldığından otomatik olarak emin olarak bir sinir ağı için parametrelerin oluşturulması ve yönetilmesiyle ilgilenir. Bu, kullanıcıyı bu bilgiyi hatırlamak veya bunu yapmak için kod yazmak zorunda kalmaktan kurtarır.

  • 00:05:00 Bu video, Pytorch kütüphanesini kullanarak derin öğrenme modelleri için parametrelerin nasıl oluşturulacağını açıklar. Pytorch, rastgele oluşturulmuş bir dağıtıma göre bu parametreleri otomatik olarak başlatır.

  • 00:10:00 Bu video, orijinaliyle aynı kod ve kavramları kullanarak sıfırdan bir Pytorch gömme katmanının nasıl oluşturulacağını gösterir. Ardından video, katmanın geçmiş film tercihlerine bakarak film tercihlerini nasıl tahmin ettiğini gösterir.

  • 00:15:00 Video, bir kullanıcının hangi filmi beğenebileceğini tahmin etmek için fast.ai işbirlikçi öğrenen uygulamasının nasıl kullanılacağını gösterir. Uygulama, bir kullanıcının önyargısını hesaplamak için gizli faktörleri (filmler ve faktörler) kullanır ve bu, daha sonra kullanıcının hangi filmi sevebileceğini tahmin etmek için kullanılır.

  • 00:20:00 Bu video, bir veri kümesindeki faktörlerin sayısını azaltmak için PCA'nın nasıl kullanılacağını açıklar. Ayrıca, müşterilerle daha önce hiçbir geçmişiniz olmadığında yeni ürünlerin onlara nasıl önerileceği sorusu olan Önyükleme Problemini de kapsar.

  • 00:25:00 Bu video, sıralı bir model, kolayca bir model oluşturmak için Pytorch'un işlevselliğinin nasıl kullanılacağı ve modelin işbirlikçi bir öğreniciye nasıl sığdırılacağı da dahil olmak üzere kodlayıcılar için derin öğrenmenin temellerini kapsar. Jona, sunum yapan kişiye işbirlikçi filtreleme sistemlerindeki önyargı sorunu hakkında bir soru sorar ve sunum yapan kişi sorun hakkında genel bir yanıt verir.

  • 00:30:00 Bu videoda Jeremy, İşbirlikçi Filtreleme ve NLP'de yerleştirmelerin nasıl çalıştığını ve bunların Sinir Ağlarını yorumlamak için nasıl kullanılabileceğini açıklıyor.

  • 00:35:00 Bu videoda yazar, bir Rastgele Orman ve bir Tabular Öğrenici kullanarak endüstriyel ağır ekipmanların müzayede satış fiyatını tahmin etmek için bir Sinir Ağı'nın nasıl kullanılacağını gösteriyor. Yazar, Tabular Learner kullanılarak oluşturulan Neural Net'in manuel olarak oluşturulan Neural Net ile neredeyse aynı olduğunu belirtmektedir.

  • 00:40:00 Sinir ağları, verileri girdi olarak alan ve bu verileri tahminler veya çıktılar oluşturmak için kullanan bir tür makine öğrenimi algoritması olarak düşünülebilir. Sinir ağları, bir grafik oluşturmak için birbirine bağlanan düğüm katmanlarından (nöron adı verilir) oluşur. Bir sinir ağının girdileri kategorik (örneğin, arabalar veya çiçekler gibi bir kategori) veya sürekli (yani bir sayı) olabilir. Yapay sinir ağları, farklı sonuçların (örneğin, farklı mağazalardaki satışlar) sonuçlarını tahmin etmek veya yeni bir girdinin içeriğini (örneğin, belirli bir veri noktaları kümesinin coğrafi konumu) tahmin etmek için kullanılabilir.

  • 00:45:00 Bu videoda, evrişimli sinir ağlarında kullanılan bir tür matris çarpımı olan evrişimleri öğreniyoruz. Bunun bir örneğini çalışırken görüyoruz ve ardından evrişimli sinir ağlarını kullanarak üst düzey bir dedektörün nasıl oluşturulacağını tartışıyoruz.

  • 00:50:00 Video, iki veri dizisini alıp öğelerini birleştiren ve genellikle dizinin sol tarafında sağ tarafına göre daha yüksek bir sonuç üreten bir matematiksel işlemin nasıl gerçekleştirileceğini açıklar. Derin bir öğrenme katmanı oluşturmak için birçok kez tekrarlanan 3'e 3 çekirdek üzerinde bir evrişim gerçekleştirilir.

  • 00:55:00 Video, sayıları tanımak için tek bir aktivasyon oluşturmak üzere biri yatay kenarlar ve diğeri dikey kenarlar için olan iki filtrenin nasıl birleştirildiğini göstererek derin öğrenmenin nasıl çalıştığını açıklıyor. Maksimum havuzlamayı kullanan bunu yapmanın eski yolu, daha az aktivasyonla sonuçlandı ve sonunda bir tane kaldı. "Sürgülü pencerelerle Max Pooling" adlı bir tekniği kullanan daha yeni yöntem, tüm aktivasyonlar kullanılana kadar devam eder ve daha doğru bir sonuç verir.

  • 01:00:00 Bu videoda sunucu, 21. yüzyılda derin öğrenmenin nasıl yapıldığını açıklıyor. Bugün, derin öğrenme 10 yıl öncesine göre farklı bir şekilde yapılıyor ve sunum yapan kişi bu değişikliğin nasıl çalıştığına dair bir örnek sunuyor. Max Pooling yerine, derin öğrenme algoritmaları artık Stride 2 Convolution kullanıyor. Ek olarak, derin öğrenme modelleri artık sonunda Max Pool katmanı yerine tek bir yoğun katman kullanıyor. Son olarak sunum yapan kişi, fast.ai'nin derin öğrenme eğitimini ve tahminini nasıl ele aldığına dair kısa bir genel bakış sunar.

  • 01:05:00 Yazar bu YouTube videosunda, evrişimin matris çarpımı ile aynı şey olduğunu ve iki yöntemi kullanarak bir evrişimin nasıl hesaplanacağını gösteriyor. Ayrıca sinir ağlarında rastgele gürültünün etkisini azaltmak için bir teknik olan Dropout'u tartışıyor.

  • 01:10:00 Bu derste yazar, Bırakma Katmanlarının sinir ağlarında aşırı uyumdan kaçınmaya nasıl yardımcı olduğunu açıklar. Ne kadar çok bırakma kullanırsanız, eğitim verilerinde o kadar az iyi olacaktır, ancak genelleştirmesi o kadar iyi olmalıdır. Bu, Geoffrey Hinton'ın grubu tarafından hazırlanan ve o zamanlar NIPS, şimdi ise NeurIPS olarak adlandırılan ana sinir ağları konferansından reddedilen bir makaleden geliyor.

  • 01:15:00 Bu video, sinir ağlarının türleri ve bunların nasıl uygulanacağı da dahil olmak üzere derin öğrenmenin temellerini kapsar. Ayrıca çeşitli eğitim yöntemlerinin nasıl kullanılacağını ve bir sinir ağının performansının nasıl değerlendirileceğini de kapsar. Son olarak, video, derin öğrenmeyi öğrenmeye nasıl devam edileceğine dair tavsiyeler sunar.

  • 01:20:00 Lucas, derin öğrenmede nasıl motive kalınacağını soruyor ve alanın hızla daha pahalı ve büyük ölçekli modellere doğru kaydığını belirtiyor. Gelecekte hala tek bir GPU ile makul modelleri eğitip eğitemeyeceğini merak ediyor. Genel olarak bu video, derin öğrenmede nasıl motive kalınacağına ve en son araştırmalarla nasıl güncel kalınacağına dair bir genel bakış sunar.

  • 01:25:00 Bu YouTube videosu, derin öğrenmeye ve bunun kodlamaya pratik uygulamasına kısa bir genel bakış sunar. Video, DawnBench'in derin öğrenme başarısının, ekibin sağduyu ve zekayı kullanmasına bağlı olduğunu ve herkesin derin öğrenmeyi kendi problem alanlarına nasıl uygulayabileceğini tartışıyor. Videoda ayrıca makine öğrenimi alanında örgün eğitimin önemine ve canlı kodlama oturumlarının öğrenmeyi güçlendirmeye nasıl yardımcı olduğuna değiniliyor.

  • 01:30:00 Jeremy, her gün yeni bir şey öğrenmek ve çok fazla çalışmamak gibi bazı üretkenlik tüyoları paylaştı.

  • 01:35:00 Bu YouTube videosu, programcılar için derin öğrenme üzerine bir derstir ve konuşmacı bu alanda azmin önemli olduğunu açıklar. Başarılı olmak istiyorsanız, en iyi kalitede olmasa bile bir şey bitene kadar devam etmeniz gerektiğini tavsiye ediyor. Ayrıca forums.fast.ai'de diğer yeni başlayanlara yardım etmeyi öneriyor.
Lesson 8 - Practical Deep Learning for Coders 2022
Lesson 8 - Practical Deep Learning for Coders 2022
  • 2022.07.21
  • www.youtube.com
00:00 - Neural net from scratch04:46 - Parameters in PyTorch07:42 - Embedding from scratch12:21 - Embedding interpretation18:06 - Collab filtering in fastai2...
 

9. Ders: Kararlı Yayılım için Derin Öğrenme Temelleri, 2022



9. Ders: Kararlı Yayılım için Derin Öğrenme Temelleri, 2022

Bu video, kararlı difüzyon modellerinin nasıl çalıştığını ve yeni görüntüler oluşturmak için nasıl uygulanabileceğini tartışarak derin öğrenmeye bir giriş sağlar. Video, el yazısı rakamlara benzeyen görüntüler oluşturmak için Difüzörler kitaplığının nasıl kullanılacağına dair bir tanıtım içerir. Ayrıca Sinir Ağlarını eğitmek için bir yöntem olan kararlı difüzyon kavramını da tanıtmaktadır. Temel fikir, çıktıyı değiştirmek için girdileri bir Sinir Ağına değiştirmektir. Bu videoda eğitmen, el yazısı rakamları gürültülü girdilerden doğru bir şekilde tanımlayabilecek bir Sinir Ağı'nın nasıl oluşturulacağını tartışıyor. Bu video, bir derin öğrenme algoritması kullanarak bir makine öğrenimi modelinin nasıl eğitileceğini tartışır. Model, bir dizi gizli değişkenle (verileri temsil eden) başlatılır ve ham verileri anlamak için bir kod çözücü kullanır. Daha sonra, veriler için makine tarafından okunabilen başlıklar oluşturmak için bir metin kodlayıcı kullanılır. Son olarak, giriş olarak başlıklar kullanılarak bir U-Net eğitilir ve eğitim verilerindeki gürültü seviyelerini ayarlamak için eğimler ("skor işlevi") kullanılır.

  • 00:00:00 Bu derste, derin öğrenmenin nasıl çalıştığı ve gerçek dünya problemlerine nasıl uygulanacağı açıklanmaktadır. Bununla birlikte, bu derste açıklanan kavram ve tekniklerin yakın gelecekte geçerliliğini yitirmesi muhtemel olduğundan, videonun çoğu, 2022'de hala geçerli olacak bir derin öğrenme algoritması olan kararlı difüzyonun nasıl kullanılacağını öğretmekle geçti.

  • 00:05:00 Kurs hızla ilerliyor ve yeni makaleler, kararlı bir difüzyon modeli oluşturmak için gereken adım sayısının binden dörde veya elli altıya düştüğünü gösteriyor. Kurs, modelin temellerine ve nasıl çalıştığına odaklanacaktır.

  • 00:10:00 Kurs, kararlı difüzyon modellerinin nasıl çalıştığını tartışarak ve daha derinlemesine öğrenme için kaynaklar sağlayarak derin öğrenme temelleri sağlar. 2022'de derin öğrenme için GPU'lar daha pahalı hale gelecek, bu nedenle mevcut önerileri dikkate almak önemlidir.

  • 00:15:00 Bu YouTube videosu, kararlı difüzyonun temellerini özetleyen derin öğrenmeye kısa bir giriş sağlar. Yazar, derin öğrenmenin temellerini keşfetmek için kullanılabilecek bir dizi Colab not defteri, "difüzyon-nbs" sağlar. Video, sağlanan materyalle biraz oynama ve diğer kaynakları keşfetme önerisiyle sona eriyor.

  • 00:20:00 Bu derste, kararlı bir difüzyon algoritmasının nasıl oluşturulacağı da dahil olmak üzere Derin Öğrenmenin temelleri ele alınır. Daha sonra Diffusers kitaplığı ve başkalarının kullanması için bir işlem hattının nasıl kaydedileceği tanıtılır.

  • 00:25:00 Bu ders, derin öğrenmenin temellerini ve yüksek kaliteli görüntüler oluşturmak için Colab'in nasıl kullanılacağını tartışır. Bir görüntü oluşturmak için atılan 51 adım, Ekim 2022 itibariyle mevcut olan üç ila dört adımla karşılaştırılır.

  • 00:30:00 Bu derste eğitmen, derin öğrenmeyi kullanarak görüntülerin nasıl oluşturulacağını gösterir. Resimlerin ne kadar soyut olduğunu kontrol etmek için "rehberlik ölçeğinin" nasıl kullanılacağını gösteriyor.

  • 00:35:00 Bu video, kararlı difüzyon adı verilen bir teknik kullanarak orijinal çizime benzeyen görüntüler oluşturmak için bir derin öğrenme modelinin nasıl kullanılacağını açıklar.

  • 00:40:00 Bu derste eğitmen, makine öğrenimi modellerinin kararlı difüzyon algoritmasıyla nasıl eğitileceğini açıklar. Algoritmanın, sağlanan örneklere benzer görüntüler oluşturmak için yararlı olduğunu açıklıyorlar. Eğitmen ayrıca, orijinal oyuncak ayıya benzer bir oyuncak ayı görüntüsü oluşturmak için kararlı difüzyon algoritmasının nasıl kullanıldığına dair bir örnek paylaşıyor.

  • 00:45:00 Bu videoda eğitmen, geleneksel yaklaşıma eşdeğer ancak kavramsal olarak daha basit olan matematiksel bir yaklaşım olan kararlı difüzyon kavramını tanıtıyor. Bir görüntünün el yazısıyla yazılmış bir rakam olma olasılığını belirleyebilen bir işlevi kullanarak, el yazısı rakamlara benzeyen yeni görüntüler oluşturabileceğinizi açıklıyor.

  • 00:50:00 Bu videoda bir eğitmen, girilen bir görüntünün el yazısıyla yazılmış bir rakam olma olasılığının gradyanının derin öğrenme kullanılarak nasıl hesaplanacağını açıklıyor.

  • 01:05:00 Bu video, Sinir Ağlarını eğitmek için bir yöntem olan kararlı difüzyon fikrini tanıtıyor. Temel fikir, çıktıyı değiştirmek için girdileri bir Sinir Ağına değiştirmektir.

  • 01:10:00 Bu videoda eğitmen, el yazısı rakamları gürültülü girdilerden doğru bir şekilde tanımlayabilecek bir Sinir Ağı'nın nasıl oluşturulacağını tartışıyor. Önce bir eğitim veri setinin nasıl oluşturulacağını tartışırlar ve ardından Neural Net'in nasıl eğitileceğini açıklamaya devam ederler.

  • 01:15:00 Bu video, sayısal bir görüntüdeki paraziti tahmin etmenin bir yolu olan derin öğrenme ve kararlı difüzyon kavramını tanıtıyor. Sinir Ağı gürültüyü tahmin eder ve kayıp işlevi basittir: girdiyi almak ve gürültüyü tahmin etmek.

  • 01:20:00 Bu videodaki Sinir Ağı, girişlere eklenen gürültüyü tahmin etmeye çalışıyor. Bunu girdiden gürültü olduğunu düşündüğü bitleri çıkararak yapar. Bunu birkaç kez yaptıktan sonra, sonunda daha çok bir rakam gibi görünen bir şey elde eder.

  • 01:25:00 Bu videoda eğitmen, U-Net adı verilen bir Neural Net'in bir görüntüye yaklaşmak için nasıl kullanılabileceğini gösteriyor. Sorun, U-Net'in çok fazla depolama gerektirmesidir ve bu, büyük TPU bulutu ile Google için sorun olabilir.

  • 01:30:00 Video, derin öğrenme kullanılarak bir görüntünün nasıl sıkıştırılacağını açıklıyor. İlk olarak, bir görüntü, iki evrişimli katmandan oluşan bir katmandan geçirilerek sıkıştırılır. Görüntü 64x64x4 versiyonuna indirgenene kadar bu işlem tekrarlanır. Ardından, görüntü bir Neural Network katmanı olarak kaydedilir. Son olarak, sinir ağı farklı boyutlardaki görüntüleri sıkıştırmak için kullanılır.

  • 01:35:00 Video, bir Neural Net'e bir görüntünün nasıl sıkıştırılacağını öğretmek için bir kayıp işlevinin nasıl kullanılabileceğini tartışıyor, bu da daha küçük bir dosyayla sonuçlanıyor. Sıkıştırma algoritması iyi çalışıyor ve görüntüleri iki kişi arasında paylaşmak için kullanılabilir.

  • 01:40:00 Bu video, gizli verileri kullanarak bir derin öğrenme modelinin nasıl eğitileceğine dair bir eğitim sağlar. Gizli veriler, doğrudan gözlemlenmeyen ve bir derin öğrenme modelini eğitmek için kullanılan özel bir veri türüdür. Gizli bilgiler, bir resmin piksellerinin bir sinir ağı kullanılarak kodlanmasıyla oluşturulur. Kodlama işlemi, resmin gizli bir temsilini oluşturur. Kod çözücü, orijinal resmi oluşturmak için bu gizli gösterimi kullanır.

  • 01:45:00 Bu video, bir Neural Network'ün orijinal görüntünün ne olduğunu bildiği gerçeğinden yararlanarak gürültüyü daha iyi tahmin etmeyi nasıl öğrenebileceğini açıklıyor. Bu kullanışlıdır, çünkü örneğin 3 rakamı beslendiğinde, model gürültünün 3 sayısını temsil etmeyen her şey olduğunu söyleyecektir.

  • 01:50:00 Video, metin ve görüntüleri kodlamak için iki sinir ağının nasıl kullanılabileceğini açıklıyor. Birinci sinir ağı metni kodlamak için kullanılır ve ikinci sinir ağı görüntüleri kodlamak için kullanılır. Amaç, iki ağın belirli bir girdi için benzer çıktılar üretmesidir. Çıktıların benzerliği, girdi özellikleri ile çıktı özelliklerinin iç çarpımı ile belirlenir.

  • 01:55:00 Bu video, benzer metin girişleri için benzer yerleştirmeler üretebilen bir tür makine öğrenimi modeli olan CLIP metin kodlayıcının nasıl oluşturulacağını açıklar. Bu önemlidir, çünkü çok modlu metin tanıma ve sentezine izin verir.

  • 02:00:00 Bu videoda eğitmen, derin öğrenme algoritması kullanarak bir makine öğrenimi modelinin nasıl eğitileceğini açıklıyor. Model, bir dizi gizli değişkenle (verileri temsil eden) başlatılır ve ham verileri anlamak için bir kod çözücü kullanır. Daha sonra, veriler için makine tarafından okunabilen başlıklar oluşturmak için bir metin kodlayıcı kullanılır. Son olarak, giriş olarak başlıklar kullanılarak bir U-Net eğitilir ve eğitim verilerindeki gürültü seviyelerini ayarlamak için eğimler ("skor işlevi") kullanılır.

  • 02:05:00 Bu videoda yazar, derin öğrenme algoritmalarının nasıl çalıştığını ve gizli (bilinmeyen) bir görüntü için en iyi tahmini nasıl bulmaya çalıştıklarını anlatıyor. Yazar ayrıca, sonuçları iyileştirmek için algoritma parametrelerinin nasıl değiştirileceğini de açıklıyor.

  • 02:10:00 Video, optimize ediciler gibi diferansiyel denklem çözücülerin derin öğrenme modellerine benzer fikirleri nasıl kullandıklarını tartışıyor. Video, Algısal Kayıp ve diğer kayıp fonksiyonlarının derin öğrenme modellerinin doğruluğunu artırmak için nasıl kullanılabileceğini tartışıyor. Video, bir derin öğrenme ardışık düzeni kodunun açıklanacağı bir sonraki dersin kısa bir özetini sunar.

  • 02:15:00 Bu video, derin öğrenmede teknolojinin kararlılığını ve yayılmasını iyileştirmesi muhtemel olan bazı yeni araştırma yönlerini tartışıyor.
Lesson 9: Deep Learning Foundations to Stable Diffusion, 2022
Lesson 9: Deep Learning Foundations to Stable Diffusion, 2022
  • 2022.10.19
  • www.youtube.com
(All lesson resources are available at http://course.fast.ai.) This is the first lesson of part 2 of Practical Deep Learning for Coders. It starts with a tut...
 

Derin Öğrenmedeki Zorluklar (Dr Razvan Pascanu - DeepMind)



Derin Öğrenmedeki Zorluklar (Dr Razvan Pascanu - DeepMind)

DeepMind'den Dr. Razvan Pascanu, bu videoda derin öğrenmedeki çeşitli zorlukları tartışıyor. Uyum sağlamanın ve performans metriklerinden odaklanmanın önemini vurguluyor ve derin öğrenme sistemlerindeki hesaplama kaynaklarının sınırlamalarının gerçekten faydalı olabileceğini öne sürüyor. Ayrıca, boyut ve mimarinin derin öğrenme modellerinin performansı üzerindeki etkisi de dahil olmak üzere, sürekli öğrenmedeki zorlukları ve bununla ilgili makine öğreniminin alt alanını araştırıyor. Dr. Pascanu ayrıca stokastik gradyan inişinin rolünü, açık önyargıların önemini ve derin öğrenme modellerinde ön eğitim ve tümevarımsal önyargıları ekleme kavramını tartışıyor.

DeepMind'den Dr. Razvan Pascanu, derin öğrenmede unutma konusunu ve modellerin bundan nasıl kurtulabileceğini tartışıyor. Unutma meydana geldikten sonra bazı bilgiler hala kalabilse de, ne kadar bilginin kaybolduğunu belirlemek zordur. Dr. Pascanu, hedeflenen unutmayla ilgili son makalelerin veri gizliliğine nasıl odaklandığından bahsediyor, ancak bu alanda daha fazla araştırmaya ve odaklanmaya ihtiyaç var.

  • 00:00:00 Bu bölümde, Dr. Razvan Pascanu derin öğrenmede adaptasyonun önemine dair içgörülerini tartışıyor. Performans ölçütlerine yapılan vurguya rağmen Pascanu, bu tekil ölçü için sürekli iyileştirmenin sınırlayıcı etkilerinin altını çiziyor. Ortamdaki öngörülemeyen değişikliklerle karşı karşıya kalındığında sabit sistemlerde uyarlanabilirlik eksikliği, herkese uyan tek çözüme odaklanma, daha karmaşık senaryolarda iyi tanımlanmış performans ölçütlerinin olmaması ve sistemlerin yalnızca üstesinden gelmek için ölçeklendirilmesi Sınırlı veri ve bilgi işlem kaynakları gibi darboğazlar, derin öğrenmede uyarlamaya yönelik bir odak değişikliği ihtiyacını ortaya çıkaran sorunlardan bazılarıdır.

  • 00:05:00 Bu bölümde Dr. Razvan Pascanu, derin öğrenmede yalnızca performansa odaklanmanın sınırlamalarını tartışıyor ve değişime sürekli uyum sağlayabilen sistemleri keşfetmeyi öneriyor. Büyük veri kümelerini öğrenirken kapsam ve veri temsili konularının yanı sıra bir sistemin dağıtım dışı genelleştirme kapasitesini değerlendirmenin zorluğunu vurguluyor. Pascanu, uyarlanabilirlik hakkında düşünmenin bakış açısını değiştirdiğini ve bu sorunların bazılarının ele alınmasına yardımcı olabileceğini öne sürüyor. Thomas Griffiths'in, AlphaGo tarafından yapılan belirli hareketleri anlayamamamızın nedeninin, aracının yalnızca nihai performansı önemserken sorunları alt hedeflere ayırma eğiliminde olmamız olduğu şeklindeki argümanından alıntı yapıyor. Pascanu, bakış açılarını değiştirmenin tüm sorunları çözmeyebileceği, ancak yeni anlayışlara ve yaklaşımlara yol açabileceği sonucuna varıyor.

  • 00:10:00 Bu bölümde Dr. Pascanu, sınırlamaların derin öğrenme sistemlerinde faydalı olabileceği fikrini tartışıyor. İnsanların düşünme şeklimizi şekillendiren bilişsel sınırlamaları olsa da, makine öğrenimi sistemlerinin nasıl öğrendiklerini şekillendiren hesaplama sınırlamaları vardır. Sınırlamaları aşılması gereken bir engel olarak düşünürsek, bu sınırlamaların faydalarını kaçırabiliriz. Hesaplamalı bütçelerin sınırlandırılması, sistemi daha iyi sonuçlara yol açabilecek birleştirici çözümler bulmaya zorlayabilir. Dr. Pascanu, yalnızca performansa odaklanmak yerine öğrenme maliyetini, çıkarım yapma maliyetini ve sabit kodlanmış bilgi miktarını da hesaba katmamız gerektiğine inanıyor. Bununla birlikte, veri dağılımı ve veri noktaları arasındaki ilişki açısından hala üstesinden gelinmesi gereken zorluklar var ve Dr. Pascanu, bu zorlukların üstesinden gelmek için kategori teorisi gibi farklı araçları keşfetmenin önemini vurguluyor.

  • 00:15:00 Bu bölümde, Dr. Razvan Pascanu-DeepMind, sürekli öğrenmenin neden önemli olduğunu ve sürekli olarak verimli bir şekilde öğrenebilen bir sistemin gerekliliklerini tartışıyor. Sürekli öğrenmenin pek çok çeşidi olduğunun altını çiziyor ve bu da her belirli konuyu tanımlamayı ve tam olarak belirlemeyi zorlaştırıyor. Ayrıca, sürekli öğrenmenin tanımı da çelişkiler yaratabilir ve kullanılan görevlere ve ölçütlere bağlı olarak bazı sorunlar daha görünür hale gelebilir. Dr. Pascanu-DeepMind, sürekli öğrenmeyi temellendirmenin bir yolunun, ilerleme kaydedilip kaydedilmediğini görmeyi kolaylaştıran pratik bir uygulaması olan sürekli yarı denetimli öğrenme gibi gerçek sorunlara odaklanmak olduğunu öne sürüyor. Başka bir yol da pekiştirmeli öğrenmeye odaklanmaktır.

  • 00:20:00 Bu bölümde, Dr. Razvan Pascanu pekiştirmeli öğrenmede (RL) sürekli öğrenmenin zorluklarını ve bu sorunu hafifletmek için şimdiye kadar geliştirilen teknikleri tartışıyor. RL'deki veriler durağan olmadığından, fonksiyon yaklaşımlarının işe yaraması için sürekli öğrenmeyle uğraşmak gerekir. Feci unutmayı önlemek için yeniden oynatma arabellekleri, Starcraft'ta uzmanlar birliği ve AlphaGo'da satış oyunu gibi Brute Force yöntemlerine dayalı olarak çeşitli teknikler geliştirilmiştir. Ancak bu yöntemler pahalı hale gelebilir ve her zaman bu maliyetleri düşürme ihtiyacı vardır. Pascanu, RL ve denetimli öğrenmenin, özellikleri aktarmanın RL sistemlerinde pek yardımcı olmadığı ve odak noktasının, verilerin kalitesini kontrol etmek ve aktör ile eleştirmeni merkezileştirmek olması gerektiği konusunda farklılık gösterdiğini savunan ilginç bir makale sunuyor.

  • 00:25:00 Bu bölümde konuşmacı, sürekli hizalamanın Denetimli öğrenmenin taklit edemeyeceği yönleri olduğuna işaret ederek sürekli öğrenmedeki zorlukları tartışıyor. Konuşmacı, RL ve Denetimli öğrenme arasındaki bu farkları listeleyen bir makaleden bahseder. Ek olarak, konuşmacı sürekli öğrenmenin bir noktaya yakınsama yerine nasıl bir izleme sorunu olarak düşünülebileceğini tartışır. Konuşmacı, yeni veriler üzerinde ince ayar yapılırken oluşan esneklik kaybından ve bunun genellemeyi nasıl etkileyebileceğinden bahsediyor. Son olarak, konuşmacı, sinir ağlarında kredi tahsisini ve ortalamayı etkileyen çelişkili oylara neden olabilen gradyanın her ağırlık için bağımsız olarak nasıl hesaplandığını tartışır.

  • 00:30:00 Videonun bu bölümünde Dr. Razvan Pascanu, her örneğin ağırlığa bir kuvvet uyguladığı ve öğrenmenin denge sağlandığında gerçekleştiği halat çekme oyununa benzeyen anında öğrenmeden bahsediyor. bu kuvvetler arasında ulaşılır. Kimlik verileri, tüm kuvvetlerin mevcut olmasını sağladığı için bu süreçte önemlidir. Ek olarak, öğrenme, aynı anda öğrenilen çeşitli ilgili kavramlarla dolaylı olarak bilgiyi öğretir. Daha az veriden daha fazla bilgi elde etmek için daha verimli bir öğrenme süreci oluşturmak için öğrenme Dinamikleri, optimize edici ve oyun otomasyonu ara yazılımının iyileştirilebileceği önerilmektedir.

  • 00:35:00 Bu bölümde, DeepMind'dan Dr. Razvan Pascanu, bir sisteme daha önce öğrendiklerini unutmadan yeni şeyler öğretmeye çalışmayı içeren, sürekli öğrenme olarak bilinen makine öğreniminin alt alanındaki zorlukları tartışıyor. Alan yetersiz tanımlanmış, ölçütler iyi tanımlanmamış ve insanların neyi önemsediği konusunda anlaşmazlıklar var. Bir sorun, büyük ölçüde kıyaslamanın nasıl tanımlandığına bağlı olan, verilerin kalitesi ve öğrenme ile unutma arasındaki değiş tokuştur. Amaç, daha doğal kriterler bulmaktır, ancak "doğal" tanımı bile üzerinde anlaşmaya varılmamıştır.

  • 00:40:00 Bu bölümde, Dr. Razvan Pascanu AGI sistemleri kavramını ve bunların insan zekası ile ilişkisini tartışıyor. İnsanlara benzeyen bir AGI sistemi inşa etmenin yorumlama kolaylığı açısından arzu edilebilir olmasına rağmen, bunun gerekli olmadığını açıklıyor. AGI öğreniminde kullanılan alt hedefler etkilidir ve yeni şeylerin daha hızlı öğrenilmesine izin vererek kompozisyon genellemesine yardımcı olur. Pascanu ayrıca, derin öğrenme modellerinin örtük önyargılarının nasıl hatalara yol açabileceğini ve açık önyargıların modelleri geliştirmek için nasıl kullanılabileceğini tartışıyor. Çok düşük eğrilik alanında aşırı parametreli sistemlerin kullanılmasıyla sürekli öğrenmenin nasıl geliştirilebileceğine dair bir örnek veriyor.

  • 00:45:00 Videonun bu bölümünde Dr. Razvan Pascanu, bir modelin boyutunun ve mimarisinin derin öğrenmedeki performansı üzerindeki etkisini tartışıyor. Bir sistemin ne kadar iyi unutacağı üzerinde tek başına ölçeğin önemli bir etkiye sahip olduğunu ve doğru mimariyi seçmenin büyük bir fark yarattığını belirtiyor. Alan tipik olarak mimari seçimlerin etkisini görmezden gelir ve genellikle mimarileri haksız yere karşılaştırır. Dr. Pascanu ayrıca optimizasyonun derin öğrenmedeki rolünün altını çiziyor ve aşırı parametrelendirmenin sıfır eğitim hatasıyla birçok çözümle sonuçlandığını öne sürüyor. Çözümlerin sayısı arttıkça, başlatmaya en yakın çözüm birleşir ve sistem hala başlatma koşullarına bağlıdır. Alçak yüzeyin herhangi bir yapıya sahip olabileceğini ve keyfi olarak karmaşık olabileceğini gösteren araştırma çalışması örneklerinden bahsediyor. Son olarak, sistemde gradyanların akışını değiştirmek için kullandığı atlama bağlantısı nedeniyle res net'in iyi performans gösterdiğini açıklıyor.

  • 00:50:00 Bu bölümde Dr. Razvan Pascanu, stokastik gradyan inişinde (SGD) örtük önyargıları ve açık önyargıların önemini gösteren bazı yeni sonuçlardan bahsediyor. SGD ile ilgili olarak, geleneksel olarak SGD'deki gürültünün keskin minimumlardan kaçmaya yardımcı olduğu düşünülürdü, ancak SGD'de kullanılan düzenleyicide üstü kapalı bir önyargı olduğu ortaya çıktı. Ek olarak, veri artırma gürültüsü rahatsız edicidir ve farklı veri artırmalara göre eğimin ortalamasının alınmasının bu gürültüyü azaltabileceğini bulmuşlardır. Ayrıca, önyargılar çok önemlidir ve veri artırmada yapılacak ufak bir değişiklik, performansta büyük gelişmelere yol açabilir. Ayrıca, farklı başlatmalar fikrini ve sorunun çözümünde ayrılmaz olan uzayın bölümlenmesini nasıl etkileyebileceklerini de araştırdılar. Son olarak, ön eğitim gibi açık önyargıların kullanılmasının da önemli gelişmelere yol açtığı gösterilmiştir.

  • 00:55:00 Bu bölümde Dr. Razvan Pascanu, ön eğitim kavramını ve derin öğrenme modellerinde tümevarımsal önyargıları tartışıyor. Ön eğitimin, bilgilerin düğümler arasında düzgün bir şekilde iletilebilmesini sağlamaya yardımcı olabileceğini ve özel cihazlarda önemli bir gelişmeye yol açabileceğini açıklıyor. Ek olarak, Dr. Pascanu, ağırlıkların sıfıra kilitlenmesine ve öğrenme verimliliğini artırmasına yardımcı olabilecek bir düzenleyici terim eklemek yerine kayıp yüzeyini şekillendirerek tümevarımsal önyargılar eklemeye yönelik benzersiz bir yaklaşımı açıklamaktadır. Ayrıca yıkıcı unutmayla ilgili sorunları ve makine öğrenimindeki sorunları ayrıştırmanın zorluğunu da ele alıyor.

  • 01:00:00 Bu bölümde, Dr. Pascanu derin öğrenmede unutma fikrini ve modellerin bundan nasıl kurtulabileceğini tartışıyor. Bir model bazı şeyleri unuttuktan sonra bile bazı bilgilerin hala gizli olduğunu, ancak gerçekte ne kadar bilginin kaybolduğunu belirlemenin zor olduğunu öne sürüyor. Dr. Pascanu, mahremiyeti korumak için belirli veri noktalarının modelden çıkarıldığı hedefli unutma hakkında yakında yayınlanacak makalelerden bahsediyor, ancak bu alanda daha fazla araştırmaya ihtiyaç olduğuna inanıyor.
Challenges in Deep Learning (Dr Razvan Pascanu - DeepMind)
Challenges in Deep Learning (Dr Razvan Pascanu - DeepMind)
  • 2022.11.17
  • www.youtube.com
This talk will cover some of the most important open problems in Deep Learning. A big part of the talk will be focused on Continual Learning as one main open...
 

CS 198-126: Modern Computer Vision Güz 2022 (California Üniversitesi, Berkeley) Ders 1 - Makine Öğrenimine Giriş



CS 198-126: Ders 1 - Makine Öğrenimine Giriş

Makine öğrenimiyle ilgili bu derste eğitmen, kursa giriş, makine öğrenimine genel bakış, farklı makine öğrenimi türleri, makine öğrenimi boru hattı, etiketleme verileri ve kayıp işlevi dahil olmak üzere çok çeşitli konuları kapsar. Yanlılık-varyans değiş tokuşu, fazla uydurma ve yetersiz uydurma kavramları da tartışılmaktadır. Eğitmen, makine öğrenimi sürecinde doğru işlevi seçmenin önemini ve hiperparametrelerin süreçteki rolünü vurgular. Makine öğreniminin genel amacı, yalnızca eğitim verilerine uyması değil, yeni verileri doğru bir şekilde tahmin etmektir. Öğretim görevlisi, öğrencileri derse katılmaya ve makine öğrenimi ve derin öğrenme hakkında bilgi edinmek için çaba göstermeye teşvik eder.

  • 00:00:00 Bu bölümde, özetlenecek uygun bir içerik yok çünkü sağlanan transkript alıntı, konuşmacı ile dinleyiciler arasında odadaki mikrofon durumu hakkında bir konuşma gibi görünüyor.

  • 00:05:00 Bu bölümde, Jake ve meslektaşları tarafından sunulan bilgisayarla görü için derin öğrenme konulu ders serisiyle tanışıyoruz. Ders başlarken Jake, kursun lojistiğinin üzerinden geçer ve ilk derste neleri tartışacaklarını, yani makine öğrenimine ve nasıl yaklaşıldığına genel bir bakış niteliğindedir. Kayıt ekipmanıyla ilgili bazı teknik zorluklara rağmen, Jake sınıfa ders vermekten heyecan duyuyor ve kendisini ve meslektaşlarını tanıtarak başlıyor.

  • 00:10:00 Bu bölümde, eğitmen kendini ve daha önce bu malzemeyle fazla karşılaşmamış birinci sınıf öğrencileri için bilgisayarla görme ve derin öğrenmeye giriş niteliğinde bir temel eğitim programı sağlamayı amaçlayan kursu tanıtır. Kurs, bilgisayarla görme görevleri, büyük görüntü veri kümelerinden öğrenme, 3D görme ve üretken sanat gibi konuları kapsayacaktır. Eğitmen, kursun eğlenceli ve etkileşimli olması gerektiğini vurgular ve web sitesindeki kayıt slaytlarına ve ödevlere erişim ve öğrenciler ve kurs personeli ile etkileşim için Ed stem'i kullanma gibi kurs için lojistik sağlar. Müfredat web sitesinde de mevcuttur ve ilk sınav önümüzdeki hafta sonunda yapılacaktır.

  • 00:15:00 Bu bölümde, eğitmen makine öğrenimine (ML) bir giriş sağlar. Makine öğreniminin, bir işlevi kendiniz kodlamak yerine neye benzediğini anlamak için verileri kullanma süreci olduğunu açıklıyor. ML ile veriler, işlevlere rehberlik eder ve eğitmen, bir görüntüden 7 sayısını tanımlayan bir işlevin, ML ile kodlayarak yapmaya çalışmaktan çok daha kolay nasıl oluşturulduğuna dair bir örnek verir. Eğitmen, ML'nin, bir işlevin yapısını oluşturduğu ve verileri aracılığıyla öğrenilen parametrelerle işlevin nasıl davranacağını belirleyecek birkaç parametre bıraktığı şablon oluşturmayı içerdiğini açıklar. ML modelinin başarısını belirlediği için doğru fonksiyon şablonlarını oluşturmanın önemi tartışılmaktadır.

  • 00:20:00 Dersin bu bölümünde konuşmacı, makine öğreniminin anahtarının, modelin izleyeceği işlevin biçimini bulmak olduğunu açıklıyor. Bu işleve bazen bir model sınıfı denir ve bazı bölümleri boştur ve öğrenmemize izin verilen değerler olan parametreler olarak adlandırılır. Konuşmacı, doğru sonuçlara ulaşmak için işlev seçiminin çok önemli olduğunu vurgular. Konuşmacı ayrıca, denetimli öğrenme, denetimsiz öğrenme ve pekiştirmeli öğrenme dahil olmak üzere farklı makine öğrenimi türlerine kısa bir genel bakış ve kategorizasyon sağlar ve işlev, parametreler, ağırlıklar, sapmalar, hiperparametreler ve özellikler dahil olmak üzere makine öğrenimiyle ilişkili kelimeleri tanıtır.

  • 00:25:00 Bu bölümde öğretim görevlisi, ML ardışık düzenine odaklanarak makine öğrenimi sürecini açıklıyor. Öncelikle problemin tanımlanması, verilerin hazırlanması, model ve kayıp fonksiyonunun seçilmesi esastır. Modelin tanıyabileceği sayılara dönüştürmek için verileri tek bir sıcak etiketleme sistemiyle etiketlemek de önemlidir. Öğretim görevlisi, kötü veri girişinin eşit derecede zayıf bir çıktıyla sonuçlanacağına dikkat çekerek iyi verilerin önemini vurgular. Ek olarak, tüm özelliklerin aynı ölçekte olmasını ve doğru sırada temsil edilmesini sağlayarak verilerin vektörleştirilmesinin önemini tartışıyor.

  • 00:30:00 Bu bölümde öğretim görevlisi, makine öğrenimi uygulamaları için verilerin nasıl etiketleneceğini ve verileri doğru bir şekilde temsil etmenin neden önemli olduğunu açıklıyor. Her etiketin karşılık gelen konumda bir ve başka yerlerde sıfırlarla temsil edildiği bir sıcak etiketleme kullanılır. Bir makine öğrenimi modelini eğitirken bir model ve kayıp işlevi tanımlamak çok önemlidir. Model, belirli soruna ve verilere göre uyarlanmalıdır ve hangisinin en iyi sonucu verdiğini görmek için farklı modeller test edilebilir. Kayıp fonksiyonu, modelin etkinliğini ölçer ve düşük bir değer arzu edilir.

  • 00:35:00 Bu bölümde öğretim görevlisi, makine öğreniminde optimize edilecek bir metriğe sahip olmanın önemini tartışıyor ve modelin çıktısı ile doğru etiket arasındaki farkı ölçmek için bir kayıp işlevi kavramını tanıtıyor. Ortalama kare hatası, modelin çıktısı ile doğru etiket arasındaki mesafeyi hesaplamak için bir kayıp fonksiyonu örneği olarak verilmiştir. Kayıp fonksiyonu, önceden seçilmesi gereken bir hiper parametredir. Ek olarak öğretim görevlisi, algoritmanın kayıp fonksiyonunu kullanarak modelin parametreleri için en uygun değerleri seçtiği eğitim aşamasından bahseder. Ayrıca, modelin performansını değerlendirmek ve modelin yeni verilere ne kadar iyi genelleştirdiğini belirlemek için modelin daha önce görmediği bir test seti kullanılır. Son olarak, modelin sadece eğitim verilerini ezberlememesinin yanı sıra yeni verilere iyi genelleme yapmasının önemi vurgulanmaktadır.

  • 00:40:00 Bu bölümde, makine öğreniminde derin öğrenmede ve diğer tüm makine öğrenimi sınıflarında ortaya çıkan çok önemli bir özellik olarak sapma ve varyans değiş tokuşu kavramı tartışılıyor. Önyargı, modelin belirli tahminlere yönelik eğilimini ifade eder ve varyans, bir modelin verilerdeki karmaşıklıkları ezberlemeden yakalama yeteneğidir. Yüksek yanlılık ve yüksek varyans örnekleri verilmiştir; burada yüksek yanlılık, bir modelin bir veri setini doğru bir şekilde öğrenmek için yeterince açıklayıcı olmadığı, yüksek varyansın ise fazla uydurma anlamına geldiği bir durumdur. İdeal model, Goldilocks bölgesi olarak bilinen, verilerin karmaşıklığını ezberlemeden yakalayan modeldir. Önyargı-varyans değiş tokuşu, makine öğreniminde, aldıkları her makine öğrenimi dersinde karşılaşacakları için kullanıcıların bilmesi gereken kritik bir kavramdır.

  • 00:45:00 Bu bölümde konuşmacı, makine öğrenimi modellerinde fazla uydurma ve yetersiz uydurma kavramlarını tartışıyor. Makine öğreniminin amacı, yalnızca eğitim verilerine uyması değil, yeni verileri doğru bir şekilde modellemek ve tahmin etmektir. Bir model, eğitim verilerini çok yakından eşleştirebiliyorsa ancak yeni verileri doğru bir şekilde tahmin edemiyorsa, o zaman aşırı uydurmadır. Öte yandan, bir model çok basitse ve verilerdeki kalıpları yakalayamıyorsa yetersiz uyuyor demektir. En iyi yaklaşım, yeni verilere genelleme yapmaya devam ederken eğitim verilerine yeterince uyma arasında bir denge bulmaktır. Bu, hiperparametre ayarı ve uygun kayıp fonksiyonlarının seçimi ile deneme yanılma içerir.

  • 00:50:00 Bu bölümde eğitmen, makine öğrenimi modellerinde yanlılık ve varyans kavramlarını ele alır. Yüksek yanlılığa sahip bir model, eğitim ve test verileri arasında benzer doğruluğa sahip olacaktır çünkü girdiden bağımsız olarak sürekli olarak aynı çıktıyı verir. Öte yandan, yüksek varyanslı bir model verilere çok sıkı oturur ve yeni veriler üzerinde test edildiğinde büyük bir kayba neden olur. Eğitmen, belirli bir görev için bir model seçerken anlaşılması önemli olan, model karmaşıklığı ile genelleme arasındaki değiş tokuşu vurgular. Son olarak eğitmen, öğrencileri sınıfa katılmaya ve makine öğrenimi ve derin öğrenme hakkında bilgi edinmek için çaba sarf etmeye teşvik eder, ancak bu onların en büyük önceliği olmasa bile.
CS 198-126: Lecture 1 - Intro to Machine Learning
CS 198-126: Lecture 1 - Intro to Machine Learning
  • 2022.12.03
  • www.youtube.com
Lecture 1 - Intro to Machine LearningCS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berkeley.e...
 

CS 198-126: Ders 2 - Derin Öğrenmeye Giriş, Bölüm 1



CS 198-126: Ders 2 - Derin Öğrenmeye Giriş, Bölüm 1

Derin Öğrenmeye Giriş konulu bu YouTube dersinde eğitmen, derin öğrenme modellerinin temellerini ve bunların gradyan iniş kullanılarak nasıl eğitileceğini, sinir ağları için farklı yapı taşlarını ve derin öğrenmenin neden bu kadar yaygın bir teknoloji olduğunu tartışıyor. Ders, daha karmaşık ve sofistike bir sinir ağı oluşturmak için algılayıcıyı ve çoklu algılayıcıları istiflemeyi tanıtır ve bir ReLU aktivasyon işlevi kullanan orta katman ile matris çarpımı ve son bir toplama yoluyla çıktının nasıl hesaplanacağını açıklar. Konuşmacı, modelin ne kadar iyi performans gösterdiğini değerlendirmek için ölçüm olarak kayıp fonksiyonlarını ve gradyan iniş optimizasyonu kavramını kullanarak Softmax fonksiyonunun ve ReLU aktivasyon fonksiyonunun kullanımına değiniyor. Son olarak, eğitmen derin öğrenme fikrini ve büyük bir sinir ağının verileri ezberleme yeteneğine rağmen nasıl düşük kayıp sağladığını tartışır. Ayrıca öğretim görevlisi, belirli veri kümeleriyle performanslarını artırmak için sinir ağlarında hiperparametre ayarlama kavramını tanıtır. Hiperparametreler için evrensel değerler olmadığını belirtiyor ve katman numaraları ve aktivasyon fonksiyonları gibi farklı seçenekleri keşfetmeyi öneriyor. Zaman kısıtlamaları nedeniyle ders aniden sona eriyor, ancak öğretim görevlisi öğrencilere yaklaşan kısa sınavın aşırı zor olmayacağı ve GreatScope platformunda erişilebilir olacağı konusunda güvence veriyor.

  • 00:00:00 Bu bölümde, eğitmen izleyicilere önceki dersten, özellikle sapma-varyans takası ve tek-sıcak kodlamalarla ilgili herhangi bir soruları olup olmadığını sorar. Keşfedici veri analizine ve k-katlı çapraz doğrulamaya kısaca değinerek, bu konuların derste fazla işlenmeyeceğini belirtiyorlar. Eğitmen, derin öğrenmeyle ilgili ikinci derse başlamadan önce k-katlamalı çapraz doğrulamanın nasıl çalıştığını detaylandırır.

  • 00:05:00 Dersin bu bölümünde eğitmen, öğrencilerin derin öğrenme modellerinin temelleri ve kademeli iniş kullanarak nasıl eğitilecekleri de dahil olmak üzere, öğrencilerin neler öğrenmeyi bekleyebilecekleri hakkında kısa bir genel bakış sağlar. Ders ayrıca sinir ağları için farklı yapı taşlarını ve derin öğrenmenin neden bu kadar yaygın bir teknoloji olduğunu da kapsar. Derin öğrenmenin ayrıntılarına dalmadan önce, eğitmen vektör nokta çarpımı ve matris vektör çarpımı gibi bazı temel lineer cebir kavramlarını gözden geçirir. Bu kavramlar, derin öğrenme modellerinin iç işleyişini anlamak için önemlidir. Eğitmen, öğrencilerin materyali tam olarak anlamalarına yardımcı olmak için örnekler ve notasyon sağlar.

  • 00:10:00 Videonun bu bölümünde konuşmacı, kara kutu işlevinin parametrelerini temsil etmek için vektörlerin ve matrislerin kullanıldığı derin öğrenmede gösterim ve indekslemeyi tartışıyor. Konuşmacı, matristeki her öğenin bir parametre olduğunu ve bir vektör içinde indeksleme yapılırken bunun tek bir skalaya atıfta bulunduğunu açıklar. Girdilere göre kısmi türev almanın kolaylığını vurgular ve sinir ağlarının arkasındaki motivasyonu açıklar.

  • 00:15:00 Bu bölümde öğretim görevlisi, derin öğrenmenin çözebileceği regresyon, sınıflandırma ve pekiştirmeli öğrenme gibi farklı türdeki sorunları tartışır. Amaç, insan beyninin yeteneklerine benzer, her türlü görev için kullanılabilecek evrensel bir model oluşturmaktır. Bu modeli oluşturmak için öğretim görevlisi, bir nörona benzeyen matematiksel bir formülasyon olan algılayıcıyı tanıtır. Algılayıcı girdileri alır, ağırlıklandırır, ekler ve ardından bir adım işleviyle etkinleştirir. Amaç, karmaşık görünen bir polinom üzerinde doğrusal olmayan regresyon gibi karmaşık sorunları çözebilen bir mini beyin yaratmaktır.

  • 00:20:00 Bu bölümde video, daha karmaşık ve sofistike bir sinir ağı oluşturmak için çoklu algılayıcıları istifleme kavramını tanıtıyor. Video, algılayıcı işleminin girdiler ve ağırlıklar arasında bir nokta çarpım ve bir yanlılık terimi olarak nasıl daha kompakt bir şekilde yazılabileceğini gösterir. Video daha sonra bu işlemi alır ve tek katmanlı bir sinir ağı oluşturmak için çoklu algılayıcılar için tekrarlar. Video, her algılayıcı için ağırlıkların eldeki veri kümesine ve probleme bağlı olarak öğrenilebileceğini not eder.

  • 00:25:00 Bu bölümde öğretim görevlisi, nokta çarpımının, her algılayıcının kendine özgü ağırlıkları ve önyargıları olduğu yerlerde, algılayıcı çıktısını hesaplamak için nasıl çalıştığını açıklar. Vektördeki her öğe, bir skaler eklenmiş iç çarpım olan algılayıcı çıktısını temsil eder. Ders daha sonra bir oyuncak örneği sunarak seyirciden komşusuna dönüp sonucu tahmin etmek için matematiği tartışmasını ister.

  • 00:30:00 Bu bölümde konuşmacı, iki girişli bir giriş katmanı, üç düğümlü bir gizli katman ve bir çıkışlı bir çıkış katmanından oluşan temel bir sinir ağını tanıtır. Konuşmacı, bir ReLU aktivasyon fonksiyonu kullanan orta katman ile matris çarpımı ve son bir toplama ile çıktının nasıl hesaplanacağını gösterir. Konuşmacı daha sonra ileri geçiş notasyonunun nasıl sıkıştırılacağını açıklar ve ağırlıkların sıralanmasıyla ilgili bir soruyu ele alır. Son olarak, konuşmacı sinir ağlarını kullanarak sınıflandırmayı kısaca tanıtır.

  • 00:35:00 Dersin bu bölümünde, konuşmacı bir derin öğrenme modelinin çıktısını yorumlamaktan bahsediyor. Konuşmacı, bir basamağı sınıflandırma ve etiketleri bir sıcak gösterim olarak temsil etme örneğini kullanır. Modelin çıktısını kısıtlamak ve modelin çıktısının, modelin belirli bir sınıfa ait olduğunu düşünme olasılığı olarak yorumlanabilmesini sağlamak için konuşmacı, sinir ağının en ucunda softmax işlemini başlatır. Softmax işlevi, tüm çıktı değerlerinin üstel değerini alır ve ardından sonuçları normalleştirir, tüm öğelerin 0 ile 1 arasında olmasını ve toplamının 1 olmasını sağlar. her bir değer, dolayısıyla derin öğrenmede her zaman belirsizlik olacağı mem.

  • 00:40:00 Bu bölümde öğretim görevlisi, bir değerler vektörü alan ve toplamı bir olan ve tümü sıfırdan büyük olan bir değerler vektörü çıkaran Softmax işlevini tartışır. Bu işlev, ağın çıktılarını farklı sınıflar için olasılıklar olarak yorumlamak istiyorsa, bir sinir ağının sonunda kullanılır. Ders ayrıca, ağa karmaşıklık katan ReLU etkinleştirme işlevinin eklenmesinin nedeninin, ReLU'nun yokluğunda basit bir matris çarpımının yakalayamayacağı karmaşık işlevlerin modellenmesini sağlamak olduğunu da açıklar. Öğretim görevlisi ayrıca, modelin ne kadar iyi performans gösterdiğini değerlendirmek için, ortalama karesel hata gibi kayıp fonksiyonlarının metrik olarak kullanılmasına da değinir. Son olarak, eğimli iniş optimizasyonu kavramını açıklamak için bir tepede olmak ve sadece bir ayağını görerek dibe inmek istemek metaforu tanıtılır.

  • 00:45:00 Bu bölümde öğretim görevlisi, optimizasyonda yokuş tırmanma kavramını ve bunun derin öğrenmeye nasıl uygulandığını tanıtıyor. Sinir ağı bir vektör fonksiyonudur ve en dik yön, vektör fonksiyonunun gradyanıdır. Öğretim görevlisi, en dik yükselişin yönünü bulmanın, çok değişkenli herhangi bir fonksiyonun girdilerine göre gradyanını almanın en dik yönü vereceği çok değişkenli analiz kullanılarak yapılabileceğini açıklıyor. Derin öğrenmede, minimum kaybı optimize eden en iyi ağırlıkları bulma sorunu inanılmaz derecede zordur, bu nedenle öğretim görevlisi, tüm ağırlıkları ve önyargıları rastgele değerlere başlatmamızı ve en dik iniş yönünde küçük adımlar atmamızı önerir. Sürekli değerlendirme ile bu süreç, ağırlıkların ve yanlılıkların doğru seçimine yol açmalıdır.

  • 00:50:00 Bu bölümde, konuşmacı, kayıp fonksiyonunun tüm bireysel parametrelere göre kısmi türevini alarak bir kayıp fonksiyonunda yokuş aşağı nasıl inileceğini tartışır. Konuşmacı ayrıca kayıp fonksiyonunun ağırlıklar ve eğilimler gibi tüm parametrelere bağlı olduğundan bahseder. Bu ağırlıkları ve önyargıları güncellemek için, mevcut değerlerinde değerlendirilen parametrelere göre kayıp fonksiyonunun türevi alınır ve bir öğrenme oranıyla ölçeklenen en büyük değişikliğin aksi yönünde küçük bir adım atılır. Umut, güncellemeden sonra kayıp fonksiyonunun değerinin önemli ölçüde azalmasıdır.

  • 00:55:00 Bu bölümde öğretim görevlisi, tüm veri setinin kaybını azaltmak amacıyla bir örneğin kaybını azaltmak için ağırlıkların nasıl adım atılacağını açıklar. Her bir eğitim örneğinin gradyanı alınır ve ortalaması alındığında, tüm veri setinde en büyük kayıp azalmasıyla sonuçlanabilecek adımdır. Daha fazla hesaplama verimliliği için, onu parçalara ayırın ve toplu gradyan iniş adı verilen küçük parçalara bakın. Öğretim görevlisi, aktivasyon fonksiyonları ve kayıp fonksiyonları gibi ağ yapı taşlarının sürecini detaylandırarak, günün sonunda önemli olan tek şeyin, kayıp fonksiyonunun ne kadar iyi yaptığımızı ölçmesi olduğunu vurgular. Öğretim görevlisi ayrıca, sinir ağındaki tüm ağırlıklar ve önyargılar için en iyi değerleri tanımlamanın somut bir yolu olmadığını, dolayısıyla bu tembel yöntemlerin kullanıldığını belirtiyor. Son olarak, ampirik bulguların gösterdiği gibi, derin öğrenme fikrinin ve büyük bir sinir ağının verileri ezberleme yeteneğine rağmen nasıl düşük kayıp sağladığına dair bir açıklama sağlanmaktadır.

  • 01:00:00 Bu bölümde öğretim görevlisi, belirli bir veri kümesiyle performansını optimize etmek için bir sinir ağındaki hiperparametreleri ayarlama sürecini tartışıyor. Tüm veri kümeleri için çalışacak sabit bir hiperparametre kümesi olmadığını kabul ediyor ve bunun yerine katman sayısı, aktivasyon işlevleri vb. gibi parametreler için farklı değerlerin test edilmesini öneriyor. yakında bir test yayınlanacak, ancak çok zorlayıcı olmayacak ve geniş bir kapsamda sunulacak.
CS 198-126: Lecture 2 - Intro to Deep Learning, Part 1
CS 198-126: Lecture 2 - Intro to Deep Learning, Part 1
  • 2022.12.03
  • www.youtube.com
Lecture 2 - Intro to Deep Learning, Part 1CS 198-126: Modern Computer Vision and Deep LearningUniversity of California, BerkeleyPlease visit https://ml.berke...