Part 1 FAQ

This topic is editable, so feel free to add, remove, organize, etc questions and answers based on what you’ve seen coming up in other threads. (Please don’t add a “FAQ” however unless it’s actually a question you’ve seen asked more than once on the forums! :slight_smile: Please include a full question and answer in English for each, not just a link.)

The course and forums

The fastai library

  • Why are we using PyTorch? Should I study TensorFlow instead?

    • During the development of Cutting-Edge Deep Learning for Coders, fast.ai started to hit the limits of the libraries we had chosen: Keras and TensorFlow. Therefore PyTorch was used for the 2018 course, which allowed fast.ai to use all of the flexibility and capability of regular python code to build and train neural networks, and to tackle a much wider range of problems. An additional benefit with PyTorch is that you can fully dive into every level of the computation, and see exactly what is going on. Furthermore, PyTorch tends to have more recent research advances earlier. For more details, see the post Introducing PyTorch for fast.ai . (We also briefly teach Keras+TensorFlow during the course, and the concepts transfer easily.)
  • Why are we using the fastai library?

    • PyTorch does not have a clear simple API of Keras for training models, and does not have defaults chosen based on best practices - you have to specify everything in detail yourself. Therefore we took inspiration from Keras in creating a library on top of PyTorch designed to fill these gaps, and ended up creating a totally new library which allows faster and more accurate models to be trained more quickly, with less code.
  • Can I do the course in Keras or some other library, instead of fastai+PyTorch?

    • Probably not. Many students have tried, but no-one has been successful yet, because there are a lot of important features in fastai that aren’t available in any other libraries, and trying to replicate them without the benefits provided by PyTorch is very difficult. We use fastai+PyTorch because it’s the most productive environment for prototyping and learning about deep learning algorithms. You’ll also learn in the course how to use Keras+TensorFlow, but you’ll also find they are much slower, result in less accurate models, and take more code!

Python, Jupyter, numpy and friends

  • What programming tools do I need to know?
    • You need to be familiar with the basics of Python and Numpy. You can start the course if you haven’t used Python before but are a proficient programmer - you’ll just need to do some googling to learn as you go! Here is a brief numpy tutorial to get you started quickly with this important library.
  • Why is the variable naming and code formatting different to established standards such as PEP-8?
    • Jeremy prefers for more to fit in the amount of screen space he can see at once. The approaches that work best for data science are not the same as those that work best for general software engineering. Unfortunately, few people have written about effective patterns for data science code. Note that every variable name is either a mnemonic (lr->learning rate), or is based on standards from the ML and stats literature (x->independent variables; y->dependent variables). Jeremy provides some information about his chosen code formatting conventions in his replies in this github issue.

Setup questions

  • How can I access a GPU for minimal cost?
    • If you’re a university student, AWS Provides a few credits to students under AWS Educate Packs.
    • Github provides additional AWS credits through their student pack
    • Google Cloud Platform (GCP) provides $300 worth of free trial credits that can be used over the course of 12 months. Please have a look at this thread for a complete guide on how to setup GCP step-by-step using the Paperspace bash script designed for this course.
  • Can I use my own Linux box, instead of paperspace/crestle/AWS?
    • Yes you can, as long as it has an NVIDIA GPU, and you don’t mind spending the time getting it set up and maintaining it. However note that that can be quite a distraction from actually studying deep learning, so we normally recommend using the support cloud based options until you’ve completed part 1.
  • Can I use my own Windows or Mac machine?
    • Using a Mac is unlikely to work (or be unusably slow), for the reasons summarized in this post. Using Windows (with an NVIDIA GPU) is possible, although not straightforward or supported, and not recommended for beginners. For the patience and daring people, have a look at this thread or this thread(obsolete).
  • Should I buy a laptop with an NVIDIA GPU?
    • Probably not. You’ll get a much better GPU for much less money if you get a desktop and simply connect to it from a cheap laptop - but (as mentioned above) for now you’re likely better off using a cloud based approach. Having said that, if you do want to work directly on a laptop, there’s a discussion of options in this thread.
  • Is there any free alternative available?
    • Yes, there is! You can use Google’s colaboratory platform for free (it also comes with a Tesla K80 GPU). So, give it a try. Here is the link to the article on how to set up fast.ai course for Google colab notebook.

Deep learning questions


