Hybrid Deep Network Training Switching Algorithms

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deep learning algorithms, such as Adam and SGD, face challenges in achieving rapid convergence and generalization, with adaptive methods like Adam often showing poorer generalization compared to SGD-based methods, and introducing additional hyper-parameters can complicate the training process.

Innovation Solution

A hybrid learning approach that initiates training with an adaptive learning algorithm like Adam for rapid early gains and then switches to a SGD-based algorithm, using a scaling factor estimation to determine the optimal learning rate for the SGD phase, thereby leveraging the strengths of both methods without increasing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If adaptive learning algorithms like Adam are used for training, then rapid early convergence is achieved, but generalization performance deteriorates

Engineering Contradiction:
Improveconvergence speedVSAvoidgeneralization performance
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent applies dynamics by switching the learning algorithm from adaptive (Adam) to SGD-based during training. The system dynamically changes the training approach based on training progress, using Adam for rapid initial convergence and then transitioning to SGD to improve generalization performance in later stages, thus adapting the method to the current training needs.

Inventive Principle:
Principle #15Dynamics

2Reliability

If SGD-based algorithms are used for training, then generalization performance is improved, but convergence speed deteriorates

Engineering Contradiction:
Improvegeneralization performanceVSAvoidconvergence speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent applies preliminary action by using the adaptive learning algorithm (Adam) at the beginning of training to achieve rapid initial convergence and establish a good starting point. This preliminary phase prepares the model with fast convergence, after which the SGD-based algorithm takes over to refine and improve generalization performance.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If hybrid learning approach is implemented, then both rapid convergence and good generalization are achieved, but algorithm complexity increases

Engineering Contradiction:
Improveoverall performanceVSAvoidalgorithm complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the training process into distinct phases: an initial phase using adaptive learning algorithms for rapid convergence, and a subsequent phase using SGD-based algorithms for improved generalization. This segmentation allows each algorithm to be optimized for its specific phase, achieving both fast convergence and good performance while managing complexity through clear phase boundaries.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11276002B2Hybrid training of deep networks
Publication Date: 2022.03.15 SALESFORCE INC
  • US11276002B2 patent drawing
  • US11276002B2 patent drawing
  • US11276002B2 patent drawing

AI summary

Hybrid training of deep networks includes a multi-layer neural network. The training includes setting a current learning algorithm for the multi-layer neural network to a first learning algorithm. The training further includes iteratively applying training data to the neural network, determining a gradient for parameters of the neural network based on the applying of the training data, updating the parameters based on the current learning algorithm, and determining whether the current learning algorithm should be switched to a second learning algorithm based on the updating. The training further includes, in response to the determining that the current learning algorithm should be switched to a second learning algorithm, changing the current learning algorithm to the second learning algorithm and initializing a learning rate of the second learning algorithm based on the gradient and a step used by the first learning algorithm to update the parameters of the neural network.