Today's case for AI at the edge
Artificial intelligence (AI) might feel far away, but many of us experience AI every single day in applications like speech to text virtual assistance or fingerprint recognition on smartphones. AI capabilities in IoT applications help to identify patterns and detect variations in IoT edge devices carrying sensors for environmental parameters like temperature or pressure.
Traditionally, simple embedded edge devices collect this data from sensors in the application environment and stream the data to AI systems built on cloud infrastructures to perform analytics and draw inferences. Yet, as the need for real-time decision making in IoT implementations grows, so do connectivity or processing needs—and it is not always possible to stream all data to the cloud for AI processing. This paper will discuss how deploying AI at the edge can improve the efficiency and cost-effectiveness of IoT implementations.
How to deploy AI at the edge
The basic components of a typical edge AI model include both the hardware and software for capturing sensor data, software for training the model for application scenarios as well as the application software that runs the AI model on the IoT device.
A micro-service software that is running on the edge device is responsible for initiating the AI package residing on the edge device upon request by the user. Within the edge device, the feature selections and transformations defined during the training phase are used. The models are customized to the appropriate feature set, which can be extended to include aggregations and engineered features.
Intelligent edge devices are deployed in battery operated applications in areas with low bandwidth and intermittent network connectivity. Edge device manufacturers are building sensors with integrated processing and memory capabilities and widely used low-speed communication protocols like BLE, Lora, and NB-IoT in tiny footprints and low power consumption.
The benefits of AI at the edge
While the complexity of such designs may make the edge expensive, the benefits far outweigh the related costs.
Apart from being highly responsive in real time, edge-based AI has significant advantages such as greater security built into the edge devices and lesser data flowing up and down the network. It is highly flexible, as customized solutions are built for each application. Since the inferences are pre-built into the edge devices, it needs fewer skills to operate and maintain.
Edge computing also allows developers to distribute computing across the network by transferring some sophisticated activities to edge processors in the local network like routers, gateways, and servers. They provide very good operational reliability as data is stored and intelligence is derived locally helping deployment in areas of intermittent connectivity or without a network connection.
Ordinarily, building a machine learning model to solve a challenge is complex. Developers have to manage vast amounts of data for model training, choose the best algorithm to implement, and manage the cloud services to train the model. Application developers then deploy the model into a production environment using programming languages like Python. The smart edge device manufacturer will find it extremely difficult to invest in resources to execute an AI implementation on edge from scratch.