Neural Network Conversion Tool for Mobile Inference

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing machine learning models, such as NN models, face challenges in direct execution on mobile devices due to limited computation resources, leading to degraded performance and efficiency during inferencing, as they require frequent off-chip memory access and lack optimal kernel operations for combining layers.

Innovation Solution

A conversion tool that optimizes NN models by generating device-specific net-list and weight objects, utilizing a model parser, graph optimizer, and net-list generator to simplify computing graphs and combine layers into single kernel operations, reducing off-chip memory access and eliminating the need for human labeling of combinable sub-structures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If NN models are executed directly on mobile devices with limited computation resources, then device autonomy and reduced data transmission are improved, but performance and efficiency deteriorate due to frequent off-chip memory access and lack of optimized kernel operations

Engineering Contradiction:
Improvedevice autonomyVSAvoidinferencing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The computing graph is segmented into multiple layers that can be individually optimized and combined. The system parses the NN model into discrete layers, allowing selective combination of adjacent layers into single kernel operations, thereby reducing memory access frequency while maintaining device autonomy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Adjacent layers in the computing graph are merged into single kernel operations when their combination is supported by the device kernel library. This merging reduces the number of separate operations and memory access events, improving inferencing efficiency without sacrificing device autonomy.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If multiple layers of NN model are combined into single kernel operations, then memory access operations are reduced and efficiency is improved, but device complexity and conversion process complexity increase

Engineering Contradiction:
Improveinferencing efficiencyVSAvoidconversion process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by pre-processing the NN model through parsing, optimization, and net-list generation before execution. The conversion tool prepares the model in advance by identifying combinable layers and generating device-specific net-lists, so that the actual inferencing requires minimal complex operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A conversion tool acts as an intermediary between the standard NN model format and the device-specific execution format. This intermediary automatically performs graph parsing, optimization, and net-list generation, shielding users from the complexity of manual layer combination while enabling efficient execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If automatic layer mapping and optimization is performed, then human intervention is reduced and ease of operation is improved, but conversion tool complexity increases

Engineering Contradiction:
Improveautomation levelVSAvoidconversion tool complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The conversion tool performs self-service by automatically parsing the computing graph, identifying combinable layers, optimizing the graph structure, and generating device-specific net-lists without human intervention. The system serves itself by having built-in capabilities to handle the entire conversion process autonomously.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The conversion tool serves as an automatic intermediary that handles all complex conversion tasks. It includes components like the computing graph parser, optimizer, and net-list generator that work together to automatically map high-level NN operations to device-specific kernel operations, eliminating the need for manual optimization while containing complexity within the tool itself.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240303462A1Multi-platform neural network deployment
Publication Date: 2024.09.12 ADOBE INC
  • US20240303462A1 patent drawing
  • US20240303462A1 patent drawing
  • US20240303462A1 patent drawing

AI summary

In various examples, a machine learning model is converted for execution by a computing device. For example, a computing graph is generated based on the machine learning model and sub-graphs within the computing graph that match sub-structures that are detected and combined into a vertex to generate an optimized computing graph. A net-list object and weight object are then generated based on the optimized computing graph and provided to the computing device to enable inferencing operations.