After 13 days of learning, I have finally completed the course. A special thank you to Mr. Bourke for creating a great course. You are a fantastic teacher, and I hope the knowledge you imparted will help me a lot in my self-study journey to become a skilled data scientist or machine learning engineer in the future. Day 1: 1:10:00 Day 2: 2:53:03 Day 3: 3:23:28 Day 4 : 4:17:22 Day 5 : 6:02:27 Day 6 : 07:02:33 Day 7+8 : 10:57:58 Day 9: 14:00:47 Day 10: 15:39:43 Day 11: 19:37:54 Day 12: 21:38:22 Day 13 : Finished
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
Just finished this course, broke it down took well over a month and a half but totally worth it. The way Daniel builds momentum and make you practice it again and again is just amazing, the curriculum is fantastic, This is pure gold.
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
No, because nowadays you NEED to know that stuff+10 programming languages just to pay the rent. Yes we can learn this, but we are also forced to, in order to survive.
Selective learning if you have less time 0:43:18 7. What is/why PyTorch? 0:53:33 8. What are tensors? 1:14:28 12. Getting setup 1:22:08 13. Introduction to tensors 1:35:35 14. Creating tensors 2:03:26 18. Tensor attributes (information about tensors) 2:11:50 19. Manipulating tensors 2:17:50 20. Matrix multiplication 3:23:28 27. Selecting data (indexing) 4:17:27 33. Introduction to PyTorch Workflow 4:37:12 36. Creating training and test sets (the most important concept in ML) 5:49:31 44. Setting up a loss function and optimizer 6:02:24 45. PyTorch training loop intuition 6:49:31 49. Writing testing loop code 7:44:28 54. Putting everything together 8:32:00 60. Introduction to machine learning classification 8:41:42 61. Classification input and outputs 8:50:50 62. Architecture of a classification neural network 9:09:41 64. Turning our data into tensors 9:25:58 66. Coding a neural network for classification data 9:43:55 68. Using torch.nn.Sequential 9:57:13 69. Loss, optimizer and evaluation functions for classification 10:12:05 70. From model logits to prediction probabilities to prediction labels 10:28:13 71. Train and test loops 10:57:55 73. Discussing options to improve a model
I'm planning to learn the 25 hours course within 4 weeks. 2023-08-01: 1:14:30 2023-08-02: 4:12:33 2023-08-03: 4:45:33 2023-08-08 8:13:32 2023-08-09 13:57:46 2023-08-10 17:13:36 2023-08-14 19:26:30 2023-08-15 21:43:24 2023-08-16 24:00:00 2023-08-17 Completed Thank you Daniel for this great course!
@@ohyeah2477 Depends on your experience in Deep Learning or Pytorch. It's absolutely worth it for a beginner. He codes line by line so you can follow up easily. This is mostly a practical guide. But in case you are interested in the theories .He also recommends many reading materials which I find very useful. As for me, I already had some experience with deep learning but not Pytorch, so I used 1.5x to 2.0x speed most of times. If you find the video too easy, you can learn from his website instead, the content is more condensed there.
(In case anybody had this question from the linear regression model) ~ 6:49:00 How does the loss function keep track of which model it is for? This question stems from loss_fn itself is not defined in a way that conects it to a model(e.g. nn.MSELoss) and also loss itself is calculated only on training ourputs and predicted outputs. (loss = loss_fn(y_pred, y_train)). In PyTorch, whenever you perform operations on tensors (like a forward pass through a model), a computational graph is created. This graph records the operations and the relationships between tensors (like which tensors were used to create a new tensor). In this graph, tensors are nodes, and operations are edges. When you do a forward pass, say y_pred = model_0(X_train), it creates a part of the graph where y_pred is connected to the parameters of model_0 and the input X_train. When you call loss.backward(), PyTorch traverses this graph backward from the loss node. It calculates the gradient of loss with respect to each tensor that has requires_grad=True.If loss was calculated from outputs of model_0, the computational graph links the loss to model_0's parameters. Therefore, loss.backward() computes gradients for model_0's parameters.
3:20:00 Day 1 4:00:00 Day 2 6:10:00 Day 3 12:36:00 Day 4 (Today I finally had this click moment while watching the backpropagation video. Now neural network is no longer a mystery for me. I'm halfway through this tutorial and I'm learning a ton. The original reason why I came here was to solve a college assignment that looked way too hard for me. Now I'm confident after I finish this tutorial I will complete the assignment like a piece of cake.) 16:17:00 Day 5 19:00:00 Day 6
0:00:00 Introduction 🛠 Chapter 0 - PyTorch Fundamentals 0:01:45 0. Welcome and "what is deep learning?" 0:07:41 1. Why use machine/deep learning? 0:11:15 2. The number one rule of ML 0:16:55 3. Machine learning vs deep learning 0:23:02 4. Anatomy of neural networks 0:32:24 5. Different learning paradigms 0:36:56 6. What can deep learning be used for? 0:43:18 7. What is/why PyTorch? 0:53:33 8. What are tensors? 0:57:52 9. Outline 1:03:56 10. How to (and how not to) approach this course 1:09:05 11. Important resources 1:14:28 12. Getting setup 1:22:08 13. Introduction to tensors 1:35:35 14. Creating tensors 1:54:01 17. Tensor datatypes 2:03:26 18. Tensor attributes (information about tensors) 2:11:50 19. Manipulating tensors 2:17:50 20. Matrix multiplication 2:48:18 23. Finding the min, max, mean & sum 2:57:48 25. Reshaping, viewing and stacking 3:11:31 26. Squeezing, unsqueezing and permuting 3:23:28 27. Selecting data (indexing) 3:33:01 28. PyTorch and NumPy 3:42:10 29. Reproducibility 3:52:58 30. Accessing a GPU 4:04:49 31. Setting up device agnostic code 🗺 Chapter 1 - PyTorch Workflow 4:17:27 33. Introduction to PyTorch Workflow 4:20:14 34. Getting setup 4:27:30 35. Creating a dataset with linear regression 4:37:12 36. Creating training and test sets (the most important concept in ML) 4:53:18 38. Creating our first PyTorch model 5:13:41 40. Discussing important model building classes 5:20:09 41. Checking out the internals of our model 5:30:01 42. Making predictions with our model 5:41:15 43. Training a model with PyTorch (intuition building) 5:49:31 44. Setting up a loss function and optimizer 6:02:24 45. PyTorch training loop intuition 6:40:05 48. Running our training loop epoch by epoch 6:49:31 49. Writing testing loop code 7:15:53 51. Saving/loading a model 7:44:28 54. Putting everything together 🤨 Chapter 2 - Neural Network Classification 8:32:00 60. Introduction to machine learning classification 8:41:42 61. Classification input and outputs 8:50:50 62. Architecture of a classification neural network 9:09:41 64. Turing our data into tensors 9:25:58 66. Coding a neural network for classification data 9:43:55 68. Using torch.nn.Sequential 9:57:13 69. Loss, optimizer and evaluation functions for classification 10:12:05 70. From model logits to prediction probabilities to prediction labels 10:28:13 71. Train and test loops 10:57:55 73. Discussing options to improve a model 11:27:52 76. Creating a straight line dataset 11:46:02 78. Evaluating our model's predictions 11:51:26 79. The missing piece - non-linearity 12:42:32 84. Putting it all together with a multiclass problem 13:24:09 88. Troubleshooting a mutli-class model 😎 Chapter 3 - Computer Vision 14:00:48 92. Introduction to computer vision 14:12:36 93. Computer vision input and outputs 14:22:46 94. What is a convolutional neural network? 14:27:49 95. TorchVision 14:37:10 96. Getting a computer vision dataset 15:01:34 98. Mini-batches 15:08:52 99. Creating DataLoaders 15:52:01 103. Training and testing loops for batched data 16:26:27 105. Running experiments on the GPU 16:30:14 106. Creating a model with non-linear functions 16:42:23 108. Creating a train/test loop 17:13:32 112. Convolutional neural networks (overview) 17:21:57 113. Coding a CNN 17:41:46 114. Breaking down nn.Conv2d/nn.MaxPool2d 18:29:02 118. Training our first CNN 18:44:22 120. Making predictions on random test samples 18:56:01 121. Plotting our best model predictions 19:19:34 123. Evaluating model predictions with a confusion matrix 🗃 Chapter 4 - Custom Datasets 19:44:05 126. Introduction to custom datasets 19:59:54 128. Downloading a custom dataset of pizza, steak and sushi images 20:13:59 129. Becoming one with the data 20:39:11 132. Turning images into tensors 21:16:16 136. Creating image DataLoaders 21:25:20 137. Creating a custom dataset class (overview) 21:42:29 139. Writing a custom dataset class from scratch 22:21:50 142. Turning custom datasets into DataLoaders 22:28:50 143. Data augmentation 22:43:14 144. Building a baseline model 23:11:07 147. Getting a summary of our model with torchinfo 23:17:46 148. Creating training and testing loop functions 23:50:59 151. Plotting model 0 loss curves 24:00:02 152. Overfitting and underfitting 24:32:31 155. Plotting model 1 loss curves 24:35:53 156. Plotting all the loss curves 24:46:50 157. Predicting on custom data
@@yayasssamminnaI doubled the speed, and I’m listening to it while driving first, then I’m gonna start typing it out soon but still at double speed, I feel like if I can time out an hour of effort each day I’d make it in a month
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
@@andyhawaii2819 bruh he's trying to teach you how to learn, in the future if you are trying to use deep learning is some one going to be there to hold our hand. Why would he just tell you the answers, instead of teach you how to find them. Give a man a fish, feed him for a day. Teach a man to fish, feed him for life.
1:40:00 Day 1 3:53:00 Day 2 6:00:00 Day 3 7:40:00 Day 4 9:21:00 Day 5 13:49:00 Day 6 14:22:00 Day 7 17:20:00 Day 8 18:50:00 Day 9 19:44:00 Day 10 Ill continue watching rest of the video after practicing building models on my own first and getting a hang of it. 13-05-23 Almost 3 months after the above comment. The reason I started with Pytorch was in order to finish a computer vision collge mini project but actually ended up taking lots of detours from exams to preparing for internships to learn Tensorflow too because it is more convenient for this particular project. Well I might only finish this video after this semester. Luckily Bourke has a video on Tensorflow too so that's probably gonna save my ass.
@@war-c0mmander it is a full crash course to help you understand ML concepts and PyTorch basics and more. You can learn anything else yourself depending on your needs of usage of the PyTorch. It is not possible to teach EVERY concept and EVERY function because it would take endless time. If you are unable to find your path of adapting PyTorch into your workflow even after watching this video, then ML is not something you should be doing.
Thanks, guy. For providing this course as a totally free one. I am looking forward to see a complete pytorch tutorial for a long time. You saved my time. Thank you again.
It took me almost a month to wrap up this PyTorch tutorial, but hey, it was totally worth the time! Daniel did an awesome job explaining everything in a way that made sense.😊😊
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
I am half way through it and I wouldn't be able to explain every detail... but it's a good start. I don't think I would be able to reproduce it in a different context but I guess I can refer to this video.
Amazing tutorial! Really explores the experimental methods of ML and ways to improve your model. And it starts from the basics, assumes nothing, and takes to you to a level where you can further progress by yourself.
I Just finished this course and it was very very worth it. It took me probably about a 1-1.5 months. Daniel, I want to say thank you. To anyone thinking of taking this course, it doesn't matter your current skill level. He doesn't assume that you know how to do something, he shows you exactly how to get started in Colab and all basics and progress you to advanced. He provides an enormous amount of resources that he has created as support for you. He continuously reiterates where to find them. He uses many call backs to other scripts you write within this course helping you link and understand the code and context. I believe this course is perfect for almost every learning type whether you are (visual, auditory or tactile aka learning by doing) it covers everything. This course is more thorough and complete then honestly any course I had taken in my 5 years of college. I am going to continue to pursue DL/ML through here and personal research. I will be purchasing the remaining courses on zero to mastery, which I normally would not do; However This course simply is that good! and I would love to support you continuing to put out this level of content! Thank you!
Oh lord , what would I possibly do without you guys helping out in all ways possible . Thank you so so much for all the efforts put in , forever grateful 🙂 All the love from India ❤️
My lord, your video is my life-saver, I've became a Data Analysis for 3 months since my university graduation and I'm still on my way learning to become a Data Engineering in the foreseeable future. I couldn't believe such a free courses on RUclips could be this detailed and well-organized, thanks you very much for the knowledge you've been passing down to me
i can't express my feelings using words you guys are doing an excellent job for students like us am machine learning student i just want to say Thank you ! keep up the good work
just 100 % awesome!!! Daniel not only knows his subject, he is also a great presenter and teacher. This is better than watching a movie. Thank You Daniel.
3:50:15 I think the problem with the seed is not it only work once, but the random function will keep the last calculated value as the seed, (which is how with the default seed they manage to have different random results every time). Therefore, calling manual_seed again simply reset the seed, as well as the function to the desired values
Hands down One of The Best Tutorials for ML and DL and PyTorch and Python all smushed into one big video. Hats Off . Amazing . Thank you for this gem of a class.
I'll update this as I go about: 3-3-2024: 9:21:40 (Not my first day) 5-3-2024: 9:43:34 7-3-2024: 10:40:31 9-3-2024: 11:26:28 10-3-2024: 11:46:31 14-3-2024: 12:42:22 31-3-2024: 13:07:50 (Back after being sick for a while) 3-4-2024: 13:40:09 5-4-2024: 14:00:00 19-4-2024: 14:40:00 20-4-2024: 15:10:00 21-4-2024: 15:35:55 23-4-2024: 16:16:06 25-4-2024: 16:30:05 26-4-2024: 17:05:45 28-4-2024: 17:55:00 30-4-2024: 18:44:00 2-5-2024: 19:05:00 9-5-2024: 19:38:00 12-5-2024: 20:00:00 Doing this course in small increments - great course Daniel
@@sahdevdodiya Hey there! You can start watching this video and learn on the side! This course mostly delves with code and Daniel has added an extra-curriculum to read into the functions/algorithms.
At time stamp 3:36:31, in cell no. 126, line no. 5 you have used decimal that is np.arange(1.0,8.0) If you use np.arange(1,8) then the dtype will be int32. So, we can say the default data type depends on the type of number that you are giving or converting either to numpy or to tensor.
I think what he is trying to say is with respect to floating points numpy arrays vs tensors.Executing below code will clarify his point more. torch.from_numpy(np.zeros(9)).dtype , torch.zeros(9).dtype
a simple analogy to explain how PyTorch's autograd system and the optimizer work together: Imagine you're painting a picture, and you have a friend who's giving you advice on how to improve it. Your painting process is like the forward pass in a neural network, and your friend's advice is like the gradients in backpropagation. Building the Picture (Forward Pass): As you paint (process your data through the model), you're making decisions about colors and shapes (weights and biases in the model). Every stroke you make with your brush affects the final picture. Getting Feedback (Calculating Gradients with loss.backward()): Once you finish a version of your painting, your friend looks at it and gives you feedback on each part of the picture (this is like calculating the gradients). Your friend writes down this feedback on sticky notes and sticks them on the respective parts of the painting. These sticky notes are like the .grad attributes in PyTorch - they are attached to the specific parts (parameters) they refer to. Making Adjustments Based on Feedback (optimizer.step()): Now, it's time to improve the painting based on the feedback. You go over each sticky note and adjust the painting accordingly. You don't need your friend to tell you the feedback again because it's all written on the sticky notes directly on the painting. In PyTorch, the optimizer (like optim.SGD) does this by looking at the .grad (sticky notes) on each parameter and adjusting those parameters to make the model (painting) better. Clearing the Feedback for the Next Round (optimizer.zero_grad()): Before you start painting again (processing the next batch of data), you remove all the sticky notes (clear the gradients), so you can get new, fresh feedback for your next improvements. If you didn't remove them, you'd have old feedback mixed with new, which would be confusing.
5:25:43 The reason as to why you got the same value is because of how IPython and randomness work. So, if anyone wondering: Computers aren't built for randomness and they can't just generate a random number. So instead they are generating quasi-random numbers based on a seed. Basically, just applying a series of mathematical operations on a "seed" to get a number. Then, generated number becomes new seed. Now what is happening here: as you will get the same "random" number from the same seed, that means next seed will be the same as previous generation. This means with the same seed you are getting same series of numbers! IPython (Interactive Python) is basically just running program. And it saves the seed. It means that after generating those 2 tensors you will get the seed for generating number 0.2345 EVERY time. BUT, if you continue to generate, number will be gone. Simple way to test this is to reset the seed (42), regenerate those tensors and generate the number again. It will be 0.2345. If they hadn't changed randomness algorithm by the time you are reading this.
Day 0: Starting today at 25-06-24... Day 1: Feeling great and planning to go at least 3 hours into the course along with additional reading, writing code and experimenting.
Going to university is literally pointless imo (except for having something employers like, a degree and to make friends and stuff). But from an academic perspective, it's infinitely cheaper and more effective to study on RUclips. Courses like these are ridiculously good, and so many people are unaware of it. I am 8 hours in and will definitely finish it over the next few weeks. Thanks a lot
@@mrdbourke I was thinking to take your same pytorch course from udemy which had paper implementation so what would you suggest show i see it from here or take udemy one give honest opinions :)
What an amazing introduction to DL with PyTorch...probably the best out there. It was so much fun to study with you. Your enthusiasm really fired me up during all of the 25 hours! Thank you, Daniel :))
The random seed in PyTorch sets the starting point for the generation of a sequence of random numbers. By setting a random seed, we make the entire chain of future generated random values predictable. The claim that torch.manual_seed is only applicable to the first generated value is incorrect. Here's a good piece of code that demonstrates this: ```RANDOM_SEED = 42 torch.manual_seed(RANDOM_SEED) random_tensor1 = torch.rand(2, 3) random_tensor2 = torch.rand(2, 3) torch.manual_seed(RANDOM_SEED) random_tensor3 = torch.rand(2, 3) random_tensor4 = torch.rand(2, 3) print(random_tensor2 == random_tensor4) torch.manual_seed(RANDOM_SEED) random_big_tensor = torch.rand(4, 3) print(random_tensor1) print(random_tensor2) print(random_big_tensor) ``` 3:50:30
Using this i am learning this tutorial Day 1: 1:10:00 Day 2: 2:53:03 Day 3: 3:23:28 Day 4 : 4:17:22 Day 5 : 6:02:27 Day 6 : 07:02:33 Day 7+8 : 10:57:58 Day 9: 14:00:47 Day 10: 15:39:43 Day 11: 19:37:54 Day 12: 21:38:22 Day 13 : Finished
I'll commit to watching at least 1h or so every day: day 1: 1:22:25 day 2: 1:35:36 day3 : 2:11:48 day 4 : 2:54:00 Day 5 : skipped Day 6 : 3:23:30 Day 7: 3:42:09 Day 8 : Skipped Day 9 : Skipped Day10: 4:17:00 Day12: 4:37:00
I have now finally finished this part of the course course ( it's only 47% of the full course on udemy, so still have a long way to go). It's taken me roughly 12 weeks to get to this point, discounting the days I didn't study at all, probably more like 10 weeks, so 2 1/2 month. I want to say that there are exercises + extracurriculars too, I did all of them so it might hav taken me longer than others on youtube who didn't do that. I studied around 1-2 hours a day, averaging more like 1 hour I think. Definitely recommend people to invest 2 hours minimum to not get discouraged by how long it will take you to go through this course lol. Anyway, my thoughts are, this course is really good. However, I think there is a lot of time wasted as well, some videos could definitely be made shorter if he didn't write all that text down in every video for example. And I wish he had included some more math explanation, I know this is a coding course, but yeah... Also, since it IS a course that exclusively focuses on the coding aspect, I kind of wish he had included how to work with not just image data but also audio and text, for example. I feel like I will need a lot of additional study to learn about generative AI, LLMs and such. But yeah overall a good course, good foundation/start. And big kudos to making it free here although I did buy the full course myself.
i will complete this within a week. Day 1: 54:54 Day 2: 2:59:31 Day 3: 4:17:27 Day 4: 5:30:05 Day 5: 7:47:45 Day 6: 9:05:14 Day 7: 10:54:57 Day 8: 14:00:58 Day 9: 15:48:05 Day 10: 17:13:45 Day 11: 19:44:03 Day 12: 24:46:52 Day 13: 25:37:25 Done and Dusted. Continuing the second part of this course on Udemy.... Day 14: 05. PyTorch Going Modular Day 15: 06. PyTorch Transfer Learning Day 16:
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
Who knew PyTorch could be so fun? Huge thanks for making deep learning a delightful adventure. Every lesson was a gift-educational and enjoyable! Highly recommended!
amazing course one small correction. SGD doesn't take random steps. it choses random set of inputs and uses them to compute gradients and steps in negative direction of gradients to go to minima
Well, the steps do look kinda random, since you are evaluating the gradient of the loss function of a single example or mini-batch, so the step won't appear to be in the direction that minimizes the overall loss, but rather, in a close enough direction, with some random noise, therefore stochastic!
I need to get a quick understanding of PyTorch till next thursday for an interview 05.03.: 57:52 06.03.: 4:17:27 07.03.: 5:13:42 08.03.: 6:20:50 13.03.: 8:58:49 19.03.: 14:00:48 20.03.: 16:26:11
Im planning on completing this course by the end of the month! Day 1 08/17: 57:35 Day 2 08/18: 2:54:27 Update1: I failed. but im gonna complete before the 20th of NOV!!! Day 3 09/01: 3:24:27 Day 4 09/02: 4:15:00 #Finished the intro to the fundamentals!!!
Let's learn this quick 2023-10-10 Day 1: 1:22:13 2023-10-11 Day 2: 2:20:29 2023-10-12 Day 3: 3:06:35 2023-10-13 Day 4: 4:05:00 2023-10-14 Day 5: 4:21:58 2023-10-24 Day 6: 6:26:23 (too busy with midterm) 2023-10-25 Day 7: 7:44:28 2023-10-30 Day 8: 10:12:13
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
if you get confuse in understanding tensors the Scalar = single values or data. eg :1 or 4 or any number Vector = list or values (1D array ). eg : [3,8,5] Matrix = 2D array. eg: [[2 5 8], [4 6 2]] tensor = array or an matrix or 3D array.
I appreciate the time it took to create this video, and I very much appreciate it being free. There is a lot of good stuff in this video. My only comment is that this could be half the length and still have all the great stuff you have prepared. The small video segments where half of each segment is spent repeating the content from the previous short video segment just takes up too much time. It takes almost 6 hours to get to training a neural network. I get it - data prep, learning tensors and such is very important. But it should not take 1-2 hours to go from creating a model class in code and then finally training it. The real killer is that so much time is lost repeating the same stuff over and over, but then when we get to important concepts like a high level overview of gradient descent, you skip over it and give another RUclips link. Cut down on the repetition. With a video, people can watch the earlier parts again if needed. This is not a live class.
The content is great! Thank you for sharing such a good course! I do have some feedback on usability due to the video being too long, its really hard to move forward or backward to hear again or find specific topics, the resolution of the play bar is too low. It would have been much easier to follow if this was broken down in multiple videos easier to navigate
The way I deal with this is to copy the link to the video at different sections and save it to keep track of where I am and any previous bits I would like to see again. This is always going to be an issue with doing big courses with RUclips videos.
These timestamps are just for me to keep track on what I read each day so that I can continue later on easily. Day 1: 1:35:35 Day 2: 2:17:50 Day 3: 3:11:30 Day 4: 4:17:27 Day 5: 5:50:00 Day 6: 6:30:00 Day 7:
1 hour into the course. I don't know if I'm going to finish it being able to use AI, but it's already been worth it to watch just for all the flame sounds.
@@average_student4378Im not really sure, I have some my own projects with NN implementation, I will try to realise them using knowledge I gained from this course.
Free Code Camp courses are better than paid courses. This one is next on my list. I studied neural networks 20 years ago and I struggled with it as I'm not naturally good with maths. But playing with pytorche i see how much more accessible this tech is now
The tensor and numpy array are actually sharing memory. The experiment shows that they are disconnected because you change the reference to the array or tensor variable. If we modify some of the element of the array or of the tensor but keeping the original reference, then both value will be changed.
@@engihabit yeah, don't overthink course options. Just do this one and the next steps in what you need/will want to learn will be clear. Don't spend too much time stressing about best language/framework/video, just dive straight in!
First of all, thanks for the comprehensive curse. Second, it seems to me that there is a small item to correct. In the video about numpy, (3:37:40) it noted that the default type is float64. his is true only when the argument to numpy i float. np.arange(1 , 8 ).dtype results in float32 np.arange(1.0, 8.0).dtype results in float64
After 13 days of learning, I have finally completed the course. A special thank you to Mr. Bourke for creating a great course. You are a fantastic teacher, and I hope the knowledge you imparted will help me a lot in my self-study journey to become a skilled data scientist or machine learning engineer in the future.
Day 1: 1:10:00
Day 2: 2:53:03
Day 3: 3:23:28
Day 4 : 4:17:22
Day 5 : 6:02:27
Day 6 : 07:02:33
Day 7+8 : 10:57:58
Day 9: 14:00:47
Day 10: 15:39:43
Day 11: 19:37:54
Day 12: 21:38:22
Day 13 : Finished
I am trying to follow your routine
bro u are a legend
Any recommendations for after the course? And projects that made you learn even more?
seriously you really have guts i have took around a month yet not completed i am still in mid of CNN..
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
Just finished this course, broke it down took well over a month and a half but totally worth it. The way Daniel builds momentum and make you practice it again and again is just amazing, the curriculum is fantastic, This is pure gold.
Thank you Umer! Glad you enjoyed!
i gonna start it from now. no idea how long i can keep it but i will try
@zizhongtian4100 I hope you are enjoying it. I got “addicted”. Covered chapter 00 in one day.
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
@@Musicjunction98 That's enough to get started... Daniel teaches from basics...
The times we live in: Getting 20+ quality hours of Machine Leaning and Deep Learning for free just one click away. How awesome is that.
That's the power of digital information.
That’s the power of sharing and places like freecodecamp….Thanks.
Yes buddy, we are so privileged to learn anything from RUclips, Google and earn a good amount for our survival.
Also how crazy is machine learning and deep learning
No, because nowadays you NEED to know that stuff+10 programming languages just to pay the rent. Yes we can learn this, but we are also forced to, in order to survive.
Selective learning if you have less time
0:43:18 7. What is/why PyTorch?
0:53:33 8. What are tensors?
1:14:28 12. Getting setup
1:22:08 13. Introduction to tensors
1:35:35 14. Creating tensors
2:03:26 18. Tensor attributes (information about tensors)
2:11:50 19. Manipulating tensors
2:17:50 20. Matrix multiplication
3:23:28 27. Selecting data (indexing)
4:17:27 33. Introduction to PyTorch Workflow
4:37:12 36. Creating training and test sets (the most important concept in ML)
5:49:31 44. Setting up a loss function and optimizer
6:02:24 45. PyTorch training loop intuition
6:49:31 49. Writing testing loop code
7:44:28 54. Putting everything together
8:32:00 60. Introduction to machine learning classification
8:41:42 61. Classification input and outputs
8:50:50 62. Architecture of a classification neural network
9:09:41 64. Turning our data into tensors
9:25:58 66. Coding a neural network for classification data
9:43:55 68. Using torch.nn.Sequential
9:57:13 69. Loss, optimizer and evaluation functions for classification
10:12:05 70. From model logits to prediction probabilities to prediction labels
10:28:13 71. Train and test loops
10:57:55 73. Discussing options to improve a model
Thanks buddy!!
Legend 🙏
ty
I'm planning to learn the 25 hours course within 4 weeks.
2023-08-01: 1:14:30
2023-08-02: 4:12:33
2023-08-03: 4:45:33
2023-08-08 8:13:32
2023-08-09 13:57:46
2023-08-10 17:13:36
2023-08-14 19:26:30
2023-08-15 21:43:24
2023-08-16 24:00:00
2023-08-17 Completed
Thank you Daniel for this great course!
You got this!
Good luck on your data science journey! God Bless
Was it worth, are you using the info you learned?
how far along are you?
@@ohyeah2477 Depends on your experience in Deep Learning or Pytorch.
It's absolutely worth it for a beginner. He codes line by line so you can follow up easily. This is mostly a practical guide. But in case you are interested in the theories .He also recommends many reading materials which I find very useful.
As for me, I already had some experience with deep learning but not Pytorch, so I used 1.5x to 2.0x speed most of times. If you find the video too easy, you can learn from his website instead, the content is more condensed there.
(In case anybody had this question from the linear regression model) ~ 6:49:00
How does the loss function keep track of which model it is for? This question stems from loss_fn itself is not defined in a way that conects it to a model(e.g. nn.MSELoss) and also loss itself is calculated only on training ourputs and predicted outputs. (loss = loss_fn(y_pred, y_train)).
In PyTorch, whenever you perform operations on tensors (like a forward pass through a model), a computational graph is created. This graph records the operations and the relationships between tensors (like which tensors were used to create a new tensor). In this graph, tensors are nodes, and operations are edges. When you do a forward pass, say y_pred = model_0(X_train), it creates a part of the graph where y_pred is connected to the parameters of model_0 and the input X_train.
When you call loss.backward(), PyTorch traverses this graph backward from the loss node. It calculates the gradient of loss with respect to each tensor that has requires_grad=True.If loss was calculated from outputs of model_0, the computational graph links the loss to model_0's parameters. Therefore, loss.backward() computes gradients for model_0's parameters.
heading around it for hours, thanks, you saved me man.
3:20:00 Day 1
4:00:00 Day 2
6:10:00 Day 3
12:36:00 Day 4
(Today I finally had this click moment while watching the backpropagation video. Now neural network is no longer a mystery for me. I'm halfway through this tutorial and I'm learning a ton. The original reason why I came here was to solve a college assignment that looked way too hard for me. Now I'm confident after I finish this tutorial I will complete the assignment like a piece of cake.)
16:17:00 Day 5
19:00:00 Day 6
man,, you are a beast, how could you sit 6+ hours a day watching the vid, also + trying yourself thats like 8 hours+ a day
@@EfilWarlord Because I was not working that day. I had the entire day to myself. It won't be possible if I have other tasks.
0:00:00 Introduction
🛠 Chapter 0 - PyTorch Fundamentals
0:01:45 0. Welcome and "what is deep learning?"
0:07:41 1. Why use machine/deep learning?
0:11:15 2. The number one rule of ML
0:16:55 3. Machine learning vs deep learning
0:23:02 4. Anatomy of neural networks
0:32:24 5. Different learning paradigms
0:36:56 6. What can deep learning be used for?
0:43:18 7. What is/why PyTorch?
0:53:33 8. What are tensors?
0:57:52 9. Outline
1:03:56 10. How to (and how not to) approach this course
1:09:05 11. Important resources
1:14:28 12. Getting setup
1:22:08 13. Introduction to tensors
1:35:35 14. Creating tensors
1:54:01 17. Tensor datatypes
2:03:26 18. Tensor attributes (information about tensors)
2:11:50 19. Manipulating tensors
2:17:50 20. Matrix multiplication
2:48:18 23. Finding the min, max, mean & sum
2:57:48 25. Reshaping, viewing and stacking
3:11:31 26. Squeezing, unsqueezing and permuting
3:23:28 27. Selecting data (indexing)
3:33:01 28. PyTorch and NumPy
3:42:10 29. Reproducibility
3:52:58 30. Accessing a GPU
4:04:49 31. Setting up device agnostic code
🗺 Chapter 1 - PyTorch Workflow
4:17:27 33. Introduction to PyTorch Workflow
4:20:14 34. Getting setup
4:27:30 35. Creating a dataset with linear regression
4:37:12 36. Creating training and test sets (the most important concept in ML)
4:53:18 38. Creating our first PyTorch model
5:13:41 40. Discussing important model building classes
5:20:09 41. Checking out the internals of our model
5:30:01 42. Making predictions with our model
5:41:15 43. Training a model with PyTorch (intuition building)
5:49:31 44. Setting up a loss function and optimizer
6:02:24 45. PyTorch training loop intuition
6:40:05 48. Running our training loop epoch by epoch
6:49:31 49. Writing testing loop code
7:15:53 51. Saving/loading a model
7:44:28 54. Putting everything together
🤨 Chapter 2 - Neural Network Classification
8:32:00 60. Introduction to machine learning classification
8:41:42 61. Classification input and outputs
8:50:50 62. Architecture of a classification neural network
9:09:41 64. Turing our data into tensors
9:25:58 66. Coding a neural network for classification data
9:43:55 68. Using torch.nn.Sequential
9:57:13 69. Loss, optimizer and evaluation functions for classification
10:12:05 70. From model logits to prediction probabilities to prediction labels
10:28:13 71. Train and test loops
10:57:55 73. Discussing options to improve a model
11:27:52 76. Creating a straight line dataset
11:46:02 78. Evaluating our model's predictions
11:51:26 79. The missing piece - non-linearity
12:42:32 84. Putting it all together with a multiclass problem
13:24:09 88. Troubleshooting a mutli-class model
😎 Chapter 3 - Computer Vision
14:00:48 92. Introduction to computer vision
14:12:36 93. Computer vision input and outputs
14:22:46 94. What is a convolutional neural network?
14:27:49 95. TorchVision
14:37:10 96. Getting a computer vision dataset
15:01:34 98. Mini-batches
15:08:52 99. Creating DataLoaders
15:52:01 103. Training and testing loops for batched data
16:26:27 105. Running experiments on the GPU
16:30:14 106. Creating a model with non-linear functions
16:42:23 108. Creating a train/test loop
17:13:32 112. Convolutional neural networks (overview)
17:21:57 113. Coding a CNN
17:41:46 114. Breaking down nn.Conv2d/nn.MaxPool2d
18:29:02 118. Training our first CNN
18:44:22 120. Making predictions on random test samples
18:56:01 121. Plotting our best model predictions
19:19:34 123. Evaluating model predictions with a confusion matrix
🗃 Chapter 4 - Custom Datasets
19:44:05 126. Introduction to custom datasets
19:59:54 128. Downloading a custom dataset of pizza, steak and sushi images
20:13:59 129. Becoming one with the data
20:39:11 132. Turning images into tensors
21:16:16 136. Creating image DataLoaders
21:25:20 137. Creating a custom dataset class (overview)
21:42:29 139. Writing a custom dataset class from scratch
22:21:50 142. Turning custom datasets into DataLoaders
22:28:50 143. Data augmentation
22:43:14 144. Building a baseline model
23:11:07 147. Getting a summary of our model with torchinfo
23:17:46 148. Creating training and testing loop functions
23:50:59 151. Plotting model 0 loss curves
24:00:02 152. Overfitting and underfitting
24:32:31 155. Plotting model 1 loss curves
24:35:53 156. Plotting all the loss curves
24:46:50 157. Predicting on custom data
@@markxavior He just copied it from the description
great job
finished this today.
After 2 months.
Extremely appreciated of the fact that u provide this video to us for free!
Finally completed the whole video, after a month. Absolutely amazing stuff. Daniel bourke is an amazing teacher.
Thank you for the kind words! Massive effort on finishing the video and happy machine learning!
Thanks for giving a time reference. How many hours a week/day would you say you put into studying?
@@yayasssamminnaI doubled the speed, and I’m listening to it while driving first, then I’m gonna start typing it out soon but still at double speed, I feel like if I can time out an hour of effort each day I’d make it in a month
Dis it make you job ready and proficient in pytorch?what benefits it had in your career now that 5 month passed after using this cource?
Thanks
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
26 hours and still tagged as for "Beginners"
wow !!!
you guys are really awesome...
A
Because 26 hours is enough to get into intermediate 😂
Apparently it takes 10,000 hours to get great at machine learning. O_O
25 hours of useless chatter. Don’t send me to Google, do your own research.
@@andyhawaii2819 bruh he's trying to teach you how to learn, in the future if you are trying to use deep learning is some one going to be there to hold our hand. Why would he just tell you the answers, instead of teach you how to find them. Give a man a fish, feed him for a day. Teach a man to fish, feed him for life.
1:40:00 Day 1
3:53:00 Day 2
6:00:00 Day 3
7:40:00 Day 4
9:21:00 Day 5
13:49:00 Day 6
14:22:00 Day 7
17:20:00 Day 8
18:50:00 Day 9
19:44:00 Day 10
Ill continue watching rest of the video after practicing building models on my own first and getting a hang of it.
13-05-23 Almost 3 months after the above comment. The reason I started with Pytorch was in order to finish a computer vision collge mini project but actually ended up taking lots of detours from exams to preparing for internships to learn Tensorflow too because it is more convenient for this particular project. Well I might only finish this video after this semester. Luckily Bourke has a video on Tensorflow too so that's probably gonna save my ass.
hey complete it
Keep pushing!
still building own models?
I am starting to watch it. I have a couple of qns. Does this course cover the mathematical concept of gradient descent/ backpropagation calculus?
@@rikthecuber no, it redirects you to sources
Thanks for the awesome PyTorch introduction!
INTRODUCTION?!?!?
@@unofficialyartifcial9108 probably...
This is not the full course and you paid him money 🤣🤣🤣🤣🤣🤣.
@@war-c0mmander it is a full crash course to help you understand ML concepts and PyTorch basics and more. You can learn anything else yourself depending on your needs of usage of the PyTorch. It is not possible to teach EVERY concept and EVERY function because it would take endless time. If you are unable to find your path of adapting PyTorch into your workflow even after watching this video, then ML is not something you should be doing.
@@war-c0mmander Some people are well off and appreciative :)
Thanks, guy. For providing this course as a totally free one. I am looking forward to see a complete pytorch tutorial for a long time. You saved my time. Thank you again.
12:32:58 -2024/03/26
14:04:00 -2024/03/27
15:16:11 -2024/03/28
18:44:23-2024/03/29
20:39:14-2024/04/01
22:27:43-2024/04/02
23:52:40-2024/04/03
25:37:20-2024/04/04
Done! Thanks, Daniel Bourke for this amazing course
Promise to try my best to finish this course in a week
Day 1: 1:18:32
Day 2 : 2:03:24
Day 5: 4:50:32
Day 8: 8:51:39
Day 10: 10:30:43
where are you brother?
Its been 4 days - come on, I believe in you!
Bro, you can do it!
Come baxk
You got this man. 3 days to go.
For the next 10 days i worked so hard to understand clearly ML, and after all this work, i can finnaly say i achieved the Chapter 0 !👏
It took me almost a month to wrap up this PyTorch tutorial, but hey, it was totally worth the time! Daniel did an awesome job explaining everything in a way that made sense.😊😊
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
I am half way through it and I wouldn't be able to explain every detail... but it's a good start. I don't think I would be able to reproduce it in a different context but I guess I can refer to this video.
@@patrickchan2503 thanks for that but I was asking that do I need to learn anything else before this tutorial or I am ready?
@@Musicjunction98if you already know python and some algebra, then you're ready.
Thanks, Daniel! Really loving this series, and your voice has such an uplifting quality to it - totally a fan of that.
Amazing tutorial! Really explores the experimental methods of ML and ways to improve your model. And it starts from the basics, assumes nothing, and takes to you to a level where you can further progress by yourself.
I Just finished this course and it was very very worth it.
It took me probably about a 1-1.5 months.
Daniel, I want to say thank you.
To anyone thinking of taking this course, it doesn't matter your current skill level. He doesn't assume that you know how to do something, he shows you exactly how to get started in Colab and all basics and progress you to advanced.
He provides an enormous amount of resources that he has created as support for you. He continuously reiterates where to find them. He uses many call backs to other scripts you write within this course helping you link and understand the code and context. I believe this course is perfect for almost every learning type whether you are (visual, auditory or tactile aka learning by doing) it covers everything.
This course is more thorough and complete then honestly any course I had taken in my 5 years of college.
I am going to continue to pursue DL/ML through here and personal research.
I will be purchasing the remaining courses on zero to mastery, which I normally would not do; However This course simply is that good! and I would love to support you continuing to put out this level of content!
Thank you!
Oh lord , what would I possibly do without you guys helping out in all ways possible . Thank you so so much for all the efforts put in , forever grateful 🙂 All the love from India ❤️
Uhh stole the words from maa mouth.
Reading the docs presumably.
My lord, your video is my life-saver, I've became a Data Analysis for 3 months since my university graduation and I'm still on my way learning to become a Data Engineering in the foreseeable future. I couldn't believe such a free courses on RUclips could be this detailed and well-organized, thanks you very much for the knowledge you've been passing down to me
A brilliant educator. The style of delivery suits me incredibly well. Thank you freeCodeCamp and the talented Mr. Bourke!
Thank you! Glad you enjoy it!
i can't express my feelings using words you guys are doing an excellent job for students like us am machine learning student i just want to say Thank you ! keep up the good work
92
1:54:00 Day 1
2:28:00 Day 2
2:49:00 Day 3
4:05:00 Day 4
5:44:00 Day 5
6:24:00 Day 6
6:47:00 Day 7
8:03:00 Day 8
8:48:00 Day 9
9:45:00 Day 10
10:13:00 Day 11
11:15:00 Day 12
11:56:00 Day 13
12:38:00 Day 14
13:18:00 Day 15
13:48:00 Day 16
15:00:00 Day 17
15:35:00 Day 18
16:16:00 Day 19
- - After Long Break - -
17:00:00 Day 20
17:41:00 Day 21
Come backk
@@Chaitanya-wk2us I am back has been quite busy in past months
just 100 % awesome!!! Daniel not only knows his subject, he is also a great presenter and teacher. This is better than watching a movie. Thank You Daniel.
3:50:15 I think the problem with the seed is not it only work once, but the random function will keep the last calculated value as the seed, (which is how with the default seed they manage to have different random results every time). Therefore, calling manual_seed again simply reset the seed, as well as the function to the desired values
Hands down One of The Best Tutorials for ML and DL and PyTorch and Python all smushed into one big video. Hats Off . Amazing . Thank you for this gem of a class.
Glad to hear you're enjoying it!
I'll update this as I go about:
3-3-2024: 9:21:40 (Not my first day)
5-3-2024: 9:43:34
7-3-2024: 10:40:31
9-3-2024: 11:26:28
10-3-2024: 11:46:31
14-3-2024: 12:42:22
31-3-2024: 13:07:50 (Back after being sick for a while)
3-4-2024: 13:40:09
5-4-2024: 14:00:00
19-4-2024: 14:40:00
20-4-2024: 15:10:00
21-4-2024: 15:35:55
23-4-2024: 16:16:06
25-4-2024: 16:30:05
26-4-2024: 17:05:45
28-4-2024: 17:55:00
30-4-2024: 18:44:00
2-5-2024: 19:05:00
9-5-2024: 19:38:00
12-5-2024: 20:00:00
Doing this course in small increments - great course Daniel
hey buddy geniunly ask this videos is best for begginer to start ml and deep learning or watch or follow other videos for beginner ?
@@sahdevdodiya Hey there! You can start watching this video and learn on the side! This course mostly delves with code and Daniel has added an extra-curriculum to read into the functions/algorithms.
At time stamp 3:36:31, in cell no. 126, line no. 5 you have used decimal that is np.arange(1.0,8.0)
If you use np.arange(1,8) then the dtype will be int32.
So, we can say the default data type depends on the type of number that you are giving or converting either to numpy or to tensor.
Yes
I think what he is trying to say is with respect to floating points numpy arrays vs tensors.Executing below code will clarify his point more.
torch.from_numpy(np.zeros(9)).dtype , torch.zeros(9).dtype
a simple analogy to explain how PyTorch's autograd system and the optimizer work together:
Imagine you're painting a picture, and you have a friend who's giving you advice on how to improve it. Your painting process is like the forward pass in a neural network, and your friend's advice is like the gradients in backpropagation.
Building the Picture (Forward Pass): As you paint (process your data through the model), you're making decisions about colors and shapes (weights and biases in the model). Every stroke you make with your brush affects the final picture.
Getting Feedback (Calculating Gradients with loss.backward()): Once you finish a version of your painting, your friend looks at it and gives you feedback on each part of the picture (this is like calculating the gradients). Your friend writes down this feedback on sticky notes and sticks them on the respective parts of the painting. These sticky notes are like the .grad attributes in PyTorch - they are attached to the specific parts (parameters) they refer to.
Making Adjustments Based on Feedback (optimizer.step()): Now, it's time to improve the painting based on the feedback. You go over each sticky note and adjust the painting accordingly. You don't need your friend to tell you the feedback again because it's all written on the sticky notes directly on the painting. In PyTorch, the optimizer (like optim.SGD) does this by looking at the .grad (sticky notes) on each parameter and adjusting those parameters to make the model (painting) better.
Clearing the Feedback for the Next Round (optimizer.zero_grad()): Before you start painting again (processing the next batch of data), you remove all the sticky notes (clear the gradients), so you can get new, fresh feedback for your next improvements. If you didn't remove them, you'd have old feedback mixed with new, which would be confusing.
thank you for this its brilliant really
the enthusiasm and energy from this teacher is contaminating.
wow.. and not just a course.... it is an extraordinary course.. so well laid out... even for a beginner.. congratulations to the authour :)
Your first hour, of course, just shakes off all of our doubts about the choice of a framework, I appreciate it
Just finished this course cannot thank you enough, world needs more peeps like you!
my friend, tell me please what should i learn before starting this course) please))
@@iamrealnurs8368 aslong as you can understand the "hello world" program you should be be fine,
@@Dennis-yk6fw I know python and Django. is it enough?
@@iamrealnurs8368 yeah bro you will be fine
@@Dennis-yk6fw is this course enough to find a job as ml engineer?
5:25:43 The reason as to why you got the same value is because of how IPython and randomness work.
So, if anyone wondering:
Computers aren't built for randomness and they can't just generate a random number. So instead they are generating quasi-random numbers based on a seed. Basically, just applying a series of mathematical operations on a "seed" to get a number. Then, generated number becomes new seed.
Now what is happening here: as you will get the same "random" number from the same seed, that means next seed will be the same as previous generation. This means with the same seed you are getting same series of numbers!
IPython (Interactive Python) is basically just running program. And it saves the seed. It means that after generating those 2 tensors you will get the seed for generating number 0.2345 EVERY time. BUT, if you continue to generate, number will be gone.
Simple way to test this is to reset the seed (42), regenerate those tensors and generate the number again. It will be 0.2345. If they hadn't changed randomness algorithm by the time you are reading this.
2:12:52 tensor attributes 2:27:00 Matrix Multiplication_1, 2:48:00 Matrix multiplication
Your excitement is contagious! Amazing course on Pytorch. Love the fact that it is split into bite-sized modules.
Day 0: Starting today at 25-06-24...
Day 1: Feeling great and planning to go at least 3 hours into the course along with additional reading, writing code and experimenting.
aye get back to it buddy
Just finished this after a month .Daniel approach of doing this is pure bliss. Thanks big man
Going to university is literally pointless imo (except for having something employers like, a degree and to make friends and stuff). But from an academic perspective, it's infinitely cheaper and more effective to study on RUclips. Courses like these are ridiculously good, and so many people are unaware of it. I am 8 hours in and will definitely finish it over the next few weeks. Thanks a lot
Glad you're enjoying it! Thank you for the kind words :)
@@mrdbourke I was thinking to take your same pytorch course from udemy which had paper implementation so what would you suggest show i see it from here or take udemy one give honest opinions :)
What an amazing introduction to DL with PyTorch...probably the best out there. It was so much fun to study with you. Your enthusiasm really fired me up during all of the 25 hours! Thank you, Daniel :))
Thank you Anton!
Finished the vid time to go take over the world
Hands down, the best ML course I have taken, anywhere! Kudos to the author, I've become a fan!!
Can't believe Daniel bourke is here🤩🤩, trust me guys he is among the best of the best tutors out there 😁😁
Absolutely lovely course , I will keep on updating this.
day 1 : 3:43:10
day 2 : 7:12:51
was quick
The random seed in PyTorch sets the starting point for the generation of a sequence of random numbers. By setting a random seed, we make the entire chain of future generated random values predictable. The claim that torch.manual_seed is only applicable to the first generated value is incorrect.
Here's a good piece of code that demonstrates this:
```RANDOM_SEED = 42
torch.manual_seed(RANDOM_SEED)
random_tensor1 = torch.rand(2, 3)
random_tensor2 = torch.rand(2, 3)
torch.manual_seed(RANDOM_SEED)
random_tensor3 = torch.rand(2, 3)
random_tensor4 = torch.rand(2, 3)
print(random_tensor2 == random_tensor4)
torch.manual_seed(RANDOM_SEED)
random_big_tensor = torch.rand(4, 3)
print(random_tensor1)
print(random_tensor2)
print(random_big_tensor)
```
3:50:30
Thanks for pointing that out!
Using this i am learning this tutorial
Day 1: 1:10:00
Day 2: 2:53:03
Day 3: 3:23:28
Day 4 : 4:17:22
Day 5 : 6:02:27
Day 6 : 07:02:33
Day 7+8 : 10:57:58
Day 9: 14:00:47
Day 10: 15:39:43
Day 11: 19:37:54
Day 12: 21:38:22
Day 13 : Finished
Wonderful Course !!! Hats off for providing this for free
i've finished this course twice and i highly recommend this!!!
Right now I'm around 6:20:00, doing the training loop. Still a long way to go but I love how clear and easy-to-follow this course is!
26 hours Hight quality video
Thaat really hard work
You have contributed to the development of humanity, may Allah bless you brother ❤
I'll commit to watching at least 1h or so every day:
day 1: 1:22:25
day 2: 1:35:36
day3 : 2:11:48
day 4 : 2:54:00
Day 5 : skipped
Day 6 : 3:23:30
Day 7: 3:42:09
Day 8 : Skipped
Day 9 : Skipped
Day10: 4:17:00
Day12: 4:37:00
You got this!
@@mrdbourke thank you I’ll watch more today
bro are you lost ?
I have now finally finished this part of the course course ( it's only 47% of the full course on udemy, so still have a long way to go). It's taken me roughly 12 weeks to get to this point, discounting the days I didn't study at all, probably more like 10 weeks, so 2 1/2 month. I want to say that there are exercises + extracurriculars too, I did all of them so it might hav taken me longer than others on youtube who didn't do that. I studied around 1-2 hours a day, averaging more like 1 hour I think. Definitely recommend people to invest 2 hours minimum to not get discouraged by how long it will take you to go through this course lol.
Anyway, my thoughts are, this course is really good. However, I think there is a lot of time wasted as well, some videos could definitely be made shorter if he didn't write all that text down in every video for example. And I wish he had included some more math explanation, I know this is a coding course, but yeah... Also, since it IS a course that exclusively focuses on the coding aspect, I kind of wish he had included how to work with not just image data but also audio and text, for example. I feel like I will need a lot of additional study to learn about generative AI, LLMs and such. But yeah overall a good course, good foundation/start. And big kudos to making it free here although I did buy the full course myself.
Just finished watching the whole video. Thank you so much for your knowledge!
Massive effort legend! Happy machine learning!
Lets go im gonna finish this course!
25/8-1:54:01
28/8-3:59:11
7/9-6:21:09
Bruv get your ahh here and finish this course!
fr get back beach
For all the efforts you'll have taken to upload a 25hr long video... I will definitely watch and learn it...
All of their videos are months even years old they're all re-uploads.
i will complete this within a week.
Day 1: 54:54
Day 2: 2:59:31
Day 3: 4:17:27
Day 4: 5:30:05
Day 5: 7:47:45
Day 6: 9:05:14
Day 7: 10:54:57
Day 8: 14:00:58
Day 9: 15:48:05
Day 10: 17:13:45
Day 11: 19:44:03
Day 12: 24:46:52
Day 13: 25:37:25
Done and Dusted.
Continuing the second part of this course on Udemy....
Day 14: 05. PyTorch Going Modular
Day 15: 06. PyTorch Transfer Learning
Day 16:
10 hours a day now, grind brothaa
This channel is a hidden gem
So much in free
I dont know how could I even thank this channel ever
there is "thanks" option to donate some money if you like
Just finished. Took a little more than 2 weeks. Thanks for the excellent course.
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
I'm working on a project related to deep learning and its really helpful !! Thank you Sir ! 😇
Who knew PyTorch could be so fun? Huge thanks for making deep learning a delightful adventure. Every lesson was a gift-educational and enjoyable! Highly recommended!
10-03-2024 00:00 - 59:05
11-03-2024 59:05 - 1:11:00
14-03-2024 1:11:00 - 2:11:49
18-03-2024 2:11:49 - 2:17:48
19-03-2024 2:17:48- 3:34:00
25-03-2024 3:34:00- 4:37:10
amazing course
one small correction. SGD doesn't take random steps. it choses random set of inputs and uses them to compute gradients and steps in negative direction of gradients to go to minima
Well, the steps do look kinda random, since you are evaluating the gradient of the loss function of a single example or mini-batch, so the step won't appear to be in the direction that minimizes the overall loss, but rather, in a close enough direction, with some random noise, therefore stochastic!
Adding captions will make it easier for hard of hearing peoples to learn... Pls add captions and subtitles
I need to get a quick understanding of PyTorch till next thursday for an interview
05.03.: 57:52
06.03.: 4:17:27
07.03.: 5:13:42
08.03.: 6:20:50
13.03.: 8:58:49
19.03.: 14:00:48
20.03.: 16:26:11
must be for interview i guess
How did it go?
2h in, and I must say that as a teacher, one can tell that you really know and care about teaching.
Congratulations!
Im planning on completing this course by the end of the month!
Day 1 08/17: 57:35
Day 2 08/18: 2:54:27
Update1: I failed. but im gonna complete before the 20th of NOV!!!
Day 3 09/01: 3:24:27
Day 4 09/02: 4:15:00 #Finished the intro to the fundamentals!!!
The best Pytorch course so far on earth
Let's learn this quick
2023-10-10 Day 1: 1:22:13
2023-10-11 Day 2: 2:20:29
2023-10-12 Day 3: 3:06:35
2023-10-13 Day 4: 4:05:00
2023-10-14 Day 5: 4:21:58
2023-10-24 Day 6: 6:26:23 (too busy with midterm)
2023-10-25 Day 7: 7:44:28
2023-10-30 Day 8: 10:12:13
at 3:39:13 if you do "array += 1" both array and tensor update for some reason. It's the same for 3:41:14
Just finished this course in 20 days. It was incredibly helpful-really deepened my understanding of AI. Thank you!
Hi brother, i am planning to watch this tutorial but i am not sure what kind of things should i learn before, I have learn python basics, advance, scikit-learn, pandas and numpy. Is this enough or should i learn anything else before learning pytorch? Please help me.
@@Musicjunction98 Maths, linear regression and calculus basics r imp
What I wanted: a 30 min. Course teaching me 1 to 2 new things, what I get: The Bible of PyTorch
Thanks for all your work 👑
if you get confuse in understanding tensors the
Scalar = single values or data. eg :1 or 4 or any number
Vector = list or values (1D array ). eg : [3,8,5]
Matrix = 2D array. eg: [[2 5 8],
[4 6 2]]
tensor = array or an matrix or 3D array.
This is one of the best courses out there in youtube for Deep Learning with PyTorch..Hats Off👏
Gradient descent is probably the only place where the phrase fails to apply "Getting down the hill is easier than climbing it"
I appreciate the time it took to create this video, and I very much appreciate it being free. There is a lot of good stuff in this video. My only comment is that this could be half the length and still have all the great stuff you have prepared. The small video segments where half of each segment is spent repeating the content from the previous short video segment just takes up too much time. It takes almost 6 hours to get to training a neural network. I get it - data prep, learning tensors and such is very important. But it should not take 1-2 hours to go from creating a model class in code and then finally training it. The real killer is that so much time is lost repeating the same stuff over and over, but then when we get to important concepts like a high level overview of gradient descent, you skip over it and give another RUclips link. Cut down on the repetition. With a video, people can watch the earlier parts again if needed. This is not a live class.
Great feedback! Thank you for that! I'll keep it mind for the next one!
59:25 it's encouraged to search online, reminds me of the interviews that don't allow you to search online 🙂
I love the way Daniel is teaching! Repetition makes you remember for tedious code. Thank you very much!
The people who run this channel are absolute legends 😍😍, way too generous with them free courses :P
Thanks a lot guys! Amazing stuff!
You're welcome Robert! Glad you're enjoying! - Daniel (I teach the course)
Hi, I just began my english is no good, but I want learn python and you are the best of best ... thank realy thank..,
The content is great! Thank you for sharing such a good course! I do have some feedback on usability due to the video being too long, its really hard to move forward or backward to hear again or find specific topics, the resolution of the play bar is too low. It would have been much easier to follow if this was broken down in multiple videos easier to navigate
The way I deal with this is to copy the link to the video at different sections and save it to keep track of where I am and any previous bits I would like to see again. This is always going to be an issue with doing big courses with RUclips videos.
I actually find one video way easier to navigate than multiple videos
Day 1: 1:00:00
Day 2: 2:17:51
Day 3: 3:23:27 (I will try not to break a streak again)
Day 4: 4:17:27 (Chapter 0, Fundamentals complete)
The greatest PyTorch tutorial
@3:39:12
in pyTorch to numpy if i use array += 1. both numpy and torch array are same.
import numpy as np
array = np.arange(1.0, 8.0)
tensor = torch.from_numpy(array)
array += 1
array, tensor
output:
(array([2., 3., 4., 5., 6., 7., 8.]),
tensor([2., 3., 4., 5., 6., 7., 8.], dtype=torch.float64))
don't watch the whole thing in one sitting? is that a challenge
😂😂 I tried it I failed because it's not that easy to understand I m taking my time now
27:00 Just a terminology concern: Features are not weights. Features are columns in our data matrix, and the weights are learned parameters.
So first I start by learning python for 3months and will be back to watch this
These timestamps are just for me to keep track on what I read each day so that I can continue later on easily.
Day 1: 1:35:35
Day 2: 2:17:50
Day 3: 3:11:30
Day 4: 4:17:27
Day 5: 5:50:00
Day 6: 6:30:00
Day 7:
1 hour into the course. I don't know if I'm going to finish it being able to use AI, but it's already been worth it to watch just for all the flame sounds.
Started 25.07, end 20.10. Totally worth it. Thanks you for that course.
what should we do after this course?
@@average_student4378Im not really sure, I have some my own projects with NN implementation, I will try to realise them using knowledge I gained from this course.
is this course worth the time?
¡Gracias! Son demasiado capos
Free Code Camp courses are better than paid courses. This one is next on my list. I studied neural networks 20 years ago and I struggled with it as I'm not naturally good with maths. But playing with pytorche i see how much more accessible this tech is now
That's we can called as "extraordinary job"
thanks ‼️
The tensor and numpy array are actually sharing memory. The experiment shows that they are disconnected because you change the reference to the array or tensor variable. If we modify some of the element of the array or of the tensor but keeping the original reference, then both value will be changed.
Yes. I did tensor += 1 and it shares memory. With tensor = tensor + 1 it doesnt share
I think that this channels philosophy is the best in all youtube, not even exaggerating. Thank you all!.
Can't believe this is free. Thank you.
Hi, do you recommend it please? Or advise another hands on course 🙏
@@engihabit yeah, don't overthink course options. Just do this one and the next steps in what you need/will want to learn will be clear. Don't spend too much time stressing about best language/framework/video, just dive straight in!
@@SaintKhaled gratitude bro 🙏
First of all, thanks for the comprehensive curse.
Second, it seems to me that there is a small item to correct.
In the video about numpy, (3:37:40) it noted that the default type is float64. his is true only when the argument to numpy i float.
np.arange(1 , 8 ).dtype results in float32
np.arange(1.0, 8.0).dtype results in float64