IP Library Granted Patent US 11,669,713
Granted Patent B2
US 11,669,713 · App. 16/209,372 · Granted Jun 6, 2023

System and method for online reconfiguration of a neural network system

Inventor: Eren Kursun (New York City, NY)
Assignee: BANK OF AMERICA CORPORATION
G06N3/02G06F9/44505
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,669,713
App. No.
16/209,372
Granted
Jun 6, 2023
Kind
B2
Abstract

The present disclosure is directed to a novel system for performing online reconfiguration of a neural network. Once a neural network has been implemented into a production environment, the system may use underlying construction logic to perform an in-situ reconfiguration of neural network elements while the neural network is live. The system may accomplish the reconfiguration by modifying the architecture of the neural network and/or performing adversarial training and/or retraining. In this way, the system may provide a way increase the performance of the neural network over time along one or more performance parameters or metrics.

Claims (68)

1. A system for online reconfiguration of a neural network, comprising:

a processor;

a communication interface; and

a memory having executable code stored thereon, wherein the executable code, when executed by the processor, causes the processor to:

access a building block library, wherein the building block library is a hybrid hierarchical library comprising one or more library blocks having adaptability characteristics embedded, the one or more library blocks comprising flexible parent structures with configurable characteristics;

select, from the one or more library blocks, a set of library blocks, wherein selecting the set of library blocks is based at least partially on performance characteristics, the performance characteristics comprising at least one of energy efficiency, heat generation, or processing speed;

automatically generate a neural network using a self-constructing neural network architecture, wherein the neural network comprises the set of library blocks, wherein the set of library blocks comprises one or more low-level blocks associated with a core functionality of the neural network and one or more high-level blocks associated with performance optimization of the neural network; and

perform, via a controller, online reconfiguration of the neural network, wherein the controller makes decisions on the reconfiguration of the neural network and levels of reconfiguration needed, wherein the online reconfiguration of the neural network comprises:

setting a termination condition associated with the online reconfiguration of the neural network;

providing inputs to the neural network;

determining, based on outputs provided by the neural network, that the termination condition has been met; and

performing fine-tuning of the neural network by creating one or more random changes in a configuration of the high-level blocks within the neural network, wherein the one or more random changes comprises at least one of adding, removing, or swapping a connectivity of one or more library blocks within the high-level blocks.

2. The system of claim 1 , wherein performing online reconfiguration of the neural network comprises:

continuously monitoring, in real time, a data pattern of the neural network;

based on continuously monitoring the data pattern, using construction logic of an algorithm to decide on a reconfiguration of the neural network;

implementing the reconfiguration of the neural network; and

assessing an effect of the reconfiguration of the neural network on a first performance metric.

3. The system of claim 2 , wherein the executable code further causes the processor to:

based on continuously monitoring the data pattern, use construction logic to decide on a second reconfiguration of the neural network;

implement the second reconfiguration of the neural network; and

assess an effect of the second reconfiguration of the neural network on the first performance metric.

4. The system of claim 2 , wherein the construction logic is further used to decide on the reconfiguration of the neural network based on adversarial interaction patterns.

5. The system of claim 2 , wherein the algorithm is a custom, multi-objective genetic-based algorithm, wherein the algorithm comprises, for each library block, i) a high-level spec mode; and ii) an in-situ optimization mode to optimize block performance.

6. The system of claim 5 , wherein the algorithm is used to perform training and retraining of the neural network.

7. The system of claim 2 , wherein the reconfiguration of the neural network comprises an online change in a depth of the neural network, an interconnectivity of the neural network, the neural network architecture, functionality of the neural network, activation functions, edge weights, or number of neurons.

8. The system of claim 2 , wherein the reconfiguration of the neural network comprises replacing a macro within the neural network with another macro.

9. A controller for online reconfiguration of a neural network, wherein the controller performs construction, reconfiguration toward optimization, and adaptation of the neural network, the controller comprising a processor communicatively coupled to a communication interface and a memory having executable stored thereon, wherein the executable code comprises a macro for hierarchically dividing neural network functionality into smaller building blocks, wherein the executable code, when executed by the processor, causes the processor to:

access a building block library, wherein the building block library is a hybrid hierarchical library comprising one or more library blocks having adaptability characteristics embedded, the one or more library blocks comprising flexible parent structures with configurable characteristics;

select, from the one or more library blocks, a set of library blocks, wherein selecting the set of library blocks is based at least partially on performance characteristics, the performance characteristics comprising at least one of energy efficiency, heat generation, or processing speed;