Etiquette for Posting to Forums

  1. If you like a post, it’s better to “like” it with the :heart: rather than commenting. It saves traffic in the Forums and makes it easier for everyone to find posts.
  2. Please be mindful of looking to see if a topic exists before starting a new thread.
  3. Do a quick search of the forums to see if your question is already under discussion.
  4. Do not @ people if you are not referencing them for a specific reason that requires the attention of that forum member. Be specially mindful in mentioning Jeremy and Rachel.

Other information

Introductions Thread

If you want to find out more about your fellow students, check out the introductions thread - and maybe add a bit about yourself there too!

How to Ask for Help

Here is advice on how to ask for help in a way that maximizes the chances someone else will be able to provide a helpful answer.

27 Likes

Removed the google cloud suggestion as you cannot use free trial credits towards GPU’s. source

That page suggests that you can request GPU access with a trial account, and IIRC some students have done this. Have you tried it recently?

@NathanYee It worked for me last month, I was able to request GPU access (Except it took them quite a while to approve it…1-2 weeks)
I’m not sure if they’ve changed that very recently

2 Likes

@init_27 Ohhh it’s by default - I’m just wrong. It might have been different in the past when I originally looked into it.

Yeah I think it’s changed because I used to think that too.

@jeremy I saw the post “Introducing Pytorch for fast.ai” which mentions “The next fast.ai courses will be based nearly entirely on a new framework we have developed, built on Pytorch” what does this mean is it Part 1 v2 or the next edition of Part 2 which is due to release in July?

The Part 1 v2 still uses keras, theano

Can you please clarify it is not clear what the next edition of fast.ai course means.

That’s an old post. It’s referring to this course you’re in right now :slight_smile:

Hi @NathanYee. We are using Google Cloud Platform (GCP) during AI Saturdays from end Dec 2017 onwards till now. We are able to request for increase in quota for GPU for asia-east1 (Taiwan) region and receive email approval from Google Cloud Platform support almost instantly. @init_27 is the AI Geek leader for AI Saturdays :smiley:

Here’s the complete guide created by one of our AI Saturdays’s mentor/facilitator that shows us how to setup GCP step-by-step using the Paperspace bash script. I just want to put this out here in case anyone missed it again.

BTW, we also have a Google Cloud related discussion in this thread. Do check it out if you are interested.

Happy learning!

2 Likes

This is awesome! Thanks for putting out such a nice guide.

I just started watching the lectures. How do I pay for paperspace when it doesn’t accept my debit card and I don’t have a credit card? Are there any alternatives? I am from India and getting a credit card is not possible for me(yet). Any help will be appreciated. Thanks

1 Like

Probably best to contact their support folks.

@dillon is from Paperspace - could you let us know your suggested approach for folks that are getting their card accepted?

1 Like

@jeremy

  1. I just finished setup of AWS and finished lesson one following instructions from what I believe was 2017 course. I feel a bit terrible and stupid.
  2. @jeremy I think the right course is http://course.fast.ai/lessons/lesson1.html is this correct?

Regards
Murali

1 Like

Yup that’s the one! :slight_smile:

1 Like

Thank you for the response. I did contact them, they redirected me to my bank. Bank said, the payment gateway Paperspace uses, Stripe, does not support Visa 3DS, which is what my bank uses to validate transactions via OTP. So, in the end I solved the issue by creating a Virtual Credit Card using Entropay and using that for payment.
Now I can finally start :slight_smile:

3 Likes

@jeremy

I just finished lesson 1 of V1. I’d like to switch to version 2. I imagine there’s some different software I’ll need to install. I’d rather not start the setup all over again. What software should I install to upgrade to V2?

Just follow the instructions in lesson 1 to connect to paperspace. Everything is already set up.

Dear all, dear Jeremy!

First of all a HUGE THANK YOU for this completely amazing course. I completely love the idea to turn the learning process upside down and start from the top!

Short (and potentially stupid) question: I wondered whether I could use fast.ai to try on Kaggle’s Mercari competition (categorical variables + text). But this requires a Kernel that they can re-run online using 4 cores / 16GB RAM / 1GB scratch and output disk space (and run time under 1 hour).

Is this even possible with fast.ai (probabyly not because no GPU provided?)?

Thanks so much!
Karen

@jeremy
I would like to use my personal ubuntu machine to complete this course. is it possible? and if yes, how should i set it up? (by the way i have an nvidia gpu)