6 पॉइंट द्वारा GN⁺ 2023-11-20 | 2 टिप्पणियां | WhatsApp पर शेयर करें
  • University of Geneva 14x050 के लिए व्यवस्थित डीप लर्निंग के सार्वजनिक lecture materials हैं, जिनमें François Fleuret की slides, handouts और recorded videos एक ही जगह देखे जा सकते हैं
  • PyTorch examples के आधार पर tensor operations, automatic differentiation, gradient descent से लेकर generative, recurrent और attention models तक, शुरुआती लोगों के लिए follow करने लायक व्यापक दायरा कवर करता है
  • पूरा PDF archive 1107 slides के पैमाने का है, और screencast subtitles OpenAI Whisper से automatically generated ZIP file के रूप में उपलब्ध हैं
  • Practical 1~6, solution code और common Python prologue साथ में दिए गए हैं, जिससे MNIST/CIFAR10 loading और preprocessing options को सीधे practice में इस्तेमाल किया जा सकता है
  • Linear algebra, differentiation, Python, probability/statistics, optimization, algorithms और signal processing की बुनियादी समझ जरूरी है, और सामग्री CC BY-NC-SA 4.0 terms के तहत वितरित की गई है

कोर्स overview

  • Deep Learning Course François Fleuret के University of Geneva 14x050 Deep Learning course की slides और recordings को इकट्ठा करके बनाई गई page है
  • यह PyTorch framework examples सहित डीप लर्निंग introduction lectures के रूप में संरचित है
  • Lecture का scope निम्न अक्षों के साथ आगे बढ़ता है
    • Machine learning के लक्ष्य और मुख्य tasks
    • Tensor operations
    • Automatic differentiation और gradient descent
    • Deep learning-specific techniques
    • Generative models, recurrent models, attention models
  • अलग material के रूप में "The Little Book of Deep Learning" भी उपलब्ध है
    • यह STEM background वाले readers के लिए mobile-phone format में छोटा deep learning primer है
  • यह course पहली बार 2018 में Idiap Research Institute में developed हुआ था, और 2022 तक École Polytechnique Fédérale de Lausanne में EE-559 के रूप में पढ़ाया गया

Materials format और download

  • Lecture के लिए slides PDF presentation के अनुसार landscape orientation और overlays का उपयोग करते हैं
  • Handout PDF portrait orientation में compile होते हैं, और overlay effects के बिना extra notes शामिल करते हैं
  • Screencasts को browser streaming और downloadable mp4 files के रूप में देखा जा सकता है
  • पूरा PDF archive इन files से मिल सकता है
  • Screencast subtitles OpenAI के Whisper से automatically generated हैं, और dlc-video-subtitles.zip file size 502.1Kb है

13 units का flow

  • पूरा lecture material 13 बड़े units से बना है, और हर unit के साथ slide count और video duration भी दिया गया है
  • शुरुआती भाग deep learning और machine learning की basic concepts समझाने पर focus करता है
    • Introduction: neural networks से deep learning तक, current applications और success stories, tensor basics और linear regression, high-dimensional tensors, tensor internal structure
    • Machine learning fundamentals: loss और risk, overfitting और underfitting, bias-variance dilemma, evaluation protocol, clustering और embeddings
    • Multi-layer perceptron and back-propagation: perceptron, linear classifier का probabilistic view, linear separability, MLP, gradient descent, backpropagation
  • बीच का भाग PyTorch usage और deep learning layers/learning techniques की ओर बढ़ता है
    • Graphs of operators, autograd, and convolutional layers: DAG network, Autograd, PyTorch modules और batch processing, convolution, pooling, PyTorch module writing
    • Initialization and optimization: cross-entropy loss, stochastic gradient descent, PyTorch optimizer, L2/L1 penalty, parameter initialization, architecture selection और learning protocol, Autograd function writing
    • Going deeper: depth के फायदे, Rectifier, Dropout, Batch Normalization, Residual Network, GPU usage
  • अंतिम भाग generative models, computer vision, model internals analysis और sequence models तक फैलता है
    • Autoencoders: Transposed convolution, Deep Autoencoder, Denoising Autoencoder, Variational Autoencoder
      • VAE screencast up to date नहीं है, इसलिए slides देखनी चाहिए
    • Computer vision: computer vision tasks, image classification networks, object detection networks, semantic segmentation networks, DataLoader और neuro-surgery
    • Under the hood: parameters देखना, activations देखना, input से processing visualization, input optimization
    • Autoregression and Normalizing Flows: autoregression, Causal convolution, Non-volume preserving network
    • Generative Adversarial Networks: GAN, Wasserstein GAN, Conditional GAN और image transformation, model persistence और checkpoints
    • Recurrent models and NLP: RNN, LSTM और GRU, word embeddings और translation
    • Attention models: memory और sequence translation के लिए attention, attention mechanism, Transformer Network
      • Attention unit screencast up to date नहीं है, इसलिए slides देखनी चाहिए

