IPN CIC

    Welcome
    IPN-Dharma AI Lab

    This is an IPN CIC - DHARMA initiative to provide an Artificial Intelligence Laboratory to motivate researchers, professors and students to take advantage of the courses, resources and tools of the main technology platforms of the industry in the areas of Machine Learning, Data Science, Cloud Computing, Artificial Intelligence and Internet of Things with the purpose of generating a practical experience through a learning model between peers and by objectives.

    Level 1: Literacy and Foundations

    Foundations of Data Science for Machine Learning

    From the most basic classical machine learning models, to exploratory data analysis and customizing architectures, you’ll be guided by easy to digest conceptual content and interactive Jupyter notebooks, all without leaving your browser.

    Foundations of Data Science for Machine Learning is the complete learning path and the recommended option for most people. It has all the same modules as the learning paths Understand Data Science for Machine Learning and Create Machine Learning Models with a custom flow that maximizes reinforcement of concepts.

    If you want to learn about both the underlying concepts as well as how to get into building models with the most common machine learning tools this is the path for you. It's also the best path if you plan to move beyond classic machine learning, and get an education in deep learning and neural networks, which we only introduce here.

    Courses in this program

    1) Introduction to Machine Learning

    A high-level overview of machine learning for people with little or no knowledge of computer science and statistics. You’ll be introduced to some essential concepts, explore data, and interactively go through the machine learning life-cycle - using Python to train, save, and use a machine learning model like we would in the real world.

    In this module, you will:
    • Explore how machine learning differs from traditional software.
    • Create and test a machine learning model.
    • Load a model and use it with new data.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    2) Build Classical Machine Learning Models with Supervised Learning

    Supervised learning is a form of machine learning where an algorithm learns from examples of data. We progressively paint a picture of how supervised learning automatically generates a model that can make predictions about the real world. We also touch on how these models are tested, and difficulties that can arise in training them.

    In this module, you will:
    • Define supervised and unsupervised learning.
    • Explore how cost functions affect the learning process.
    • Discover how models are optimized by gradient descent.
    • Experiment with learning rates, and see how they can affect training.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    3) Introduction to Data for Machine Learning

    The power of machine learning models comes from the data that is used to train them. Through content and exercises, we explore how to understand your data, how to encode it so that the computer can interpret it properly, how to clean it of errors, and tips that will help you create models that perform well.

    In this module, you will:
    • Visualize large datasets with Exploratory Data Analysis (EDA).
    • Clean a dataset of errors.
    • Predict unknown values using numeric and categorical data.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    4) Explore and Analyze Data with Python

    Data exploration and analysis is at the core of data science. Data scientists require skills in languages like Python to explore, visualize, and manipulate data.

    In this module, you will learn:
    • Common data exploration and analysis tasks.
    • How to use Python packages like NumPy, Pandas, and Matplotlib to analyze data.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    5) Train and Understand Regression Models in Machine Learning

    Regression is arguably the most widely used machine learning technique, commonly underlying scientific discoveries, business planning, and stock market analytics. This learning material takes a dive into some common regression analyses, both simple and more complex, and provides some insight on how to assess model performance.

    In this module, you will:
    • Understand how regression works.
    • Work with new algorithms: Linear regression, multiple linear regression, and polynomial regression.
    • Understand the strengths and limitations of regression models.
    • Visualize error and cost functions in linear regression.
    • Understand basic evaluation metrics for regression.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    6) Refine and Test Machine Learning Models

    When we think of machine learning, we often focus on the training process. A small amount of preparation before this process can not only speed up and improve learning but also give us some confidence about how well our models will work when faced with data we have never seen before.

    In this module, you will:
    • Define feature scaling.
    • Create and work with test datasets.
    • Articulate how testing models can both improve and harm training.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    7) Train and Evaluate Regression Models

    Regression is a commonly used kind of machine learning for predicting numeric values.

    In this module, you'll learn:
    • When to use regression models.
    • How to train and evaluate regression models using the Scikit-Learn framework.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    8) Create and Understand Classification Models in Machine Learning

    Classification means assigning items into categories, or can also be thought of automated decision making. Here we introduce classification models through logistic regression, providing you with a stepping-stone toward more complex and exciting classification methods.

    In this module, you will:
    • Discover how classification differs from classical regression.
    • Build models that can perform classification tasks.
    • Explore how to assess and improve classification models.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    9) Select and Customize Architectures and Hyperparameters Using Random Forest

    More complex models often can be manually customized to improve how effective they're. Through exercises and explanatory content, we explore how altering the architecture of more complex models can bring about more effective results.

    In this module, you will:
    • Discover new model types– decision trees and random forests.
    • Learn how model architecture can affect performance.
    • Practice working with hyperparameters to improve training effectiveness.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    10) Confusion Matrix and Data Imbalances

    How do we know if a model is good or bad at classifying our data? The way that computers assess model performance sometimes can be difficult for us to comprehend or can over-simplify how the model will behave in the real world. To build models that work in a satisfactory way, we need to find intuitive ways to assess them, and understand how these metrics can bias our view.

    In this module, you will:
    • Assess performance of classification models.
    • Review metrics to improve classification models.
    • Mitigate performance issues from data imbalances.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    11) Measure and Optimize Model Performance with ROC and AUC

    Receiver operator characteristic curves are a powerful way to assess and fine-tune trained classification models. We introduce and explain the utility of these curves through learning content and practical exercises.

    In this module, you will:
    • Understand how to create ROC curves.
    • Explore how to assess and compare models using these curves.
    • Practice fine-tuning a model using characteristics plotted on ROC curves.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    12) Train and Evaluate Classification Models

    Classification is a kind of machine learning used to categorize items into classes.

    In this module, you'll learn:
    • When to use classification.
    • How to train and evaluate a classification model using the Scikit-Learn framework.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    13) Train and Evaluate Clustering Models

    Clustering is a kind of machine learning that is used to group similar items into clusters.

    In this module, you'll learn:
    • When to use clustering.
    • How to train and evaluate a clustering model using the scikit-learn framework.

    Esfuerzo  Estimated effort 1 hour

    Idioma  English language

    Link  Microsoft Learn

    14) Train and Evaluate Deep Learning Models

    Deep learning is an advanced form of machine learning that emulates the way the human brain learns through networks of connected neurons.

    In this module, you will learn:
    • Basic principles of deep learning.
    • How to train a deep neural network (DNN) using PyTorch or Tensorflow.
    • How to train a convolutional neural network (CNN) using PyTorch or Tensorflow.
    • How to use transfer learning to train a convolutional neural network (CNN) with PyTorch or Tensorflow.

    Esfuerzo  Estimated effort 3 hours

    Idioma  English language

    Link  Microsoft Learn

    © 2015 |Laboratorio de Microtecnología y Sistemas Embebidos | Centro de Investigación en Computación | Instituto Politécnico Nacional