Joint Neural Network and Hardware Accelerator Architecture Search

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for determining neural network architectures and hardware accelerator designs often require separate and sequential searches, consuming more computational resources and failing to optimize both architectures simultaneously for efficient machine learning task performance.

Innovation Solution

A system that jointly determines optimal neural network architectures and hardware accelerator designs using a controller policy, employing reinforcement learning to adjust hyperparameters and hardware parameters, thereby optimizing network performance and accelerator efficiency concurrently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If separate and sequential searches are used for determining neural network architectures and hardware accelerator designs, then the search process is simpler to implement, but computational resource consumption increases and optimization efficiency decreases

Engineering Contradiction:
Improveease of implementationVSAvoidcomputational resource consumption
Core Design Contradiction:
Ease of manufactureVSLoss of energy

Solution Approach 1:

The patent merges the neural network architecture search and hardware accelerator design search into a single joint search process. The controller simultaneously searches both architecture spaces, evaluating candidate pairs together based on a combined objective function that considers both neural network performance and hardware efficiency metrics, thereby reducing redundant computations and resource consumption.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The controller is designed with multi-functionality to handle both architecture search tasks simultaneously. It can generate candidate architectures for both neural networks and hardware accelerators, evaluate them together, and optimize both designs concurrently, making the search system versatile and efficient.

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

2Ease of manufacture

If separate and sequential searches are used for determining neural network architectures and hardware accelerator designs, then the search process is simpler to implement, but optimization efficiency decreases

Engineering Contradiction:
Improveease of implementationVSAvoidoptimization efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent merges the neural network architecture search and hardware accelerator design search into a single joint search process. The controller simultaneously searches both architecture spaces, evaluating candidate pairs together based on a combined objective function that considers both neural network performance and hardware efficiency metrics, thereby reducing redundant computations and resource consumption.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary evaluation of architecture pairs by using the controller to generate and assess multiple candidate architectures together before final implementation. This preliminary joint evaluation identifies promising architecture combinations early, avoiding wasted computation on incompatible pairs later in the process.

Inventive Principle:
Principle #10Preliminary action

3Loss of energy

If joint search is used for determining neural network architectures and hardware accelerator designs, then computational resource consumption is reduced and optimization efficiency improves, but system complexity increases

Engineering Contradiction:
Improvecomputational resource consumptionVSAvoidsystem complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The controller serves as an intermediary that manages the complexity of the joint search process. It coordinates the generation, evaluation, and selection of architecture pairs between the neural network design space and hardware accelerator design space, simplifying the overall system architecture while enabling efficient joint optimization.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where evaluation results of architecture pairs are fed back to the controller to guide subsequent search decisions. This feedback loop allows the system to learn from previous evaluations and adjust its search strategy, managing complexity through adaptive control rather than rigid predefined processes.

Inventive Principle:
Principle #23Feedback

4Productivity

If joint search is used for determining neural network architectures and hardware accelerator designs, then optimization efficiency improves, but the difficulty of evaluating both architectures simultaneously increases

Engineering Contradiction:
Improveoptimization efficiencyVSAvoidevaluation difficulty
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The evaluation process is segmented into distinct components: neural network performance evaluation and hardware efficiency evaluation. The controller manages these segmented evaluations separately but coordinates them to assess architecture pairs holistically, making the complex evaluation task more manageable and systematic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller serves as an intermediary that manages the complexity of the joint search process. It coordinates the generation, evaluation, and selection of architecture pairs between the neural network design space and hardware accelerator design space, simplifying the overall system architecture while enabling efficient joint optimization.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240005129A1Neural architecture and hardware accelerator search
Publication Date: 2024.01.04 GOOGLE LLC
  • US20240005129A1 patent drawing
  • US20240005129A1 patent drawing
  • US20240005129A1 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for jointly determining neural network architectures and hardware accelerator architectures. In one aspect, a method includes: generating, using a controller policy, a batch of one or more output sequences, each output sequence in the batch defining a respective architecture of a child neural network and a respective architecture of a hardware accelerator; for each output sequence in the batch: training a respective instance of the child neural network having the architecture defined by the output sequence; evaluating a network performance of the trained instance of the child neural; and evaluating an accelerator performance of a respective instance of the hardware accelerator having the architecture defined by the output sequence to determine an accelerator performance metric for the instance of the hardware accelerator; and using the network performance metrics and the accelerator performance metrics to adjust the controller policy.