Multiresolution Hash Encoding for Neural Network Training

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Fully connected neural networks used in computer graphics applications, such as neural signed distance functions and light fields, face challenges in training speed and accuracy due to costly encoding and evaluation processes, and existing solutions lack versatility and efficiency.

Innovation Solution

The implementation of multiresolution hash encoding for neural networks, where input coordinates are mapped to a higher-dimensional space using a hash function, allowing for trainable indexed memory that improves accuracy and efficiency by learning feature vectors at multiple resolutions without requiring task-specific data structures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional encoding methods are used to map neural network inputs to higher-dimensional space, then accuracy is improved, but training speed deteriorates due to costly encoding and evaluation processes

Engineering Contradiction:
Improveapproximation accuracyVSAvoidtraining speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The encoding space is segmented into multiple resolution levels (e.g., 16x16, 32x32, 64x64 grids), where each level captures features at different scales. This segmentation allows the system to process information hierarchically, improving both accuracy through multi-scale feature capture and training speed by enabling efficient gradient computation at each resolution level

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the input coordinate encoding from a continuous high-dimensional space into a discrete multi-resolution hash space. By mapping continuous coordinates to discrete hash buckets across multiple resolutions, the system achieves accurate representation while enabling efficient memory access and gradient computation, thus improving both accuracy and training speed

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

2Adaptability or versatility

If fully connected networks are used to encode implicit functions in computer graphics applications, then versatility is achieved, but computational cost increases significantly

Engineering Contradiction:
Improveapplication versatilityVSAvoidcomputational cost
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The multiresolution hash encoding scheme is designed as a universal, task-agnostic encoding method that can be applied to various computer graphics applications including neural signed distance functions, importance sampling, and light fields. The same encoding infrastructure serves multiple purposes, reducing computational overhead while maintaining versatility across different applications

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

Solution Approach 2:

Instead of using expensive fully connected networks to learn coordinate transformations, the patent uses a deterministic hash function to copy and organize feature vectors at multiple resolutions. This copying approach eliminates the need for heavy neural network computations in the encoding stage, significantly reducing computational cost while preserving the ability to represent complex implicit functions

Inventive Principle:
Principle #26Copying

3Measurement precision

If high-resolution encoding is used to capture detailed features, then accuracy is improved, but memory footprint increases

Engineering Contradiction:
Improvefeature representation accuracyVSAvoidmemory footprint
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The encoding uses a nested hierarchical structure where coarse-resolution hash tables are nested within finer-resolution tables. Each resolution level builds upon the previous level, allowing the system to represent both large-scale and fine-grained features efficiently. This nesting enables accurate feature representation at multiple scales while keeping memory usage manageable through shared structures

Inventive Principle:
Principle #7Nested doll (Nesting)

4Productivity

If task-specific data structures are designed to optimize performance, then efficiency is improved, but adaptability to different applications deteriorates

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidapplication-specific optimization
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent employs a universal multiresolution hash encoding scheme that does not require task-specific data structures. The same encoding framework efficiently handles various applications (signed distance functions, light fields, importance sampling) without modification, achieving both computational efficiency through optimized hash lookup and gradient computation, and broad adaptability across different computer graphics tasks

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

Data Source

PatentUS20230052645A1Multiresolution hash encoding for neural networks
Publication Date: 2023.02.16 NVIDIA CORP
  • US20230052645A1 patent drawing
  • US20230052645A1 patent drawing
  • US20230052645A1 patent drawing

AI summary

Neural network performance is improved in terms of training speed and/or accuracy by encoding (mapping) inputs to the neural network into a higher dimensional space via a hash function. The input comprises coordinates used to identify a point within a d-dimensional space (e.g., 3D space). The point is quantized and a set of vertex coordinates corresponding to the point are input to a hash function. For example, for d=3, space may be partitioned into axis-aligned voxels of identical size and vertex coordinates of a voxel containing the point are input to the hash function to produce a set of encoded coordinates. The set of encoded coordinates is used to lookup D-dimensional feature vectors in a table of size T that have been learned. The learned feature vectors are filtered (e.g., linearly interpolated, etc.) based on the coordinates of the point to compute a feature vector corresponding to the point.