Neural Network Code Execution With Dynamic Graph Construction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing frameworks for creating neural network source codes are inefficient and struggle with complex graph structures, dynamic changes, and memory management issues, making it difficult to implement and debug neural networks effectively.

Innovation Solution

A new calculation procedure called 'Define-by-Run' dynamically extracts and stores graph structures during learning, allowing for meta changes and recalculating gradients, enabling the use of general-purpose programming languages and improving memory efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If a predetermined framework is used to create neural network source code, then the creation process becomes standardized, but the system becomes inefficient and struggles with complex graph structures

Engineering Contradiction:
Improveease of creating neural network source codeVSAvoidefficiency of executing machine learning
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

Instead of defining the neural network structure first and then running it (traditional approach), the patent inverts the process by running the network first to dynamically build the computation graph, then using that runtime graph for training. This inversion allows the system to handle complex graph structures more efficiently while maintaining ease of creation through standard programming languages.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The patent implements dynamic graph construction where the computation graph is built at runtime based on actual execution paths rather than being statically defined. This allows the graph structure to adapt dynamically during execution, improving efficiency with complex structures while maintaining simplicity in the creation process through conventional programming.

Inventive Principle:
Principle #15Dynamics

2Stability of the object's composition

If the graph structure is defined statically in advance, then the structure remains stable, but the system cannot handle dynamic changes and meta operations

Engineering Contradiction:
Improvestability of graph structureVSAvoidability to handle dynamic changes and meta operations
Core Design Contradiction:
Stability of the object's compositionVSAdaptability or versatility

Solution Approach 1:

The patent makes the computation graph dynamic by constructing it at runtime based on actual execution. The graph can be modified, extended, and adapted during execution to handle dynamic changes and meta operations, while still providing a stable foundation through the programmed logic that guides its construction.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system serves itself by automatically building the computation graph during execution without requiring external definition. The runtime system self-constructs the graph structure based on the executed code, enabling both stability from the programmed logic and adaptability from the dynamic construction process.

Inventive Principle:
Principle #25Self-service

3Ease of manufacture

If traditional frameworks are used, then implementation is straightforward, but memory management becomes inefficient

Engineering Contradiction:
Improveease of implementationVSAvoidmemory efficiency
Core Design Contradiction:
Ease of manufactureVSLoss of energy

Solution Approach 1:

The patent extracts the graph construction process from the static definition phase and moves it to the runtime execution phase. This extraction allows memory to be allocated and managed more efficiently during execution, reducing memory waste while maintaining ease of implementation through standard programming languages.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs preliminary graph construction during the execution phase before training begins. By building the graph structure in advance during execution rather than at definition time, the system optimizes memory allocation and reduces memory management overhead during the actual training process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250272564A1Information processing device and information processing method
Publication Date: 2025.08.28 PREFERRED NETWORKS INC
  • US20250272564A1 patent drawing
  • US20250272564A1 patent drawing
  • US20250272564A1 patent drawing

AI summary

There is provided an information processing device which efficiently executes machine learning. The information processing device according to one embodiment includes: an obtaining unit which obtains a source code including a code which defines Forward processing of each layer constituting a neural network; a storage unit which stores an association relationship between each Forward processing and Backward processing associated with each Forward processing; and an executing unit which successively executes each code included in the source code, and which calculates an output value of the Forward processing defined by the code based on an input value at a time of execution of each code, and generates a reference structure for Backward processing in a layer associated with the code based on the association relationship stored in the storage unit.