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:
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.
- 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:
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.
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:
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.
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:
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.
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:
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.
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:
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.
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:
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.
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:
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.
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:
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.
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:
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.
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:
In this module, you will:
- Create a pipeline that deploys a smoke test using virtual IoT Edge devices.
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:
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.
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:
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.
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:
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.
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:
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.
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:
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.
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:
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.
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:
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.