Dr. Data Science
Dr. Data Science
  • Видео 75
  • Просмотров 282 395
PyTorch Step-by-Step Series: Build an Image Classifier FROM SCRATCH
#pytorch #python #artificialintelligence
Notebook Link: github.com/farhad-pourkamali/PyTorch-Step-by-Step/blob/main/Intro.ipynb
In today's video, we’re diving deep into PyTorch and how to use torch.nn to build an image classifier with two hidden layers. I’ll walk you through writing a simple but powerful training loop to train and validate the model. By the end of this video, you’ll have a clear understanding of how to structure your code and monitor the performance of your neural network step by step. So, if you’re ready to take your PyTorch skills to the next level, let’s get started!
Просмотров: 85

Видео

Statistical Machine Learning, Week 8: Mathematical Building Blocks of Neural Networks w/ XOR Example
Просмотров 2034 часа назад
#neuralnetworks #artificialintelligence #mathematics Feedforward neural networks can be visualized as a series of nested functions, where each layer in the network represents a function. The input data is fed into the first layer, and the output of each layer becomes the input for the next. Within each layer, a linear transformation (like multiplying the input by weights and adding a bias) is a...
Statistical Machine Learning, Week 7, Part a: Evaluating Classification Models (Decision Boundary)
Просмотров 1929 часов назад
#artificialintelligence #machinelearning #datascience Evaluating classification models using decision boundaries in 2D provides a visual insight into how well a model separates different classes based on feature space. In 2D, the decision boundary represents the line or curve that distinguishes between two or more classes, and analyzing its shape and positioning can reveal model behavior, such ...
Statistical Machine Learning, Week 7, Part b: Evaluating Classification Models (ROC/PR curves)
Просмотров 739 часов назад
#artificialintelligence #machinelearning #datascience Evaluating classification models using decision boundaries in 2D provides a visual insight into how well a model separates different classes based on feature space. In 2D, the decision boundary represents the line or curve that distinguishes between two or more classes, and analyzing its shape and positioning can reveal model behavior, such ...
Statistical Machine Learning, Week 6, Part b: Loss Function Derivation for Classification Problems
Просмотров 14014 дней назад
#machinelearning #lossfunction #deeplearning Logistic regression is used for classification problems where the goal is to predict the probability of a binary outcome (e.g., success/failure) Cross-entropy loss, commonly used in classification tasks, measures the difference between two probability distributions: the predicted probability distribution (output of the model) and the true distributio...
Statistical Machine Learning, Week 6, Part a: Loss Function Derivation for Classification Problems
Просмотров 7014 дней назад
#artificialintelligence #machinelearning #classification Logistic regression is used for classification problems where the goal is to predict the probability of a binary outcome (e.g., success/failure) Cross-entropy loss, commonly used in classification tasks, measures the difference between two probability distributions: the predicted probability distribution (output of the model) and the true...
Statistical Machine Learning, Week 5: Loss Function Optimization using Gradient Descent
Просмотров 346Месяц назад
#machinelearning #gradientdescent #optimization Gradient descent is a fundamental optimization algorithm widely employed in machine learning to iteratively minimize a loss function. It operates by calculating the gradient of the loss function with respect to the model's parameters and then updating those parameters in the direction opposite to the gradient. This process continues until converge...
Statistical Machine Learning, Week 4: Loss Function Derivation for Regression Problems (NLL loss)
Просмотров 171Месяц назад
#machinelearning #regressionanalysis #optimization Loss functions are crucial in machine learning because they measure how well a model's predictions align with the actual outcomes. By quantifying the difference between predicted and true values, loss functions guide the training process, allowing algorithms to adjust model parameters to minimize errors. GitHub: github.com/farhad-pourkamali/MAT...
Statistical Machine Learning, Week 3: Tensor, Gradient, and Automatic Differentiation (GradientTape)
Просмотров 165Месяц назад
#tensorflow #gradient #coding - Tensors provide a unified and efficient data structure to represent and process different types of data (tabular, image, time series) in machine learning, allowing for seamless integration with mathematical operations and optimization algorithms essential for training models. - tensors - tensor operations - differentiation: finding the derivative, or rate of chan...
Statistical Machine Learning, Week2: Python Programming for Machine Learning, Part 1: OOP
Просмотров 425Месяц назад
#machinelearning #python #oop Object-Oriented Programming (OOP) - Emphasizes the organization of code into reusable, self-contained units called `objects`. - Program is a collection of interacting `objects`. - Data (known as `attributes`) and functions (known as `methods`) are encapsulated within `objects`. Object-Oriented Programming (OOP) Components: - Class: - Blueprint or template for creat...
Statistical Machine Learning, Week 1: Mathematical Building Blocks of Machine Learning
Просмотров 6262 месяца назад
#machinelearning #deeplearning #coding GitHub link: github.com/farhad-pourkamali/MATH6388Online/blob/main/Week1.ipynb Machine learning moves beyond the confines of traditional statistical techniques and optimization algorithms Nonlinearity and complexity: Unlike many traditional models that assume linear relationships, machine learning can capture complex, nonlinear patterns within data. Adapta...
Install PyTorch on Apple Silicon Macs (M1, M2, M3) and Check for MPS Availability in 2024
Просмотров 1,5 тыс.2 месяца назад
#pytorch #python #deeplearning To install PyTorch on a Mac with Apple silicon, follow these steps: - Ensure you have macOS 12.3 or later installed. - Make sure you have Python 3.7 or later installed. You can check your Python version by running python3 version in your terminal. - Install Xcode command-line tools: xcode-select install Next - Install PyTorch: python3 -m pip install torch torchvis...
Install TensorFlow/Keras on Apple Silicon Macs (M1, M2, M3) with 4 Terminal Commands in 2024
Просмотров 1 тыс.2 месяца назад
#tensorflow #macos #deeplearning TensorFlow can be installed on Apple silicon Macs using the following steps: xcode-select install python -m pip install -U pip python -m pip install tensorflow-macos python -m pip install tensorflow-metal
NVIDIA System Management Interface (nvidia-smi) to monitor NVIDIA GPU devices
Просмотров 3852 месяца назад
#gpu #deeplearning #nvidia NVIDIA-SMI (System Management Interface) is a command-line utility that serves as your window into the world of your NVIDIA GPU. With a single command, you can uncover a treasure trove of information about your GPU's performance, temperature, power usage, and more. It's a versatile tool that can help you monitor your GPU's health, diagnose issues, and optimize your sy...
Full Python Programming Course for Data Science & Machine Learning w/ Jupyter Notebooks & Exercises
Просмотров 1,5 тыс.6 месяцев назад
#machinelearning #datascience #python GitHub Repo containing Jupyter notebooks: github.com/farhad-pourkamali/ProgrammingForDataScience Full Python Programming Course for Data Science and Machine Learning, 11 hours Topics: - Python Basics: Arithmetic/Comparison/Logical Operators - Python Data Structures: List, Tuple, Set, Dictionary - Python Data Structures: NumPy ndarray - Functions in Python: ...
Programming for Data Science, Lec 15: Neural Networks, TensorFlow AutoDiff, and Keras
Просмотров 1896 месяцев назад
Programming for Data Science, Lec 15: Neural Networks, TensorFlow AutoDiff, and Keras
Programming for Data Science,Lec 14: Classification in Machine Learning using scikit-learn (sklearn)
Просмотров 2006 месяцев назад
Programming for Data Science,Lec 14: Classification in Machine Learning using scikit-learn (sklearn)
Programming for Data Science, Lec 13: Regression in Machine Learning using scikit-learn (sklearn)
Просмотров 2076 месяцев назад
Programming for Data Science, Lec 13: Regression in Machine Learning using scikit-learn (sklearn)
Programming for Data Science, Lec 12: Machine Learning in Python using scikit-learn (sklearn)
Просмотров 4496 месяцев назад
Programming for Data Science, Lec 12: Machine Learning in Python using scikit-learn (sklearn)
Programming for Data Science, Lec 11: Pandas DataFrame (data import, access, filtering, plotting)
Просмотров 2066 месяцев назад
Programming for Data Science, Lec 11: Pandas DataFrame (data import, access, filtering, plotting)
Programming for Data Science, Lec 10: Data Visualization and Plotting in Python Using Matplotlib
Просмотров 2056 месяцев назад
Programming for Data Science, Lec 10: Data Visualization and Plotting in Python Using Matplotlib
Programming for Data Science, Lec 9: Modules and Packages in Python (math, time, numpy, sklearn)
Просмотров 3217 месяцев назад
Programming for Data Science, Lec 9: Modules and Packages in Python (math, time, numpy, sklearn)
Programming for Data Science, Lec 8: Object-Oriented Programming, Inheritance and super() function
Просмотров 1997 месяцев назад
Programming for Data Science, Lec 8: Object-Oriented Programming, Inheritance and super() function
Programming for Data Science, Lec 7: Object-Oriented Programming, Class and Constructor in Python
Просмотров 3277 месяцев назад
Programming for Data Science, Lec 7: Object-Oriented Programming, Class and Constructor in Python
Programming for Data Science, Lec 6: Iteration (for/while loops, list comprehension, break/continue)
Просмотров 1527 месяцев назад
Programming for Data Science, Lec 6: Iteration (for/while loops, list comprehension, break/continue)
Programming for Data Science: Lec 5, Branching Statements in Python ('if', 'elif', and 'else')
Просмотров 1357 месяцев назад
Programming for Data Science: Lec 5, Branching Statements in Python ('if', 'elif', and 'else')
Programming for Data Science: Lec 4, Built-in/Custom Functions in Python, and Lambda Functions
Просмотров 1888 месяцев назад
Programming for Data Science: Lec 4, Built-in/Custom Functions in Python, and Lambda Functions
Programming for Data Science, Lec 3: NumPy ndarray, np.arange, np.random, np.linalg, np.concatenate
Просмотров 4148 месяцев назад
Programming for Data Science, Lec 3: NumPy ndarray, np.arange, np.random, np.linalg, np.concatenate
Programming for Data Science, Lec 2: Python Data Structures, List, Tuple, Set, and Dictionary
Просмотров 3698 месяцев назад
Programming for Data Science, Lec 2: Python Data Structures, List, Tuple, Set, and Dictionary
Programming for Data Science, Lec 1: Python Basics (Arithmetic/Comparison/Logical Operators)
Просмотров 6908 месяцев назад
Programming for Data Science, Lec 1: Python Basics (Arithmetic/Comparison/Logical Operators)

