Programmable Inference Device Parallel Factor Graph Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing inference computation methods based on factor graphs, such as Sum-Products and Min-Sum approaches, face inefficiencies due to the need to compute a large number of terms, particularly in scenarios where variables can take on multiple values, leading to significant computational complexity and resource requirements.

Innovation Solution

A programmable computation device with multiple processing elements, each equipped with storage for factor definitions and data, and capable of performing parallel computations using combination and accumulation units, allows for concurrent processing of inference tasks specified by variables and factors, with a connectivity system configuring the processing elements according to the graph structure to optimize message passing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional Sum-Products or Min-Sum approaches are used for inference computation, then computation accuracy is maintained, but computational complexity and resource requirements increase significantly

Engineering Contradiction:
Improveinference computation accuracyVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the inference computation into discrete message passing operations between factor nodes and variable nodes in a factor graph. Each processing element handles specific message passing tasks between nodes, dividing the overall computational burden into manageable segments that can be executed in parallel, thereby reducing overall computational complexity while maintaining inference accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a graphical model dimension (factor graphs) to organize computations, transforming the problem from direct high-dimensional computation to structured message passing along graph edges. This dimensional transformation allows complex inference tasks to be decomposed into simpler local computations at each graph node, reducing computational complexity while preserving accuracy.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Loss of information

If traditional inference computation methods are used, then comprehensive probability distribution calculations are performed, but processing time and computational resources increase

Engineering Contradiction:
Improveprobability distribution informationVSAvoidprocessing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent performs preliminary computations by pre-calculating and storing factor tables that contain pre-computed probability relationships between variables. During inference, these pre-computed factors are directly applied through message passing operations, eliminating the need to re-compute full probability distributions from scratch, thereby reducing processing time while preserving complete probability information.

Inventive Principle:
Principle #10Preliminary action

3Use of energy by moving object

If sequential computation is used for message passing in factor graphs, then computational resources are reduced, but processing speed decreases

Engineering Contradiction:
Improvecomputational resource usageVSAvoidinference computation speed
Core Design Contradiction:
Use of energy by moving objectVSSpeed

Solution Approach 1:

The patent segments the factor graph into independent processing elements, each handling message passing between specific pairs of factor nodes and variable nodes. This segmentation enables parallel execution of message passing operations across multiple processing elements, significantly accelerating inference computation while each individual element consumes minimal computational resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent designs processing elements with universal functionality to perform various message passing operations (Sum-Products, Min-Sum, Max-Product) through configurable computation units. This multi-functionality allows the same hardware architecture to accelerate different inference algorithms in parallel, improving computation speed without proportionally increasing overall resource requirements.

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

Data Source

PatentUS9563851B2Programmable probability processing
Publication Date: 2017.02.07 ANALOG DEVICES INC
  • US9563851B2 patent drawing
  • US9563851B2 patent drawing
  • US9563851B2 patent drawing

AI summary

In an aspect, in general, a programmable computation device performs computations of an inference task specified by a plurality of variables and a plurality of factors, each factor being associated with a subset of the variables. The device includes one or more processing elements. Each processing element includes a first storage for a definition of a factor, a second storage for data associated with the inputs and/or outputs of at least some of the computations, and one or more computation units coupled to the first storage and the second storage for performing a succession of parts of the at least some of the computations that are associated with a factor, the succession of parts defined by data in the storage for the definition of the factor.