Build Your First Pytorch Model In Minutes! [Tutorial + Code]
2024 ж. 17 Мам.
56 224 Рет қаралды
In this video we will learn through doing! Build your very first PyTorch model that can classify images of playing cards. #pytorch #deeplearning
Related videos:
Working With Image Data: • Image Processing with ...
Cross Validation: • Image Processing with ...
Kaggle Notebook: www.kaggle.com/code/robikscub...
Timeline:
00:00 Intro
04:50 Pytorch Datasets
13:59 Pytorch Model
19:19 Pytorch Training
29:23 Results
Links to my stuff:
* KZhead: youtube.com/@robmulla?sub_con...
* Discord: / discord
* Twitch: / robcodeslive
* Twitter: / rob_mulla
* Kaggle: www.kaggle.com/robikscube
This man is single-handedly carrying the education side of KZhead for Data Science on his back
Thanks for this video! Really nice to brush up on the basics :)
Thank you for this video! Its a lot of notebooks with torch and ur video helped me, thank you!
Wow, Rob. What an amazing video, I'm currently learning Deep Learning from scratch and your video is great to understand how to cod these networks and how to apply all those concepts learned in other videos about how Neural networks work. I'll be waiting for the next video, hoping you enlighten me over how how to tune the network, maybe transfer learning with CNNs along with attention modules would be just awesome!
Well illustrated! Thanks Rob.
Thank you, Rob!!! I strongly appreciate your work. I have learned a lot from your videos. Cheers from Japan!!!
Great vid Mr Mulla! I got confused at the last stage a bit but the confusion was mainly casued by my relativley small exprience with PyTorch. I will try to calclute the accurancy now! Thank you!
Hey Rob.. thanks for the video. Well structured and well paced. Please do many end to ends like these.
This is incredible
really helpful vid looking out for more of similar
Thank you Rob
Amazing!!!!
Best video ever. I had my 14 year old watching with me and he understood it with very little commentary from me :)
Thanks, Rob!
Thanks, well done
Thank you Rob :)
Im looking forward to add it to my project portfolio. Money money money 💰
this is the best vdo I have seen on pytorch
I have a course at university and here I am learning things they should teach... your explanations are short and clear thanks! after my score submission, I will email your channel to my professor and his assistant as a clear example of what education is
I don't do computer science or university or anything, but I think that you're are an example for other educators.
😂😂 In my case if I mail my teacher, I highly doubt he would open the mail let alone try to teach like this channel.
Thanks for this video.
great thanksss🙂
Thanks!
thank you. perfect.
What a great video! You speaks so similar to Cal Newport
looking for advice, any resource or recommendations on haw to "grade" the performance of an ML besides error?
Hey Rob thanks for this perfect intro to pytorch! I've been learning TFJS and this vertical slice really helped. I'm trying to run this on Kaggle and I'm running into this problem: LocalEntryNotFoundError: Connection error, and we cannot find the requested files in the disk cache. Please try again or make sure your Internet connection is on. This is my first time using Kaggle so I'm not sure what I'm doing wrong. No worries if you have no idea either just thought you should know!
I just asked ChatGPT and it seems like you have to turn on internet on Kaggle instances under notebook options in the right sidebar!
Hi, Rob! Very nice video tutorials you have in your channel! I like them very much. Detailed and at the same time straight to the point. Just a small note: This line is mistaken in your script: test_loader = DataLoader(val_dataset, batch_size=32, shuffle=False). It should be "test_dataset," instead. Perhaps you should generate a new version on Kaggle. All the best!
I think Scarlett knows more about this than me. She started taking a coding class! : )
I love the way you explain, but please post videos using R as well....how about time series forecasting with machine learning using R...
at 18:17 mark, he uses images object as a param to run the model. Where is he getting this images object from?? I don't see it anywhere above except for when he runs that for loops and pull images from dataloader but that was inside the for loop so it cant be that.
very good
Is it possible to create tflite model so that we can use that in an Android??
Great one! I'm on mac, so I replaced Cuda with Metal... device = torch.device("mps" if torch.backends.mps.is_available() else "cpu")
I see what you did there with the joker cards in the test data set ;-)
at 22:10 you have "test_loader = DataLoader(val_dataset, batch_size=32, shuffle=False)" but it should be "test_loader = DataLoader(test_dataset, batch_size=32, shuffle=False)" right?
What if we’re using multiple datasets? How would we change our code?
Great
Hi Rob, thanks for the fantastic video! I was left with an outstanding doubt: I don't see how the Adam optimizer 'gets' the information from the loss and backward propagation steps. There is a loss object on which we do backward propagation and then, seemingly completely separately, we do an optimization step with Adam. But how does Adam know in which direction to move without having, say, a loss argument? Say, something like "loss.backward(); optimizer.step(loss)" would make sense in my head.
In an earlier line we gave the Adam optimized the model.parameters(). When we do all our computations through our model and in the end through our loss these computations will be stored in an internal state of the model. When we then call loss.backward() all these steps our tensors took through the model (and the loss) are run in reverse order and the backwards calculated gradients are also stored in the internal state of our model. And now hence the Adam optimized has the connection to the model parameters and we stored the backwards calculated gradients in our hidden state in the model, it is enough to call optimizer.step() and let the Adam do his magic. I hope this helps.
@@felixmuller9062 Wait that's the part that I don't get: the loss is computed based on the model predictions, but the loss object doesnt 'know' about the parameters right? Like, the model parameters are not an argument of the loss creator function
No but the loss "measures" the deviation from the true classification. When you look in the formulas of the backpropagation algorithm you will see that the first derivative is the one regarding the loss function. From there on, following the chain rule, this flows in the different layers of the network and that's how the gradients for the weights can be calculated. Does this clarify a little more?
@@felixmuller9062 Ah I see, thanks! so just to make sure I get it: 'loss' is given a reference to the parameters of the model, and this parameters object has a 'bin' for gradients, so loss.backward() populates this bin? I think I was thinking too functional---the key is that backward does have a side effect on an object outside of it's 'house'. (Like loss.backward() modifies not only the loss object but also the parameters object.)
@@felixmuller9062 Wait nevermind, I'm confused again: the loss function does not get information about the model parameters or their location in memory. It just receives the predicted outputs and the correct labels. How does it know where to store the gradients computed?
everything is good but there are sources for Image Classifier, Any chance you can make a video for object detection ? I couldt find any video or anything for that.
Check ouit my videos on yolov5 and yolov7. They are all about object detection.
hi @@robmulla, I meant using torch. I couldnt find any source that implementing object detection model using pytorch, all the object detection videos made by prepared models such as yolov5, yolov8, ssd, vgg etc.
Plz make a pytorch playlist for intermediate to advanced. It is nowhere on the internet.
Can run on AMD Radeon gpu no issue?
Nvidia really is the only option.
Peace be upon you, how are you, my friend? I am from Iraq and I am a final-year university student in the Computer Engineering Department. He has a graduation project called controlling traffic lights using artificial intelligence (Python). I hope you will make a video designing a project with a program about simulating traffic lights for real cars.❤
def calculate_accuracy(model, data_loader, device): model.eval() correct = 0 total = 0 with torch.no_grad(): for images, labels in data_loader: images, labels = images.to(device), labels.to(device) outputs = model(images) _, predicted = torch.max(outputs.data, 1) total += labels.size(0) correct += (predicted == labels).sum().item() return 100 * correct / total # After training, calculate accuracy on the test set test_accuracy = calculate_accuracy(model, test_loader, device) print(f"Test Accuracy: {test_accuracy}%") the Test Accuracy is 93.20754... % Hope thats correct and helps!
I wonder how i could create this for forex trading. Wish there was some tutorial
model = SimpleCardClassifer(num_classes=53) print(str(model)[:500]) this is not running at all someone plz help
i also have this problem, did you solved it?
ok solved it, you just have to turn on the internet on the kaggle notebook
@@marco8673 tnx
I got the LocalEntryNotFoundError in model = SimpleCardClassifer(num_classes=53) print(str(model)[:500])
LocalEntryNotFoundError: Connection error, and we cannot find the requested files in the disk cache. Please try again or make sure your Internet connection is on.
make a depth images pytorch
Am i the only one who thought this was Tai Lopez ? :))
❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤
Just a side note, the tqdm slows the processing speed. If you are using a PC equipped with the latest GPU(s) then thats fine, but if you are using a laptop you might want to exclude it from the code.
Video is excellent. I'm just a coding idiot.
55 upvotes and 581copy and edits on your kaggel notebook.Hard world out there...😑
Good job just copy-pasting code snippets no beginner would ever understand. Yes, I can take your code and train a model now. But I don't understand half the things you did.
When you say GPU, your picture is blocking it. Next time, it is better if you just hide your picture and let your voice do the explaining. No offense.
Thanks!