Detecting Eye Disease using Deep Learning | Kaggle Top 1% Solution, No Ensemble

  Рет қаралды 42,392

Aladdin Persson

Aladdin Persson

Күн бұрын

Пікірлер: 74
@AladdinPersson
@AladdinPersson 3 жыл бұрын
Discussion post on Kaggle with brief summary of what I did in the video: www.kaggle.com/c/diabetic-retinopathy-detection/discussion/242755 Timestamps: 0:00 - Introduction 2:45 - Overview of DR and how to detect 9:11 - A look at the data 12:15 - Creating a baseline solution 24:22 - Result from baseline 26:25 - Idea #1: Preprocessing 34:07 - Result #1 35:19 - Idea #2: Loss Function 39:03 - Result #2 39:59 - Idea #3: Balanced Loader (skipped) 41:30 - Idea #4: Augmentation 42:52 - Result #4 43:44 - Idea #5: Using left and right information 51:03 - Result #5 51:50 - Idea #6: Increase image resolution 55:00 - Result #6 from various resolutions 55:10 - Final Result and Ending
@teddybest02
@teddybest02 3 жыл бұрын
Thank you for the great ideas you gave us, I have an extra idea here. Can you show us how we can use Ben Graham(Competition winner) pre-processing method (specially color version) and train the model from different transfer learning models? I think this way the result will be improved more.
@saravanans9895
@saravanans9895 3 жыл бұрын
I legit learn more things from a single video of yours than any other source, Please keep making content like this bro.
@Msalaho1
@Msalaho1 2 жыл бұрын
hello, dealing with such large datasets, do i have to download this whole data? i mean did you downloaded > 80 GB of data to build your model ?
@mrdbourke
@mrdbourke 3 жыл бұрын
Outstanding video Aladdin! Love the code explanations. Did you record the voice/code at the same time? I enjoyed the multiple lines of code reveal at a time.
@AladdinPersson
@AladdinPersson 3 жыл бұрын
I really appreciate you saying that, means a lot coming from you! Yeah maybe it looked fancy but I just removed the lines and pressed "u" for undo a bunch of times and tried to do some code commentary:)
@Amilakasun1
@Amilakasun1 3 жыл бұрын
LOL you type the same code thousands of times.
@notimportant9018
@notimportant9018 3 жыл бұрын
Hi Aladdin, great video. Just had a doubt. Do you have videos where in you take us step by step through the code of these config, util, train, dataset files as in explaining how we could write such codes? If yes please do let me know that would be great. Thanks!
@DiogoSanti
@DiogoSanti 3 жыл бұрын
Hey Aladdin, i liked the approach in this video... Take a problem and dissecting it...Good job!
@DiogoSanti
@DiogoSanti 3 жыл бұрын
Would be great to make more content in this format...
@gurushreyaass9458
@gurushreyaass9458 3 жыл бұрын
Excellent video hope this inspire many amateurs in this field .Thanks. Do post more videos.
@_arnav_chaudhuri
@_arnav_chaudhuri 8 ай бұрын
Great video sir ,Can you tell me where can i download the dataset of the images from ?
@mikhaeldito
@mikhaeldito 3 жыл бұрын
More videos like this, please!
@saketkattuboina6693
@saketkattuboina6693 3 жыл бұрын
Can you also make a video on how to ensemble deep learning models??
@arunavamaulik19
@arunavamaulik19 3 жыл бұрын
Absolute brilliant series...more of this please!
@chjayakrishnajk
@chjayakrishnajk Жыл бұрын
Please continue this series, it is soo good
@JuanGabrielOyolaCardona
@JuanGabrielOyolaCardona Ай бұрын
Thanks for sharing 😀👍 greetings from Colombia.
@yanononopon
@yanononopon 3 жыл бұрын
Hey Aladdin, great video ! It's a subject that's quite dear to my heart since my grandpa is slowly becoming blind from diabetes. Anyways, love your content :)
@Draculasius
@Draculasius 2 жыл бұрын
@13:32 How are you doing this command showing line by line? Is this a special feature? Because I think it is good for presentations.
@duongkstn
@duongkstn 9 ай бұрын
hey, instead of import sys and sys.extit(), you can type : "exit(0)" for short
@teddybest02
@teddybest02 3 жыл бұрын
@Aladdin Persson Thank you for the great ideas you gave us, I have an extra idea here. Can you show us how we can use Ben Graham(Competition winner) pre-processing method (specially color version) and train the model from different transfer learning models? I think this way the result will be improved more.
@chainonsmanquants1630
@chainonsmanquants1630 3 жыл бұрын
12:15 Baseline easy solution to implement: a 2d convolutional layer in sequential mode with like 5 successive layers and kernels of size between 3x3 and 10x10 to account for the small size of the target. End the convolutional layer with flatten and dense with 5 units for 5 categories. How to do better... Well I'm not really sure
@iducater9882
@iducater9882 3 ай бұрын
How many epochs did you run the train_blend? My score tends to be significantly lower than without combining left and right blending.
@pankajchand6761
@pankajchand6761 2 жыл бұрын
Which deep learning framework do you feel is better for medical imaging applications like this? TF or PyTorch?
@danobdon3881
@danobdon3881 2 жыл бұрын
nice explanation... how can prepare this data for few shot learning? Any idea? would be very helpful.
@dishantdeshmukh5330
@dishantdeshmukh5330 3 жыл бұрын
Showing subclassing model class you should implement call method in unet how and were to implement call function in unet
@abdelrahmanragab6044
@abdelrahmanragab6044 3 жыл бұрын
Nice video Please mention to me where are you found the dataset that you used
@arunavamaulik19
@arunavamaulik19 3 жыл бұрын
#Suggestion When you talk about something that you have described in another video, can you put a link to it in the description? Thanks!
@MuhammadHussain-ws1xs
@MuhammadHussain-ws1xs 3 жыл бұрын
Can you please do a similar video but for object detection with multiple objects in a single image (custom dataset), I can't seem to find any tutorial on custom object detection in pytorch
@inhibited44
@inhibited44 4 ай бұрын
interesting. I am working with a data set that I resized to (32, 32) from (150, 150) because I saw someone do that in another video. I get a fit of .44 for very few images. I might try increasing resolution too and see what happens for the fit
@charlesnasamu1173
@charlesnasamu1173 2 жыл бұрын
I have a quick question; After preprocessing the images and the size of each images changed, so why did you not compute the mean and std for the train transforms? @
@chainonsmanquants1630
@chainonsmanquants1630 3 жыл бұрын
Really instructive thank you !
@nikhilthapa9300
@nikhilthapa9300 Жыл бұрын
Could you do a tutorial on multiple instance learning too please?
@erwanerwan6196
@erwanerwan6196 2 жыл бұрын
HI is it possible o do with TENSOR FLOW ??
@jeetshah4699
@jeetshah4699 3 жыл бұрын
any reason as to why you haven't used transfer learning, like resent and then just changed the classifier???
@Gamma3
@Gamma3 3 жыл бұрын
Amazing video! Thanks
@ashwinjayaprakash7991
@ashwinjayaprakash7991 3 жыл бұрын
This is golden! Looking at Aladdins solution: > He used Albumentations for transforms > Single dataset class for botht training and validation > used argmax as loss function > Using efficientnet > batch size 64, num epochs 100 > makes a baseline with 120 by 120 images, notes all validation values > tried preprocessing the image to trim the images > created modification to loss function > Getting a balnced dataloader > didnt work for him > heavy data augmentation > left and right image augmentation by blending - didnt understand. > image resolution increase Thing he didnt try: > training validation data > larger model > larger image resolution > Ensemble of CNN models > Tweaking loss values
@AladdinPersson
@AladdinPersson 3 жыл бұрын
Awesome summary. Regarding the usage of left and eye information, so each patient has left eye and right eye image, if we send information of both maybe the model can utilize this extra information. So I pretrained efficientnet using only single eye, then extract features from left and right conatenate those features and train a separate fc network on top of those.
@truonggianga2tk42
@truonggianga2tk42 3 жыл бұрын
Thank you and wait your other Kaggle Video.
@chainonsmanquants1630
@chainonsmanquants1630 3 жыл бұрын
I think you could have had better results if you fusionned the images of left and right directly to train the model on. The result image would be showing the two eyes next to one another.
@odysseashlap
@odysseashlap 3 жыл бұрын
Another idea: create synthesized ("fake") data created by a GAN-Unet architecture (similar to pix2pix) so as to increase the amount of training data
@teddybest02
@teddybest02 3 жыл бұрын
Good idea
@Ayayron1998
@Ayayron1998 3 жыл бұрын
Great subject choice!
@alanjohnstone8766
@alanjohnstone8766 3 жыл бұрын
How/why did you choose to use Efficientnet as opposed to other architectures?
@AladdinPersson
@AladdinPersson 3 жыл бұрын
No particular reason really, it's performed well from my understanding on many benchmarks (imagenet) and I've coded it from scratch a while ago which makes me feel like I have a decent understanding of what's going on in the architecture
@theeFaris
@theeFaris 3 жыл бұрын
For augmentation, i think you should've skipped blur
@apurbasarkar6918
@apurbasarkar6918 3 жыл бұрын
you solved that like a boss
@xin2516
@xin2516 2 жыл бұрын
If I understand it corrently, the input sizes for the efficientnet variants are fixed, like 224x224 for B0. So, I am confused about how can you increase the resolution for the imgs? Thx
@fasolya99
@fasolya99 3 жыл бұрын
How long did the whole process took from you? beside the recording. Also worth to mention that I'm enjoying your videos and find them very helpful ♥️🌹
@AladdinPersson
@AladdinPersson 3 жыл бұрын
A few days?
@indianengineer5802
@indianengineer5802 Жыл бұрын
you used full 88.29 GB data for trainning ???
@nova2577
@nova2577 3 жыл бұрын
With my admiration!
@frankrobert6867
@frankrobert6867 2 жыл бұрын
Thumb up your tutorials.
@Murmur1131
@Murmur1131 3 жыл бұрын
Thanks!
@DaffaAmanu
@DaffaAmanu 3 жыл бұрын
Amazing video! Though I have a problem when I tried running the dataset code on jupyter notebook, which is that it doesn't recognize the config.val_transforms attribute. Any solution to this?
@sayedathar2507
@sayedathar2507 3 жыл бұрын
Lots of Love ❤️ Your videos are saviour ❤️❤️😍
@pareshkamble7888
@pareshkamble7888 3 жыл бұрын
Hi Aladdin, We also tried similar approach for DR classification. However, instead of directly resizing the images to 650x650, we identified and cropped the smallest square that encircle the circular DR image and resized to same size. Thereby, we were able to retain the aspect ratio. What do you suggest, do retaining aspect ratio have some advantage over regular resizing?
@ArpitYadav-ws5xe
@ArpitYadav-ws5xe 2 жыл бұрын
Excellent
@teddybest02
@teddybest02 3 жыл бұрын
Keep it up!!!
@nguyenvietdung7588
@nguyenvietdung7588 2 жыл бұрын
where can I get the test_label.csv
@019_nishantrajsingh9
@019_nishantrajsingh9 10 ай бұрын
can anyone please tell me how to get the validation data i.e. valLabels
@jeremymunroe
@jeremymunroe 10 ай бұрын
You can make your own😅
@joaobarreira5221
@joaobarreira5221 Жыл бұрын
in a similar situation, I trie to use JointsMSE Loss, I change MSE to RMSE and the model converged better and faster.
@sumanmahapatra8881
@sumanmahapatra8881 3 жыл бұрын
Nice content 👍 Can you please elaborate how can we use Kaggle GPU for deploying Deep learning models?
@virgilioespina
@virgilioespina 3 жыл бұрын
Idol! What's up?
@ccuuttww
@ccuuttww 3 жыл бұрын
It's all about the quality of data the images look terrible and they just mix the left eye and right eye together
@odysseashlap
@odysseashlap 3 жыл бұрын
Lets goooo
@dome8116
@dome8116 3 жыл бұрын
May I ask how old you are sir?
@AladdinPersson
@AladdinPersson 3 жыл бұрын
yea I'm 23
@SUGATORAY
@SUGATORAY 3 жыл бұрын
Great video. Btw, how did you make the video to show line numbers as you developed (while also speeding up for some lines and pausing or running at 1x speed at times when necessary)? Am curious! These videos take an incredible amount of time to plan and make. Thank you, very much for the great presentation and the work you put behind these videos. 👏👏⭐️
@bajrangchapola6748
@bajrangchapola6748 3 жыл бұрын
👍👍
@Dr_Shafi
@Dr_Shafi Жыл бұрын
please stop don't waste others time, a humble request
@AladdinPersson
@AladdinPersson Жыл бұрын
How did you feel I wasted ur time?
How to do the Titanic Kaggle Competition
18:28
Aladdin Persson
Рет қаралды 77 М.
Wait for the last one 🤣🤣 #shorts #minecraft
00:28
Cosmo Guy
Рет қаралды 25 МЛН
Which team will win? Team Joy or Team Gumball?! 🤔
00:29
BigSchool
Рет қаралды 13 МЛН
The Singing Challenge #joker #Harriet Quinn
00:35
佐助与鸣人
Рет қаралды 17 МЛН
But what is a neural network? | Chapter 1, Deep learning
18:40
3Blue1Brown
Рет қаралды 17 МЛН
Generative Model That Won 2024 Nobel Prize
33:04
Artem Kirsanov
Рет қаралды 197 М.
EfficientNet Paper Walkthrough
25:50
Aladdin Persson
Рет қаралды 23 М.
Diabetic Retinopathy Classification using Deep Learning
19:30
British Computer Society Open Source Specialists
Рет қаралды 9 М.
How I’d learn ML in 2024 (if I could start over)
7:05
Boris Meinardus
Рет қаралды 1,2 МЛН
Wait for the last one 🤣🤣 #shorts #minecraft
00:28
Cosmo Guy
Рет қаралды 25 МЛН