IPN-Dharma IA Lab

    Bienvenidos
    IPN-Dharma IA Lab

    Es una iniciativa de Laboratorio de Inteligencia Artificial del CIC del IPN con la colaboración de DHARMA para motivar a investigadores, profesores y estudiantes a aprovechar los cursos, recursos y herramientas de las principales plataformas tecnológicas de la industria en las áreas de Aprendizaje Automático, Ciencia de Datos, Computación en la Nube, Inteligencia Artificial e Internet de las Cosas con el propósito de generar una experiencia práctica a través de un modelo de aprendizaje entre pares y por objetivos.

    Nivel 2: Conocimiento Contextual

    AI Edge Engineer

    The interplay between AI, cloud, and edge is a rapidly evolving domain. Currently, many IoT solutions are based on basic telemetry. The telemetry function captures data from edge devices and stores it in a data store. Our approach extends beyond basic telemetry. We aim to model problems in the real world through machine learning and deep learning algorithms and implement the model through AI and Cloud on to edge devices. The model is trained in the cloud and deployed on the edge device. The deployment to the edge provides a feedback loop to improve the business process (digital transformation).

    In this learning path, we take an interdisciplinary engineering approach. We aspire to create a standard template for many complex areas for deployment of AI on edge devices such as Drones, Autonomous vehicles etc. The learning path presents implementation strategies for an evolving landscape of complex AI applications. Containers are central to this approach. When deployed to edge devices, containers can encapsulate deployment environments for a range of diverse hardware. CICD (Continuous integration - continuous deployment) is a logical extension to deploying containers on edge devices. In future modules in this learning path, we may include other techniques such as serverless computing and deployment on Microcontroller Units.

    The engineering-led approach underpins themes / pedagogies for engineering education such as:

    • Systems thinking.
    • Experimentation and Problem solving.
    • Improving through experimentation.
    • Deployment and analysis through testing.
    • Impact on other engineering domains.
    • Forecasting behaviour of a component or system.
    • Design considerations.
    • Working within constraints/tolerances and specific operating conditions – for example, device constraints.
    • Safety and security considerations.
    • Building tools which help to create the solution.
    • Improving processes - Using edge(IoT) to provide an analytics feedback loop to the business process to drive processes.
    • The societal impact of engineering.
    • The aesthetical impact of design and engineering.
    • Deployments at scale.
    • Solving complex business problems by an end-to-end deployment of AI, edge, and cloud.
    Ultimately, AI, cloud, and edge technologies deployed as containers in CICD mode can transform whole industries by creating an industry-specific, self-learning ecosystem spanning the entire value chain. We aspire to design such a set of templates/methodologies for the deployment of AI to edge devices in the context of the cloud. In this learning path, you will:

    • Learn about creating solutions using IoT and the cloud.
    • Understand the process of deploying IoT based solutions on edge devices.
    • Learn the process of implementing models to edge devices using containers.
    • Explore the use of DevOps for edge devices.

    Cursos en este programa

    1) Introduction to Azure IoT

    Explain the significance of Azure IoT and the problems it solves. Describe Azure IoT components and explain how you combine them to solve IoT solutions, which create value for enterprises.

    In this module, you will:
    • Evaluate whether Azure IoT can address the problems associated with large-scale IoT deployment.
    • Describe how the components of Azure IoT work together to build a cloud-based IoT solution.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    2) Introduction to Azure IoT Hub

    Assess the characteristics of Azure IoT Hub and determine scenarios when to use IoT Hub.

    In this module, you will:
    • Evaluate whether IoT Hub can effectively address the problems associated with large-scale IoT deployment.
    • Describe how the components of IoT hub work together to build IoT applications managed through the cloud.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    3) Introduction to Azure IoT Edge

    Explain the essential characteristics of the IoT Edge and the functionality of the IoT Edge components (modules, runtime, and cloud interface). Characterize the types of problems that you can solve with IoT Edge. Describe how the elements of IoT Edge can be combined to solve the problem of deploying IoT applications in the cloud.

    In this module, you will:
    • Evaluate situations where IoT Edge can help in deploying IoT applications to the cloud.
    • Describe the components of IoT Edge.
    • List the capabilities of the IoT Edge for the IoT solutions in the cloud.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    4) Deploy a Pre-Built Module to the Edge Device

    Deploy a pre-built temperature simulator module to an IoT Edge device using a container. Check that the module was successfully created and deployed and view simulated data.

    In this module, you will:
    • Launch a module from Azure portal to IoT Edge.
    • Generate simulated data from an edge device.
    • Verify data generated from the edge device.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    5) Train and Package an Azure Machine Learning Module for Deployment to IoT Edge Device

    Deploy a trained machine learning module to the edge using a container. The machine learning module you create will be deployed to an IoT Edge device. You'll check that your container image was successfully created and stored in the Azure container registry. You'll view the data from the deployed module from the IoT Edge.

    In this module, you will:
    • Launch a module from Azure portal to IoT Edge using a container.
    • Generate simulated data from an edge device.
    • Verify data generated from the edge device.

    Esfuerzo  Esfuerzo estimado 2 horas

    Idioma  Idioma inglés

    Link  Microsoft Learn

    6) Introduction to Azure Functions for IoT

    Assess the characteristics of Azure Functions for IoT. Describe the function of triggers and bindings and show how you combine them to create a scalable IoT solution. Describe the benefits of using cloud infrastructure to rapidly deploy IoT applications with Azure Functions.

    In this module, you will:
    • Explain how Azure Functions implements business logic with IoT devices.
    • Decide whether Azure Functions is right choice for your IoT solution.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    7) Connecting IoT Devices to Cognitive Services Using Azure Functions

    Create and deploy an Azure function to make a language translation IoT device. The function will use Cognitive Speech Service. Your device will record a voice in a foreign language and convert the speech to a target language.

    In this module, you will:
    • Configure an IoT device to an IoT Hub.
    • Integrate Cognitive Speech Service into an Azure function.
    • Deploy an Azure function app.
    • Test your Azure function app with an IoT device.

    Esfuerzo  Esfuerzo estimado 2 horas

    Idioma  Idioma inglés

    Link  Microsoft Learn

    8) Run Cognitive Services on IoT Edge

    Implement a cognitive service for performing language detection on an IoT Edge device. Describe the components and steps for implementing a cognitive service on an IoT Edge device.

    In this module, you will:
    • Implement a cognitive service for performing language detection on an edge device.
    • Describe how the components and services of a solution to deploy a cognitive service on an edge device work together to solve the problem of language detection on an edge device.

    Esfuerzo  Esfuerzo estimado 2 horas

    Idioma  Idioma inglés

    Link  Microsoft Learn

    9) Introduction to MLOps for IoT Edge

    Analyze the significance of MLOps in the development and deployment of machine learning models for IoT Edge. Describe the components of the MLOps pipeline and show how you can combine them to create models that can be retrained automatically for IoT Edge devices.

    In this module, you will:
    • Evaluate whether MLOps is appropriate to automate your machine learning model building and deployment processes for edge devices.
    • Describe how the MLOps pipeline and components work together to deploy and retrain machine learning models on edge devices.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    10) Implement CI/CD for IoT Edge

    Define a solution for smoke testing for virtual Azure IoT Edge devices. Your solution will employ a CI/CD (continuous integration/continuous deployment) strategy using Azure DevOps and Azure Pipelines on a Kubernetes cluster.

    In this module, you will:
    • Create a pipeline that deploys a smoke test using virtual IoT Edge devices.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    11) Introduction to Azure Sphere

    Determine the types of business problems that can be solved using Azure Sphere. Explain the capabilities and the components (microcontroller unit, operating system, cloud-based security service) for the Azure Sphere. Describe how the components provide a secure platform to develop, deploy, and maintain secure internet connected IoT solutions.

    In this module, you will:
    • Evaluate whether Azure Sphere is right product for creating secure IoT applications.
    • Describe how the components of an Azure Sphere work together to create end-to-end secure environment for IoT devices.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    12) Image Classification Using Azure Sphere

    Implement a neural network model for performing real-time image classification on a secured, internet-connected microcontroller-based device (Azure Sphere). Describe the components and steps for implementing a pre-trained image classification model on Azure Sphere.

    In this module, you will:
    • Implement image classification on a microcontroller device using a pre-trained neural network model.
    • Describe how the components and services of Azure Sphere work to deploy a pre-trained image classification model.

    Esfuerzo  Esfuerzo estimado 2 horas

    Idioma  Idioma inglés

    Link  Microsoft Learn

    13) Develop Secure IoT Solutions for Azure Sphere with IoT Hub

    Deploy an Azure Sphere device application to monitor ambient conditions for laboratory conditions. The application will monitor the room environment conditions, connect to IoT Hub, and send telemetry data from the device to the cloud. You'll control cloud-to-device communications and undertake actions as needed.

    In this module, you will:
    • Create an Azure IoT hub and a Device Provisioning Services.
    • Configure your Azure Sphere device application to send telemetry to Azure IoT Hub.
    • Build and deploy the Azure Sphere device application.
    • View the environment telemetry using Azure Iot Explorer.
    • Control an Azure Sphere device application by using Azure IoT Hub device twins and direct methods.
    • Deploy a new more sensitive room sensor onto an Azure Sphere real-time core running Azure RTOS.
    • Read the data from the new sensor running on the real-time core and send the data to IoT Hub.

    Esfuerzo  Esfuerzo estimado 3 horas

    Idioma  Idioma inglés

    Link  Microsoft Learn

    14) Develop Secure IoT Solutions for Azure Sphere, Azure RTOS and Azure IoT Central

    Deploy an Azure Sphere application to monitor ambient conditions for a laboratory. The application will monitor the room environment, connect to Azure IoT Central, and send telemetry data from the device to the cloud. You'll control cloud-to-device communications and undertake actions as needed.

    In this module, you will:
    • Create an Azure IoT Central application.
    • Configure your Azure Sphere application to Azure IoT Central.
    • Build and deploy the Azure Sphere application.
    • Display environment telemetry in the Azure IoT Central dashboard.
    • Control an Azure Sphere application by using Azure IoT Central properties and commands.
    • Deploy a new more sensitive room sensor onto an Azure Sphere real-time core running Azure RTOS.
    • Read the data from the new sensor running on the real-time core and send the data to IoT Central.

    Esfuerzo  Esfuerzo estimado 2 horas

    Idioma  Idioma inglés

    Link  Microsoft Learn

    15) Create an Image Recognition Solution with Azure IoT Edge and Azure Cognitive Services

    Create a computer vision solution on the IoT Edge using Azure Cognitive Services and Azure Speech Services. The application will capture and identify scanned item and convert the name of the item to the speech.

    In this module, you will:
    • Use a pre-trained image classification module with Azure Cognitive Services.
    • Deploy your solution to the IoT Edge using VS Code.
    • Verify a module that running successfully.

    Esfuerzo  Esfuerzo estimado 2 horas

    Idioma  Idioma inglés

    Link  Microsoft Learn

    16) Void Detection on Edge Devices with Live Video Analytics Using Own Images and Video

    Use a Live Video Analytics module on IoT Edge and deploy a Custom Vision machine learning solution to an IoT Edge device. The solution will identify void spaces in shelves. Check that the solution is successfully deployed and test your solution from a web application.

    In this module, you will:
    • Use Live Video Analytics to build video analytics solution with Custom Vision.
    • Deploy a set of modules to an IoT Edge virtual machine using the installer.
    • Set up an application that uses the virtual device for rapid inference at the edge.
    • Deploy a solution that will enable you to watch images with defects through a web application.

    Esfuerzo  Esfuerzo estimado 1 hora

    Idioma  Idioma inglés

    Link  Microsoft Learn

    17) Object Detection on Edge Devices with Live Video Analytics Using YOLO Model

    Use a Live Video Analytics module on IoT Edge and deploy a Custom Vision machine learning solution to an IoT Edge device. The solution will identify void spaces in shelves. Check that the solution is successfully deployed and test your solution from a web application.

    In this module, you will:
    • Use Live Video Analytics to build video analytics solution with Custom Vision.
    • Deploy a set of modules to an IoT Edge virtual machine using the installer.
    • Set up an application that uses the virtual device for rapid inference at the edge.
    • Deploy a solution that will enable you to watch images with defects through a web application.

    Esfuerzo  Esfuerzo estimado 2 horas

    Idioma  Idioma inglés

    Link  Microsoft Learn

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