Skip to content
  • Sign In
  • Try Now
View all events
Machine Learning

Machine Learning Foundations: Algorithms & Data Structures

Published by Pearson

Beginner to intermediate content levelBeginner to intermediate

Computer Science Techniques for Developing the Most Efficient Data Models

The [Machine Learning Foundations](https://learning.oreilly.com/search/?query=%22Machine%20Learning%20Foundations%22&formats=live online training) series of online trainings provides a comprehensive overview of all of the subjects -- mathematics, statistics, and computer science -- that underlie contemporary machine learning techniques, including deep learning and other artificial intelligence approaches.

All of the classes in the series bring theory to life through the combination of vivid full-color illustrations, straightforward Python examples within hands-on Jupyter notebook demos, and comprehension exercises with fully-worked solutions.

The focus is on providing you with a practical, functional understanding of the content covered. Context will be given for each topic, highlighting its relevance to machine learning. You will be better-positioned to understand cutting-edge machine learning papers and you will be provided with resources for digging even deeper into topics that pique your curiosity.

The eight classes in the series are organized into four couplets:

1. Linear Algebra

2. Calculus

3. Statistics

4. Computer Science

The content in the second class of each couplet follows directly from the content of the first, however you’re most welcome to pick and choose between any of the individual classes based on your particular interests or your existing familiarity with the material. (Note that at any given time, only a subset of these classes will be scheduled and open for registration. To be pushed notifications of upcoming classes in the series, sign up for the instructor’s email newsletter at jonkrohn.com.)

This class, Algorithms & Data Structures, introduces the most important computer science topics for machine learning, enabling you to design and deploy computationally efficient data models. Through the measured exposition of theory paired with interactive examples, you’ll develop a working understanding of all of the essential data structures across the list, dictionary, tree, and graph families. You’ll also learn the key algorithms for working with these structures, including those for searching, sorting, hashing, and traversing data. The content covered in this class is itself foundational for the Optimization class of the Machine Learning Foundations series.

What you’ll learn and how you can apply it

  • Use “Big O” notation to characterize the time efficiency and space efficiency of a given algorithm, enabling you to select or devise the most sensible approach for tackling a particular machine learning problem with the hardware resources available to you.
  • Get acquainted with the entire range of the most widely-used Python data structures, including list-, dictionary-, tree-, and graph-based structures.
  • Develop an understanding of all of the essential algorithms for working with data, including those for searching, sorting, hashing, and traversing.

This live event is for you because...

  • You use high-level software libraries (e.g., scikit-learn, Keras, TensorFlow) to train or deploy machine learning algorithms, and would now like to understand the fundamentals underlying the abstractions, enabling you to expand your capabilities
  • You’re a software developer who would like to develop a firm foundation for the deployment of machine learning algorithms into production systems
  • You’re a data scientist who would like to reinforce your understanding of the subjects at the core of your professional discipline
  • You’re a data analyst or A.I. enthusiast who would like to become a data scientist or data/ML engineer, and so you’re keen to deeply understand the field you’re entering from the ground up (very wise of you!)

Prerequisites

  • All code demos will be in Python so experience with it or another object-oriented programming language would be helpful for following along with the hands-on examples.

Materials, downloads, or Supplemental Content needed in advance

  • During class, we’ll work on Jupyter notebooks interactively in the cloud via Google Colab. This requires zero setup and instructions will be provided in class.

Schedule

The time frames are only estimates and may vary according to how the class is progressing.

Segment 1: Introduction to Data Structures and Algorithms (40 min)

  • A Brief History of Data and Data Structures
  • A Brief History of Algorithms
  • “Big O” Notation for Time and Space Complexity
  • Q&A and Break

Segment 2: Lists and Dictionaries (100 min)

  • List-Based Data Structures: Arrays, Linked Lists, Stacks, Queues, and Deques
  • Searching and Sorting: Binary, Bubble, Merge, and Quick
  • Dictionaries: Sets and Maps
  • Hashing: Hash Tables and Hash Maps
  • Q&A and Break

Segment 3: Trees and Graphs (70 min)

  • Trees: Binary Search, Heaps, and Self-Balancing
  • Graphs: Terminology, Coded Representations, Properties, Traversals, and Paths
  • Resources for Further Study of Data Structures & Algorithms
  • Final Exercises and Q&A

Your Instructor

  • Jon Krohn

    Jon Krohn is Co-Founder and Chief Data Scientist at the machine learning company Nebula. He authored the book Deep Learning Illustrated, an instant #1 bestseller that was translated into seven languages. He is also the host of SuperDataScience, the data science industry’s most listened-to podcast. Jon is renowned for his compelling lectures, which he offers at leading universities and conferences, as well as via his award-winning YouTube channel. He holds a PhD from Oxford and has been publishing on machine learning in prominent academic journals since 2010.

    linkedinXlinksearch