Distributed Neural Network Resilience via IoT Neuron Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing machine learning applications face bottlenecks in training and inference due to the availability of suitable computing systems, and if a computing system becomes unavailable due to hardware or software issues, the entire machine learning model becomes inaccessible, leading to implementation challenges in practical applications.

Innovation Solution

A distributed neural network is implemented across multiple computing elements, where neurons can be assigned to different devices, allowing the system to function even if one computing element fails, by redistributing tasks and using available elements to maintain model availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a neural network is implemented on a single computing system, then the implementation is simple and straightforward, but the system becomes unavailable if the computing system experiences hardware or software errors

Engineering Contradiction:
Improvemodel availabilityVSAvoidnetwork distribution complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The neural network is segmented into multiple independent neurons distributed across different computing elements. Each computing element hosts one or more neurons, allowing the network to function partially even if some computing elements fail. This segmentation transforms a single-point-of-failure system into a resilient distributed system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the deployment parameter from centralized to distributed architecture. By modifying how the neural network is instantiated across computing elements, the system achieves improved reliability without fundamentally changing the neural network model itself, only its deployment configuration.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If computing resources are fully utilized for neural network processing, then processing efficiency is high, but the system cannot handle additional requests or failures

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsystem flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The distributed neural network enables dynamic resource allocation where computing elements can be added or removed from the network based on availability and demand. The system can dynamically adapt to failures by redistributing neurons to available computing elements, and scale by incorporating additional computing resources as needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Multiple computing elements serve universal functions as neuron hosts, allowing any available computing element to potentially host any neuron in the network. This universality enables flexible resource utilization where idle resources can be deployed to handle additional processing demands or replace failed elements.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS20240104359A1Distributed neural network
Publication Date: 2024.03.28 SAP SE
  • US20240104359A1 patent drawing
  • US20240104359A1 patent drawing
  • US20240104359A1 patent drawing

AI summary

The present disclosure provides techniques and solutions for defining, deploying, or using distributed neural networks. A distributed neural network includes a plurality of computing elements, which can include Internet of things (IOT) devices, other types of computing devices, or a combination thereof. At least one neuron of a neural network is implemented, for a given data processing request using the distributed neural network, on a single computing element. Disclosed techniques can manage data processing requests in the event of an unreachable computing element, such as by processing the request without the participation of such computing element. Disclosed techniques also include redefining distributed neural networks to replace an unreachable computing element. Information to configure computing elements as neurons can include one or more of definitions of computing elements that will provide input, weights to be associated with inputs, definitions of computing elements to receive output, or an activation function.