automatically generate a neural network using a self-constructing neural network architecture, wherein the neural network comprises the set of library blocks, wherein the set of library blocks comprises one or more low-level blocks associated with a core functionality of the neural network and one or more high-level blocks associated with performance optimization of the neural network; and

perform online reconfiguration of the neural network, wherein the controller makes decisions on the reconfiguration of the neural network and levels of reconfiguration needed, wherein the online reconfiguration of the neural network comprises:

setting a termination condition associated with the online reconfiguration of the neural network;

providing inputs to the neural network;

determining, based on outputs provided by the neural network, that the termination condition has been met; and

performing fine-tuning of the neural network by creating one or more random changes in a configuration of the high-level blocks within the neural network, wherein the one or more random changes comprises at least one of adding, removing, or swapping a connectivity of one or more library blocks within the high-level blocks.

10. The controller of claim 9 , wherein performing online reconfiguration of the neural network comprises:

continuously monitoring, in real time, a data pattern of the neural network;

based on continuously monitoring the data pattern, using construction logic of an algorithm to decide on a reconfiguration of the neural network;

implementing the reconfiguration of the neural network; and

assessing an effect of the reconfiguration of the neural network on a first performance metric.

11. The controller of claim 10 , wherein the executable code further causes the processor to:

based on continuously monitoring the data pattern, use construction logic to decide on a second reconfiguration of the neural network;

implement the second reconfiguration of the neural network; and

assess an effect of the second reconfiguration of the neural network on the first performance metric.

12. The controller of claim 10 , wherein the construction logic is further used to decide on the reconfiguration of the neural network based on adversarial interaction patterns.

13. The controller of claim 10 , wherein the algorithm is a custom, multi-objective genetic-based algorithm, wherein the algorithm comprises, for each library block, i) a high-level spec mode; and ii) an in-situ optimization mode to optimize block performance.

14. The controller of claim 13 , wherein the algorithm is used to perform training and retraining of the neural network.

15. A computer-implemented method for online reconfiguration of a neural network, the method comprising:

accessing a building block library, wherein the building block library is a hybrid hierarchical library comprising one or more library blocks having adaptability characteristics embedded, the one or more library blocks comprising flexible parent structures with configurable characteristics;

selecting, from the one or more library blocks, a set of library blocks, wherein selecting the set of library blocks is based at least partially on performance characteristics, the performance characteristics comprising at least one of energy efficiency, heat generation, or processing speed;

automatically generating a neural network using a self-constructing neural network architecture, wherein the neural network comprises the set of library blocks, wherein the set of library blocks comprises one or more low-level blocks associated with a core functionality of the neural network and one or more high-level blocks associated with performance optimization of the neural network; and

performing, via a controller, online reconfiguration of the neural network, wherein the controller makes decisions on the reconfiguration of the neural network and levels of reconfiguration needed, wherein the online reconfiguration of the neural network comprises:

setting a termination condition associated with the online reconfiguration of the neural network;

providing inputs to the neural network;

determining, based on outputs provided by the neural network, that the termination condition has been met; and

performing fine-tuning of the neural network by creating one or more random changes in a configuration of the high-level blocks within the neural network, wherein the one or more random changes comprises at least one of adding, removing, or swapping a connectivity of one or more library blocks within the high-level blocks.

16. The computer-implemented method of claim 15 , wherein performing online reconfiguration of the neural network comprises:

continuously monitoring, in real time, a data pattern of the neural network;

based on continuously monitoring the data pattern, using construction logic of an algorithm to decide on a reconfiguration of the neural network;

implementing the reconfiguration of the neural network; and

assessing an effect of the reconfiguration of the neural network on a first performance metric.

17. The computer-implemented method of claim 16 , the method further comprising:

based on continuously monitoring the data pattern, using construction logic to decide on a second reconfiguration of the neural network;

implementing the second reconfiguration of the neural network; and

assessing an effect of the second reconfiguration of the neural network on the first performance metric.

18. The computer-implemented method of claim 16 , wherein the construction logic is further used to decide on the reconfiguration of the neural network based on adversarial interaction patterns.

19. The computer-implemented method of claim 16 , wherein the algorithm is a custom, multi-objective genetic-based algorithm, wherein the algorithm comprises, for each library block, i) a high-level spec mode; and ii) an in-situ optimization mode to optimize block performance.

20. The computer-implemented method of claim 19 , wherein the algorithm is used to perform training and retraining of the neural network.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 4, 2018
From: KURSUN, EREN
To: BANK OF AMERICA CORPORATION
Reel/Frame 047672/0894 →
Continuity (1)
Related Publication 20200175350A1 · Jun 4, 2020