Practice materials और Python prologue

  • Practice Practical 1~6 के रूप में उपलब्ध है, और हर PDF के साथ solution code linked है
  • Practice के लिए Python prologue dlc_practical_prologue.py के रूप में दिया गया है
  • prologue command-line arguments handle करता है
    • --full: पूरा dataset इस्तेमाल करें
    • --tiny: quick check के लिए बहुत छोटा dataset इस्तेमाल करें
    • --seed SEED: random seed set करें; 0 से कम होने पर seeding नहीं होती
    • --cifar: MNIST की जगह CIFAR dataset इस्तेमाल करें
    • --data_dir DATA_DIR: PyTorch data location set करें; default $PYTORCH_DATA_DIR या ./data है
  • load_data(cifar=None, one_hot_labels=False, normalize=False, flatten=True) function जरूरत पड़ने पर data download करता है, और flatten true होने पर images को 1D vector में बदलता है
  • Return values चार tensors हैं: train_data, train_target, test_data, test_target
  • cifar=True होने पर CIFAR10 इस्तेमाल करता है, False होने पर MNIST, और None होने पर --cifar argument follow करता है
  • one_hot_labels=True होने पर targets को classes की संख्या जितने columns वाले 2D torch.Tensor में बदलता है, सही answer की position को 1 और बाकी को -1 set करता है
  • normalize=True होने पर training data के mean और variance के आधार पर data tensor normalize करता है
  • flatten=True होने पर data N × D 2D tensor बनता है, और false होने पर N × C × H × W 4D tensor बनता है
  • Basic example MNIST इस्तेमाल करता है, और --full न होने पर training 1000 और test 1000 samples तक reduce हो जाता है; input size torch.Size([1000, 784]) है

Prerequisites और reference docs

  • Prerequisites में ये areas शामिल हैं
    • Linear algebra: vectors, matrices, Euclidean space
    • Differentiation: Jacobian, Hessian, Chain rule
    • Python programming
    • Probability और statistics basics: discrete/continuous distributions, law of large numbers, conditional probability, Bayes, PCA
    • Optimization basics: minimum की concept, gradient descent
    • Algorithms basics: computational cost
    • Signal processing basics: Fourier transform, wavelet
  • Reference docs के रूप में Python, Jupyter notebook और PyTorch docs देखे जा सकते हैं

उपयोग license

  • Page की अपनी सामग्री Creative Commons BY-NC-SA 4.0 International License के तहत वितरित है
  • नियमित academic education purpose के लिए उपयोग की अनुमति है, लेकिन यह condition साफ लिखी है कि इसे books, बहुत अधिक ads वाले YouTube, या अन्य monetization models में इस्तेमाल नहीं किया जाएगा

2 टिप्पणियां

 
bigtallee 2023-11-20

अफ़सोस है कि लेक्चर में subtitles नहीं हैं..

 
GN⁺ 2023-11-20
Hacker News की राय
  • Stanford का YouTube चैनल भी देखने लायक है। उन्होंने मशीन लर्निंग lectures की पूरी series के 19 वीडियो अपलोड किए हैं
    https://m.youtube.com/playlist?list=PLoROMvodv4rNyWOpJg_Yh4NSqI4Z4vOYy
    चैनल पर जाएँ तो computer science lectures भी काफ़ी संख्या में हैं, और quality भी अच्छी है

    • यह Stanford course काफ़ी advanced और intense लगता है
  • कई अच्छे resources आए हैं, लेकिन लगता है सूची में Understanding Deep Learning छूट गई है
    Simon J.D. Prince ने इस किताब के साथ सचमुच शानदार काम किया है। सिर्फ़ मुख्य content ही नहीं, हर chapter के notes सीधे advanced references तक ले जाते हैं, समझ को ठीक से परखने वाली exercises हैं, और concepts को real code में implement करने वाली बेहतरीन notebooks भी दी गई हैं
    अगर आप deep learning की class पढ़ाते हैं तो छात्रों को देने के लिए यह free practice material के रूप में भी अच्छा है, हालांकि शायद यह community इसका मुख्य target नहीं है
    [0] https://udlbook.github.io/udlbook/

  • अगर इस course में आपकी रुचि है, तो उसी लेखक की Little Book of Deep Learning भी ज़रूर देखनी चाहिए
    https://fleuret.org/francois/lbdl.html

  • एक और अच्छा resource Yann LeCun और Alfredo Canziani का NYU Deep Learning course है, और पूरा YouTube पर देखा जा सकता है
    https://atcold.github.io/NYU-DLSP20/
    https://www.youtube.com/playlist?list=PLLHTzKZzVU9eaEyErdV26ikyolxOsz6mq

  • Practical Deep Learning for Coders भी संदर्भ के लिए अच्छा है
    https://course.fast.ai/

    • यह देखकर झटका लगा कि Jeremy Howard AI के top 100 लोगों की list में नहीं थे। यह course वाकई शानदार है
  • क्या कोई अच्छा, deep course है जिसमें वीडियो देखने की ज़रूरत न पड़े?

  • Andrej Karpathy के इस lecture set की भी सिफ़ारिश करूँगा। पहला lecture beginners के नज़रिए से भी काफ़ी accessible है
    https://karpathy.ai/zero-to-hero.html

    • जिन लोगों के पास ज़्यादा advanced math की कमी है, उनके लिए भी ठीक रहेगा?
  • Sebastian Raschka का यह course भी कुल मिलाकर approachable है। Python या कोई मिलती-जुलती language थोड़ी आती हो तो follow किया जा सकता है
    https://youtube.com/playlist?list=PLTKMiZHVd_2KJtIXOW0zFhFfBaJJilH51&si=ocsN2zSPN7YsrGiY

  • कुछ साल पुराने, skills थोड़े rusted हो चुके full-stack developer के तौर पर इस field में उतरना तो चाहता हूँ, लेकिन 6 महीने की पढ़ाई से किसी भी स्तर पर entry संभव है या नहीं, इसका बिल्कुल अंदाज़ा नहीं है

    • अगर आपको याद है कि differentiation क्या होती है और आप कुछ हद तक math और probability कर सकते हैं, तो यह पूरी तरह संभव है। मुझे लगता है कि इसका बड़ा हिस्सा React से भी ज़्यादा आसानी से सीखा जा सकता है
      entry curve उतना steep नहीं है, लेकिन कुल समय ज़्यादा लग सकता है, इसलिए यह sprint से ज़्यादा marathon जैसा है