Introducing TensorFlow to high school students

Hi! Joined today during the TensorFlow Community Team meet.

I have found learning new things is easier when doing some lessons for a local high school I volunteer at.

I see the following resources and have also gone through the freecodecamp resource:

Any tips or suggestions on your favorite intro course (accessible to learners, 14-18) would be much appreciated. Either from anyone who has undertaken this themselves or has some ideas on how they might do it.

Thanks, and excited to be here.


If your students know and use Python, I created an “ML Foundations” course on YouTube. You can find it on the YT channel, and it might work well for them.


Hi @dan :wave: To add to what @Laurence_Moroney said, you can also check out the MOOCs mentioned on this page: Basics of machine learning  |  TensorFlow featuring @Laurence_Moroney and @Magnus :+1:

Also, if you haven’t already, check out the notebooks you can run in Colab: Machine Learning Basics with Keras (under Tutorials: Basic classification: Classify images of clothing  |  TensorFlow Core) and TensorFlow Basics (under Guides: TensorFlow 기본 사항  |  TensorFlow Core) - made by @billy , @markdaoust , @Anirudh_Sriram , and many more from the team.

And, there’s this awesome course: Machine Learning Crash Course  |  Google Developers (You can find more resources at Machine learning education  |  TensorFlow).


Hi @dan, here are two book recommendations you can use to learn more (both are excellent).


Hi @dan ,
I am also a high school student working with TensorFlow. I personally started off learning Machine Learning from Andrew Ng’s courses and strongly think they could build the basics for students. To learn specifically about TensorFlow I used and would recommend:

  • TF in Practice (now called TensorFlow Developer)
  • TF: Data and Deployment

by @Laurence_Moroney . Apart from this, I think the official TensorFlow Guide is a quite systematic approach to learn. Being in High school myself, another thing that I think has helped me quite a lot to learn is OSS, maybe your students could make small contributions to TensorFlow while learning it; I started off with something as simple as fixing an error in a TensorFlow example!

PS: In case your students want to validate their skills they could also take up the TensorFlow Developer certificate exam; TensorFlow also provides stipends for students giving the exam (which is also how I gave the exam)!


@Laurence_Moroney @jbgordon

I wanna firstly apologise for my question being this long, but this is a burning question I always have, and feel like this is the right place to ask. Its related to the original Q. I am hugely interested in learning the inner workings of the ML algorithms, which I know Tensorflow team packages these ‘workings’ into high level APIs. But somewhere down the line, I also wish to use these helpful APIs and tools in my personal projects/ideas as well. So which of this two would be a better way to start my journey into the world of AI:

  1. Properly approach the topic conceptually and then implement them using tensorflow libraries


  1. Understand my project needs and learn only the related information on how to use the APIs and their associated libraries

This question arises because the APIs are an offerings for developers to get their job done without doing any heavy-lifting in the AI-ML domain, but I wish to do some original contribution in this domain some day. However I also understand how powerful these new APIs and tools from Tensorflow team is, and how it can accelerate the development of projects/ideas I have.

Awaiting an answer, and hoping to have a great time here with fellow AI enthusiasts :slight_smile:


For me, my approach is a hybrid of both, but usually starting with (2). There’s no substitute for just getting something to just ‘work’, as your starting point, even if you don’t fully understand it.

You can then peel it apart little by little to see what’s going on under-the-hood.

That’s part of the magic of open source, and I’ve learned so much by building simple things, and then using step-by-step debugging to break ‘in’ to the framework to see what it’s doing.


Laurence, these are great (sat the first two at 2x) thank you for all of your efforts! I think following along with your video and the first two lessons is a great approach to close the year out on. It will kickstart a nice conversation about Python for a focus for next school year too.

@leo It has always been my belief that solving a “real problem” you have always makes learning something new easier. You’ll need to figure out how you learn best. I am a reader first, so the books for me with Laurence’ video lessons for the classroom I think will be best.

Thank you all for all of the fantastic answers, I am really excited to share this with our learners. And @rishit_dagli thank you for sharing your experience, the certificate is very appealing! I will check out Andrew Ng’s courses (looks like he is on Coursera).


@Laurence_Moroney @dan

Thank you for your individual perspectives. I would definitely consider your words to decide on a proper learning path suited to me.


I suggest also a general introduction to AI that could be useful:

1 Like

Hi @dan

Apart from all the above ML and Python resources, I would like to suggest you to get yourself enrolled in a advanced Mathematics course ( you can use platforms like Khan Academy, Brilliant, Udemy ) or start with the “Mathematics for Machine Learning” book ( Search this on Google, you’ll find it ).

I’ve read this book and it will take you through every mathematical concept with easy and concise explanations. Combining this book with 3Blue1Brown and Wikipedia will help you concrete your concepts. Also, there are other textbooks for Linear Algebra, Probability and Statistics which are the building blocks of ML.

Machine Learning is a math-heavy field. Although you can start with ML ( with a little Math ) especially with scikit-learn, you’ll need strong mathematical thinking to understand the underneath concepts and ideas. A good start will help you with advanced concepts and probably you’ll invent a new algorithm yourself!

1 Like