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

  Рет қаралды 41,535

Aladdin Persson

Aladdin Persson

Күн бұрын

Пікірлер: 73
@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.
@mikhaeldito
@mikhaeldito 3 жыл бұрын
More videos like this, please!
@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...
@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!
@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 :)
@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!
@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.
@gurushreyaass9458
@gurushreyaass9458 3 жыл бұрын
Excellent video hope this inspire many amateurs in this field .Thanks. Do post more videos.
@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 ?
@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
@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.
@duongkstn
@duongkstn 7 ай бұрын
hey, instead of import sys and sys.extit(), you can type : "exit(0)" for short
@chjayakrishnajk
@chjayakrishnajk Жыл бұрын
Please continue this series, it is soo good
@dishantdeshmukh5330
@dishantdeshmukh5330 3 жыл бұрын
Showing subclassing model class you should implement call method in unet how and were to implement call function in unet
@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
@Gamma3
@Gamma3 3 жыл бұрын
Amazing video! Thanks
@_arnav_chaudhuri
@_arnav_chaudhuri 6 ай бұрын
Great video sir ,Can you tell me where can i download the dataset of the images from ?
@chainonsmanquants1630
@chainonsmanquants1630 3 жыл бұрын
Really instructive thank you !
@inhibited44
@inhibited44 2 ай бұрын
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
@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
@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.
@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.
@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!
@iducater9882
@iducater9882 2 ай бұрын
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?
@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.
@Ayayron1998
@Ayayron1998 3 жыл бұрын
Great subject choice!
@danobdon3881
@danobdon3881 2 жыл бұрын
nice explanation... how can prepare this data for few shot learning? Any idea? would be very helpful.
@nikhilthapa9300
@nikhilthapa9300 Жыл бұрын
Could you do a tutorial on multiple instance learning too please?
@abdelrahmanragab6044
@abdelrahmanragab6044 3 жыл бұрын
Nice video Please mention to me where are you found the dataset that you used
@truonggianga2tk42
@truonggianga2tk42 3 жыл бұрын
Thank you and wait your other Kaggle Video.
@jeetshah4699
@jeetshah4699 3 жыл бұрын
any reason as to why you haven't used transfer learning, like resent and then just changed the classifier???
@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?
@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? @
@erwanerwan6196
@erwanerwan6196 Жыл бұрын
HI is it possible o do with TENSOR FLOW ??
@Murmur1131
@Murmur1131 3 жыл бұрын
Thanks!
@xin2516
@xin2516 Жыл бұрын
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
@theeFaris
@theeFaris 3 жыл бұрын
For augmentation, i think you should've skipped blur
@apurbasarkar6918
@apurbasarkar6918 3 жыл бұрын
you solved that like a boss
@frankrobert6867
@frankrobert6867 2 жыл бұрын
Thumb up your tutorials.
@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
@nova2577
@nova2577 3 жыл бұрын
With my admiration!
@sayedathar2507
@sayedathar2507 3 жыл бұрын
Lots of Love ❤️ Your videos are saviour ❤️❤️😍
@ArpitYadav-ws5xe
@ArpitYadav-ws5xe 2 жыл бұрын
Excellent
@teddybest02
@teddybest02 3 жыл бұрын
Keep it up!!!
@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?
@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?
@019_nishantrajsingh9
@019_nishantrajsingh9 9 ай бұрын
can anyone please tell me how to get the validation data i.e. valLabels
@jeremymunroe
@jeremymunroe 8 ай бұрын
You can make your own😅
@nguyenvietdung7588
@nguyenvietdung7588 Жыл бұрын
where can I get the test_label.csv
@joaobarreira5221
@joaobarreira5221 Жыл бұрын
in a similar situation, I trie to use JointsMSE Loss, I change MSE to RMSE and the model converged better and faster.
@indianengineer5802
@indianengineer5802 Жыл бұрын
you used full 88.29 GB data for trainning ???
@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
@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 жыл бұрын
👍👍
@odysseashlap
@odysseashlap 3 жыл бұрын
Lets goooo
@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
Рет қаралды 75 М.
But what is a neural network? | Chapter 1, Deep learning
18:40
3Blue1Brown
Рет қаралды 17 МЛН
Bend The Impossible Bar Win $1,000
00:57
Stokes Twins
Рет қаралды 48 МЛН
Dad gives best memory keeper
01:00
Justin Flom
Рет қаралды 24 МЛН
Fake watermelon by Secret Vlog
00:16
Secret Vlog
Рет қаралды 15 МЛН
Amazing Parenting Hacks! 👶✨ #ParentingTips #LifeHacks
00:18
Snack Chat
Рет қаралды 15 МЛН
Machine Learning For Medical Image Analysis - How It Works
11:12
JAMA Network
Рет қаралды 83 М.
This is why Deep Learning is really weird.
2:06:38
Machine Learning Street Talk
Рет қаралды 387 М.
GEOMETRIC DEEP LEARNING BLUEPRINT
3:33:23
Machine Learning Street Talk
Рет қаралды 180 М.
Bend The Impossible Bar Win $1,000
00:57
Stokes Twins
Рет қаралды 48 МЛН