Share your work here ✅

Hi all, I just completed the first week. I had a go at classifying painting styles using the dataset from the Painter by Numbers Kaggle competition (https://www.kaggle.com/c/painter-by-numbers/data).

I took the 20 most common styles from the training set (62k images) and ran them through the lesson notebook.

image

The loss seemed to stop improving after about 10 epochs (unfrozen), with accuracy just over the 60% mark, although it varied quite a lot by the style. The below is the confusion matrix, I used normalize = True since there were unequal numbers for each style.

Worst performing was ‘Art Informel’, which got very confused with ‘Abstract Expressionism’ - this made sense since Wikipedia says that they were developed in parallel, the main difference being one was from Europe and the other from America. The best performing was ‘Ukiyo-e’ (92% accuracy) which is paintings from the Japanese Edo period (1603 and 1868) - the isolationism of the age reflected by a particularly distinctive style perhaps.

Really enjoying the course, onwards to week 2…

4 Likes

Hi Guys

I just finished Lesson 1. Using the techniques taught in the lesson 1, I wrote 4 medium articles:

  1. Devanagari Handwritten Digits Classifier - In this challenge, I got an accuracy of 98.99%

  2. Malaria Blood Cell Images - In this challenge, I got an accuracy of 97.3%

  3. Pneumonia Chest X-ray images - In this challenge, I got an accuracy of 95.8%

  4. Histopathological Cancer Images - In this challenge, I got an accuracy of 98.12%

Comments and feedback shall be most welcome and appreciated.

I am simply amazed by mainly two things:

a. In few lines of codes and short span of training time, the level of accuracy is mind-boggling. Never knew that Deep Learning could be so much easier to implement on real-world challenges. A big thanks to Jeremy and Rachel for this wonderful course.

b. I used in all above different challenges same CNN architecture ResNet50 and just blown away by the fact that a model trained on a completely different dataset (ImageNet) is so accurate in classifying different types of unseen images.

Really looking forward to Lesson 2 now.

5 Likes

In an attempt to show my appreciation for Jeremy and also be able to hear him talk about whatever I wanted whenever I wanted, I made a Jeremy Howard language model I’ve been calling MiniJereme. I trained a couple different models because it kind of became too good so I tried making it worse to get some funnier responses. Here are some of its predictions:

I also thought this would be a good time to share a little about me since I don’t have to worry about Jeremy kicking me out of the course/ SF study group for lying about having one year of “coding” experience :sweat_smile:

I grew up playing baseball, played in college, majored in business management, and minored in philosophy and psychology. After I graduated I knew I didn’t want to play baseball anymore, ended up studying to go to law school for a while, then last April decided to look up how to program. Somehow I stumbled on fastai and found myself taking part 1 v3 in person and going to the SF study group everyday (when I got there I didn’t know how to do comprehensions).

Since then I’ve been able to apply the lessons to things like coloring a photo of my grandmas husband (who passed away before I was born) and giving it to her for Christmas, an app for my cousin (who plays professional baseball) that analyzes his swings for him, and speech recognition for my sister who has autism. It makes me so happy that I’ve been able to give my grandma memories she might not have thought of, or maybe make my sister’s or cousin’s lives better by designing things specifically for them!

I will always be thankful to Jeremy, Rachel, and Sylvain for everything I’ve learned and how you all have changed my life. Learning programming and fastai has let me get ideas out of my head that would otherwise be stuck and it’s an amazing feeling. I hope one day I can give back to you three what you have given to me :slightly_smiling_face: and a :wink: for Sylvain

18 Likes

firstly, i would like to say a very big thank you to Jeremy Howard and all the members of fastai for giving me the opportunity to pursue my dream. thank you.

secondly, i am currently offering the DL course by Jeremy lesson 2 to be precise, i can confidently build a state of the art vision model now but am having issues creating a model to solve the kaggle digit recognizer challenge. i believe the reason is because kaggle dataset is a tabular dataset not image. how can i go about it.

this is a great idea

2 Likes

All -

I wanted to share with you all an Art Project I have been working on: https://www.9gans.com/

9 GANS is An AI Generated Art Gallery that is refreshed every hour to create a completely new and unique collection of 9 images. Hence the (bad) name. Let me know what you think. :slight_smile:

17 Likes

After watching Jeremy’s examples of model interpretation in machine learning course (lesson 3 and lesson 4) I’ve wondered if something similar exists in tabular models. And looks like it didn’t, even though it seems to be very tempting to understand data through it’s model interpretation.
So I’ve implemented these functions and made an example for the Rossmann data.
There you can find functions for:

  • feature importance calculations
  • partial dependence calculation
  • plotting dendrograms (for data inself)
  • plotting embeddings
  • also there is an example of using trained embeddings for another models (using only, not retraining), like to compare NN with Random Forest+embeddings

The notebook is here

4 Likes

Hi @alvisanovari

I am also doing the similar project on Age Prediction but used instead 7GB IMDB-Wiki dataset.

By just looking at the data, it looks like a noisy dataset. Few of the celebs I know of have their ages completely way-off.

Not surprisingly, when I am using metric as “accuracy”, its not very great.

Do you have any idea if some other better alternative dataset available in public domain?

Best Regards
Abhik

Nice work! Have you seen the ELI5 library? It is somewhat similar to what you are doing, except it seems that it’s more focused on certain ML algorithms like XGBoost and LightGBM.

I didn’t go too deeply into this. You can try predicting buckets (5 year age bands) instead of exact ages to reduce some of the noise and get more ‘accurate labels’.

1 Like

Made a pokemon dataset and got 83% accuracy, guessing which pokemon there is on a picture. If you want to do something with pokemon images too please consider using my dataset: kaggle.com/mrgravelord/gen7-pokmon-image-dataset
It has more than 24k images and features almost every pokemon(except some forms like “Spiky-eared Pichu”).

I just launched Ask Roboflow, an AI trained to answer programming questions.

It’s the next step from my project last month, Stack Roboflow, which generated programming questions.

Give it a try, I’d love to hear your thoughts and feedback!

It’s learned lots of interesting things including how to insert HTML links and images into its replies, the syntax of several programming languages, and how to link to “relevant” documentation. And it even seems to be picking up a bit of a sense of humor; it replied “42” to one of my questions yesterday :laughing:

Unfortunately, one thing it hasn’t yet learned is the concept of “correctness” so most of the answers you’ll see won’t actually be helpful yet… I plan to continue to improve the model as time goes on. Hopefully one day it will actually be able to help new programmers get instant answers to their programming questions.


I’ve also published a Medium post about it. I’m thinking about following up with a post about the serverless architecture (Google Cloud Functions + Firebase) that I’m using if anyone is interested.

10 Likes

It will be helpful , if you could start a new thread for AI enabled question answering and post these there. Me too working on a similar task, will share details once i get respectable results.

1 Like

Great work Jason. Loved the way you used the learnings from fastai course to build all those apps. Keep going :clap::clap:

1 Like

Update on Crystal_Clear(My personnal project to upscale audio using image superresolution techniques). Since my last post 22 days ago, I had some time to make some progress on my project : https://github.com/StatisticDean/Crystal_Clear

  • Prediction is now parallelized and is 2-3 times faster. It takes around 0.5 sec to process a 30 sec audio on my GPU and around 60 sec if I use the slower processing method(Taking all overlapping windows instead of no overlapping windows).

  • I’ve created a Starter kit to process the data so you can do training yourself as well. At the moment processing the data is kinda slow(around 2-3 hours).

  • I’ve also worked with my brother to make a webapp.
    The Back Office repo can be found here : https://github.com/StarAurryon/Crystal_Clear-BO
    The webapp Link is the following : http://crystalclear.staraurryon.com
    You can upload an audio file (mp3, ogg or wav) which will be taken through the upscaling algorithm and can then be downloaded.

Please keep in mind that this is a work in progress, and that the algorithm might do nothing significant or even deteriorate the audio. The algorithm has been trained with audio encoded in mp3 with a very low bitrate, so I would suggest feeding it low quality mp3 to see interesting results. If you perform some tests with the webapp and get outstanding results, please contact me :slight_smile:

7 Likes

It is great to see people make so many projects here. I’ve been working on them too. Two things I’ve learnt during this period are:

  1. Execute code as much as possible

  2. Write about it.

The second one has helped me learn things better. It has forced me to read more about topics to get a clear understanding of the concepts and put it in a cogent way. It has also given me visibility. I’d encourage everyone to write about their work. Here are some of my recent posts:

Transfer learning in NLP

Lessons from my first deep learning hackathon

Mixed precision training

Collaborative filtering on song dataset

Data augmentation

Weight decay

Image regression

All kinds of feedback will be appreciated

2 Likes

I’ve been doing the course for a couple weeks and I’m at the halfway mark. I made a simple classifier that classified FIFA from real football and blogged about it on my blog.

However, looking at all the complicated things people are doing with this library, I wanted to take up a far simpler problem (for a human solve/code), and see if it was possible with NNs. Finding the maximum number in a list. Sadly, I was only able to get a 94% accuracy rate with 100,000 samples, which in my opinion is not great.

I’ve put up a gist on GitHub. I’m still new so I might be doing something wrong. Any inputs are helpful!

Dear all,
I have been going through the course since 2 weeks. I started my own image classifier to train the resnet34 model to differentiate between Pythons and Anacondas. Created a modest dataset (on kaggle) with roughly 40-50 pictures of pythons and anacondas. The dataset is not very clean(although I am not very sure the criterion to consider a dataset clean) and I get an error rate of around 10%.

Want to share this project here, and would love to hear your comments.

Thanks to the maintainers of the Kaggle notebooks whose work I forked, as the base kernel.

https://www.kaggle.com/pvaddina/pythons-vs-anacondas-using-fastai

Thanks

This is simply amazing. You put the information in such a lucid manner @daveluo. Thank you for much for such a clear and concise description of your decisions. Indeed an art :slight_smile:

@swsaraf Was going through your Github repo for your nmslib implementation, and I had to comment that your notebooks are amazingly well thought out and constructed.

However, I am having trouble opening your resnet34 implementation on Github.

Thanks for sharing your work!

And i had to chuckle at this prediction