Комментарии

  • @Slim
    @Slim 3 дня назад

    Spent the past weeks trying to grasp backpropagation mathematically. Spent countless days on videos and textbooks. This is by far the most intuitive explanation. Just subbed. Thank you.

    • @DrDataScience
      @DrDataScience 3 дня назад

      I am glad this was helpful and thank you for subscribing.

  • @TalibHussain-ih1ev
    @TalibHussain-ih1ev 4 дня назад

    Your explanation always stands first

  • @guliverpotsangbam3292
    @guliverpotsangbam3292 4 дня назад

    will it work if I run a .py file with normal tensorflow written on windows?

  • @shyam2469
    @shyam2469 6 дней назад

    what is need for installing Xcode ? can't we install pytorch without that ?

    • @DrDataScience
      @DrDataScience 5 дней назад

      Some PyTorch installation methods (especially if you're building from source or dealing with certain dependencies) might require Xcode's Command Line Tools. These tools include compilers and other utilities needed to build software from its source code.

  • @ItahangLimbu
    @ItahangLimbu 9 дней назад

    24:10 y.backward(torch.ones(3)) the input to y.backward is upstream gradient and the size of the upstream gradient should be same as the size of y and in previous cases we dont need insert upstream gradient cause y,backward() same as y.backward(torch.tensor([1]))

  • @dimitriywhite7728
    @dimitriywhite7728 12 дней назад

    it doesn't works pip install tensorflow-metal ERROR: Could not find a version that satisfies the requirement tensorflow-metal (from versions: none) ERROR: No matching distribution found for tensorflow-metal

    • @DrDataScience
      @DrDataScience 12 дней назад

      What is the version of your Python?

  • @janyajoshi
    @janyajoshi 14 дней назад

    I see this mps available, but still get CUDA error AssertionError: Torch not compiled with CUDA enabled

    • @DrDataScience
      @DrDataScience 14 дней назад

      Good question! CUDA is NVIDIA's parallel computing platform and API that enables GPUs to significantly accelerate computations. While your Mac has the MPS (Metal Performance Shaders) backend for hardware acceleration, it doesn't inherently support CUDA.

  • @basitkram
    @basitkram 16 дней назад

    Which book are you following?

    • @DrDataScience
      @DrDataScience 16 дней назад

      I am using multiple books but this one is my favorite: probml.github.io/pml-book/book1.html

  • @TheGroundskeeper
    @TheGroundskeeper 23 дня назад

    It’s almost impossible to listen to you, it sounds like your mouth is full of marbles

  • @moatazomar-dl4uo
    @moatazomar-dl4uo 23 дня назад

    how model(x) work , is he should right model.forward(x)?????????

  • @adnanhashem98
    @adnanhashem98 24 дня назад

    I want to make a note on the use of `super` method in the ``__init__`` method of the subclass. There's an alternative, less cumbersome syntax to use `super`: you can use `super().__init__()` instead of `super(NeuralNetwork, self).__init__()` (see timestamp 17:16). These expressions are both equivalent.

  • @adnanhashem98
    @adnanhashem98 24 дня назад

    A really great thing about your tutorials is that you choose to explain on *simple* examples that has enough complexity to teach the concept, but simple enough so we can really grasp the concept. Explaining a concept on simple (enough) example that still has the essential characteristics of larger networks is key to understanding (in my opinion)! Thank you!

  • @adnanhashem98
    @adnanhashem98 25 дней назад

    In my opinion, what makes this a great video is its (quick) review of the prerequisite knowledge, and including simple examples to that we can compute by hand and then verify that we actually get the same thing when using PyTorch. Thanks a lot!

    • @DrDataScience
      @DrDataScience 25 дней назад

      Thank you for the nice comment! Glad this video was helpful.

  • @mahmoudramadan9193
    @mahmoudramadan9193 27 дней назад

    Very informative , Thanks <3

  • @7ishalganguly800
    @7ishalganguly800 Месяц назад

    thank you so much bro.... after so many trial error method i was able to install . thanks a lot man

  • @miltondossantos9876
    @miltondossantos9876 Месяц назад

    Thanks Sir.

  • @CadelBL
    @CadelBL Месяц назад

    num_inputs and loss() are both undefined in your example code

    • @DrDataScience
      @DrDataScience Месяц назад

      @CadelBL: num_inputs is 200 based on time 9:42 of the video. And the loss function is the squared loss that we defined and also other variants for regularization.

    • @CadelBL
      @CadelBL Месяц назад

      @@DrDataScience Thanks for the swift reply, guess that snippet didn't make it into the describtion to copy from. Code for setting up test/train_iter also got lost

    • @CadelBL
      @CadelBL Месяц назад

      @@DrDataScience But anyways thanks for providing tutorials! :)

    • @DrDataScience
      @DrDataScience Месяц назад

      You are welcome. I will have a new series on PyTorch coming soon (with better documentation)

  • @estebann
    @estebann Месяц назад

    For some reason I can only see and install pytorch 2.2.2 as latest. I am on same python version, Sonoma 14.5, M3 24gb.

    • @DrDataScience
      @DrDataScience Месяц назад

      Interesting! I checked the PyTorch website again and the last version is 2.4, which was released on July 24: github.com/pytorch/pytorch/releases/tag/v2.4.0

    • @estebann
      @estebann Месяц назад

      @@DrDataScience yes! I am having a weird issue, the python thwt i am getting installed is for x86_64 , I cannot get brew to install the arm64 version, so for x86_64 with rosetta, only 2.2.2 is available

    • @estebann
      @estebann Месяц назад

      @@DrDataScience I was able to solve this. For some reason brew kept on installing x86_64 version of python, which only has support up to the 2.2.2 pytorch version. I was able to force reinstall brew, and force every install the arm64 version with the "arch --arm64" command. Then I was able to have python compatible with 2.4 version of pytorch.

    • @blademeng5368
      @blademeng5368 13 дней назад

      @@estebann Hi, I got same problem. Already upgrade the brew to latest one, but still can only install 2.2.2 pytorch version. I have downloaded the latest 2.4.1 torch from web, and try to install it by "pip install torch-2.4.1-****.whl", unfortunately it says: ERROR: torch-2.4.1-cp39-none-macosx_11_0_arm64.whl is not a supported wheel on this platform. Not sure why. My MBP is based on M3 sillion.

    • @estebann
      @estebann 9 дней назад

      ​@@blademeng5368 I spent a couple of hours trying to reinstall brew. I would insist you using "arch --arm64" to force using the ARM version of everything from brew to python. That was the only way. That you can only get 2.2.2 is a tell-tell sign that you are having the exact same issue and for some reason only trying to install x64_64 , for which at this moment the latest version is 2.2.2

  • @feramuzalacal8998
    @feramuzalacal8998 2 месяца назад

    nice video, birader aksanınızdan anladım

  • @omarfaroukzouak8089
    @omarfaroukzouak8089 2 месяца назад

    Great video with clear explanation! Thank you very much!

  • @user-wr4yl7tx3w
    @user-wr4yl7tx3w 2 месяца назад

    how about for pytorch?

    • @DrDataScience
      @DrDataScience 2 месяца назад

      I'll make a video for that too!

  • @joinaiwms
    @joinaiwms 2 месяца назад

    the best course so far , thanks man

  • @baiwfg2
    @baiwfg2 2 месяца назад

    What does "measure the agreement of the assignments" mean ? agreeement sounds like similarity ? Can we say the larger NMI is, the more similar between the two assignments ?

  • @nitinsrivastav3541
    @nitinsrivastav3541 3 месяца назад

    thanks man i was finding it extremely difficult to understand the maths behind backward and detach (although i have doen it in my high school) because no one was explaining them in this depth.........love you 😍😍

  • @shahulrahman2516
    @shahulrahman2516 3 месяца назад

    Great video

  • @aszx-tv4pq
    @aszx-tv4pq 4 месяца назад

    HI there, very happy with this channel could you explain a bit simpler what is pipeline part!

  • @mr.adamprince4853
    @mr.adamprince4853 4 месяца назад

    Thank you sir

  • @rishidixit7939
    @rishidixit7939 4 месяца назад

    Why are all arrays converted to column matrices while applying sklearn

    • @DrDataScience
      @DrDataScience 4 месяца назад

      Because each column corresponds to a feature or attribute of your data set. Thus, the number of elements in that column vector is equal to the number of samples.

  • @ramincybran
    @ramincybran 4 месяца назад

    thnks myfriend - in last section - whats is the z.sum ? what is the the (SUM) function for ? why yyou put the sum ?

  • @502amvideos8
    @502amvideos8 4 месяца назад

    I read somewhere else that the normalized laplacian is Lnorm = D^(-1/2) L D^(-1/2) with L = D - W can you clarify why it is different here in your explanation please, thanks for you videos

    • @DrDataScience
      @DrDataScience 4 месяца назад

      It's the same thing! If you simplify it, you get the same thing.

  • @tanweerashif
    @tanweerashif 4 месяца назад

    This is the best explanation over whole YT.

  • @ArghyaPratihar-x1t
    @ArghyaPratihar-x1t 5 месяцев назад

    why are you taking anisotropic distribution and taking the dot product in the beginning ?

    • @DrDataScience
      @DrDataScience 5 месяцев назад

      If we use an isotropic distribution, then K-means clustering is adequate and there is no need to use Spectral Clustering.

  • @ahlem4162
    @ahlem4162 5 месяцев назад

    These videos are so well made and offer an exhaustive and detailled explanation. I wish there would be more!

    • @DrDataScience
      @DrDataScience 5 месяцев назад

      Thanks for the comment! Hopefully, more videos are coming soon.

  • @itsamankumar403
    @itsamankumar403 5 месяцев назад

    TYSM :)

  • @ChristopherKennedy-fm2lo
    @ChristopherKennedy-fm2lo 5 месяцев назад

    You're the goat

  • @quaterni0
    @quaterni0 5 месяцев назад

    Thank you for making this video!

  • @kuldeepkaur-do2ex
    @kuldeepkaur-do2ex 5 месяцев назад

    What is phi with a1? Is it activation function.?

  • @phisit8813
    @phisit8813 6 месяцев назад

    Thanks for sharing :) would be grate if there's a time stamp :(

  • @llothar68
    @llothar68 6 месяцев назад

    Do i need to understand all this to use neural networks? I'm scared shitless but my curiculuum says i have to learn it

  • @hieuluc8888
    @hieuluc8888 6 месяцев назад

    I couldn't really understand what a computational graph was until I watched this video. Thank you very much.

  • @Harish-ou4dy
    @Harish-ou4dy 6 месяцев назад

    Why did we not use the tape.watch function while implementing the linear regression via neural net?

    • @DrDataScience
      @DrDataScience 6 месяцев назад

      Because we used a Variable rather than a Constant.

  • @zxborg9681
    @zxborg9681 6 месяцев назад

    Great explanation, many thanks!

  • @fritzmortadella938
    @fritzmortadella938 6 месяцев назад

    Great work!!! Many thanks to you, man. The whole RUclips couldn't give me such comprehensive course as yours!

    • @DrDataScience
      @DrDataScience 6 месяцев назад

      Thank you very much for the comment!

  • @user-db2zx3ox7u
    @user-db2zx3ox7u 6 месяцев назад

    very good thanks

  • @parthjangid3587
    @parthjangid3587 6 месяцев назад

    Thank you🎉

  • @aytakgh5634
    @aytakgh5634 7 месяцев назад

    thank you very much

  • @sadrahakim1272
    @sadrahakim1272 7 месяцев назад

    Thank you for your video. It would be perfect if you could point to the places that you are explaining. When I am watching the video, I can't understand what part of the slide you are talking about.

    • @DrDataScience
      @DrDataScience 7 месяцев назад

      Fair point! Thank you for the suggestion.

  • @mitchellhyland4395
    @mitchellhyland4395 7 месяцев назад

    Incredible video. Thank you for sharing this information for free!

  • @williammartin4416
    @williammartin4416 7 месяцев назад

    Very helpful

  • @williammartin4416
    @williammartin4416 7 месяцев назад

    Very helpful