Learning - ML for Software Engineering - PyConUG 24

By the time you are reading this, I am done with my PyCon Uganda 2024 presentation. Yey! 

Wow, It has been a while since I have written a blog post. A lot has happened since the last post and I can only be grateful to God. Anyway, let me get straight to the point. 

This blog post is all about the resources I wanted to share from my presentation. If you want to really learn (and I highly recommend) about Machine Learning in Software Engineering, I added a podcast episode on my show "AI Minds and John" where my two AI-co hosts Kara and Zara took a deep dive into the topic. 

Feel free to listen below:


If you have enjoyed this episode, visit my channel and stay tuned for more exciting content.

If you also want to take a look at my presentation, please download the pdf here:

And for the resources, here is the list of ML resources and courses I promised to share during my presentation at PyCon. There are a little tips to guide you as well. Keep in mind, I will keep the list and this blog post updated with time.

Note: For Coursera Paid Courses, you can apply for financial aid. Financial aid allows you to study these courses for free. Find out how to apply for financial aid here or using this YouTube video.


Okay, let's start! This post has only 3 segments, a list of resources from DeepMind, a skill checklist and some advice (learning plan).


DeepMind's resources 

DeepMind researchers and engineers curated a list of resources that contain courses, videos and books to learn about Artificial Intelligence and Machine Learning. 

Tap this link to access it.

Skills Checklist

Along your learning ML journey, it would be nice to check which skills you have obtained to either apply to your learning plan and increase your skillset. Remember learning never stops.
This roadmap from i.am.ai will definitely help you on your journey and will be the perfect skills checklist.

Before Starting any ML Project

Machine Learning Mastery Guide 📚:

Start Here: Applying the Machine Learning Process


Learning Path

This plan is a learning plan I developed for myself. Do not take it as final but use it to guide yourself in creating your own plan. I created this learning path for my journey to become a machine learning engineer. We may not share the same goal, but if it's anything with ML, I'm sure you will find this path helpful. Remember, learning never stops, use this to help you create a learning path for your whole career.


1. Beginner Stage


Courses


  1. Mathematics for Machine Learning Specialization  

This specialization has three courses that cover the 3 basic math areas in ML. It is available on Coursera and is easy to understand. 

  1. Feature Engineering from Google 🧑🏿‍💻

   Link: (Analytics Vidya and IBM Coursera)


  1. Machine Learning Specialization (Andrew Ng) 🧑🏿‍💻

   Link: (Coursera)

  1. Scikit Learn Machine Learning Mastery 🧑🏿‍💻
  1. Machine Learning Engineering for Production (MLOps) 🧑🏿‍💻 (Optional)

   Link: (Coursera)


Additional skills to elevate yourself(Especially if you want to become a Machine Learning Engineer:

  • MLOps Principles and Tools
  • Hugging Face
  • Docker and Kubernetes
  • Weights and Biases
  • MLFlow
  • DVC.


  1. Get Career Advice from Professionals in the field.
  2. Pretraining LLMs (Short courses)📘👨🏾‍💻 (Optional)

Course : DeepLearning.AI

Generative AI with LLMs:

Course: Coursera 


Resources:

- 📚: "Hands-on Machine Learning" by Aurelien Geron

- 📚: "The 100-page ML "

- OneDrive folder for ML Cheatsheet


Advice:

- Focus on understanding fundamental concepts

- Practice implementing basic algorithms

- Start small projects to apply what you're learning

- Don't be afraid to ask questions and seek help


2. Intermediate Stage:


Courses:

  1. Learn Hadoop and Spark. 🧑🏿‍💻
  1. Deep Learning with PyTorch 🧑🏿‍💻

Link: (Zero to Mastery)


  1. TensorFlow Developer Professional Certificate Specialization 🧑🏿‍💻

Link: (Coursera)


  1. Deep Learning Specialization (Andrew Ng)

Course 1 : Neural Networks and Deep Learning ☑️

Link: (Coursera)


  1. Data Structures and Alrogithms.
  1. Get Career Advice from Professionals in the field.


Resources:

- 📚: "Deep Learning with Python" by François Chollet

- DeepLearning.AI AI Notes: https://www.deeplearning.ai/ai-notes/index.html

- Learn Parallel Programming with CUDA

- Data Version Control (DVC)


Advice:

- Start reading research papers in your areas of interest

- Participate in Kaggle competitions

- Build a portfolio of personal projects

- Consider teaching or talking about ML to solidify your knowledge


Now that you are getting into an advanced stage, think about this image below:



3. Advanced Stage:


Courses:


  1. TensorFlow Advanced Techniques Specialization 🧑🏿‍💻

Link: (Coursera)


  1. Generative Adversarial Networks

Link: (Coursera)


  1. Choose one specialization based on your interests:

   - Reinforcement Learning

   - Self-Driving Cars

   - Robotics

   - Natural Language Processing



Resources:

- 📚: "Introduction to Machine Learning Interviews"

  Link: https://huyenchip.com/ml-interviews-📚/

- Fast API for building APIs

- GitHub repositories of implemented research papers

- AWS Machine Learning Specialty certification


Advice:

- Implement research papers to deepen understanding

- Contribute to open-source projects

- Network with professionals in your chosen field

- Consider pursuing a master's degree for deeper specialization


Projects:


Learn some Business Management and Administration to diversify your skillset. This allows you to learn integrate the Business perspective which is important in your growth and applications of ML incase your are in industry.




Additional Resources Throughout The Journey

Online platforms

   - Learning LangChain - DeepLearning AI

   - Hugging Face NLP Course

   - PyTorch Fundamentals (ZTM)

   - Understandind Deep Learning Book


Books 

  • Buy Stat quest Machine Learning Illustrated.
  • Buy Deep Learning Illustrated by John Krohn.
  • Math for ML (In Library)


AI Roadmaps and Guides:

   - TensorFlow Guide: https://www.tensorflow.org/resources/learn-ml

   - What's AI Guide: https://aman.ai/

   - DeepMind Resource List (check for link)

   - AI Expert Roadmap 


YouTube Channels:

   - 3Blue1Brown for refreshing math concepts: https://youtube.com/@3blue1brown


Certifications

  • AWS Machine Learning Specialty
  • Google Developers Expert (Machine Learning)


Cloud Platforms:

   - AWS Machine Learning: (check for specific link)

   - Google Cloud AI Learning Path: (check for specific link)


Remember to regularly check your progress against your learning goals, and don't hesitate to adjust your own plan as needed. Stay curious, keep practicing, and always strive to apply what you learn to real-world problems. Your journey in AI and Machine Learning is exciting and full of potential. Embrace the challenges, celebrate your progress, and keep your faith strong as you work towards your goals.


For those still in University, or recent Graduates: Here is some great career advice from Mark Andreesen



Thank you for reaching this far! Remember, you are the one who creates your own journey. You know the best ways for you to learn and I hope you enjoy learning. I wish you the best in your career. Remember, learning never stops!





Comments