IP Library Granted Patent US 10,338,629
Granted Patent B2
US 10,338,629 · App. 15/273,036 · Granted Jul 2, 2019

Optimizing neurosynaptic networks

Inventors: Arnon Amir (San Jose, CA); Pallab Datta (San Jose, CA); Dharmendra Modha (San Jose, CA)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06E1/00G06N3/04G06N3/049G06N3/063
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 10,338,629
App. No.
15/273,036
Granted
Jul 2, 2019
Kind
B2
Abstract

Reduction in the number of neurons and axons in a neurosynaptic network while maintaining its functionality is provided. A neural network description describing a neural network is read. One or more functional unit of the neural network is identified. The one or more functional unit of the neural network is optimized. An optimized neural network description is written based on the optimized functional unit.

Claims (30)

1. A method comprising:

reading a neural network description describing a neural network, wherein the neural network comprises at least one neuron and the neural network description comprises a parameter indicating whether a timing of the at least one neuron should be preserved during optimization;

identifying one or more functional unit of the neural network;

optimizing the one or more functional unit of the neural network;

writing an optimized neural network description based on the optimized functional unit.

2. The method of claim 1 , wherein the one or more functional unit comprises a splitter.

3. The method of claim 1 , wherein the one or more functional unit comprises a delay neuron.

4. The method of claim 1 , wherein optimizing the one or more functional unit comprises removing at least one neuron, axon, or core while maintaining the function of the one or more functional unit.

5. The method of claim 2 , wherein the splitter comprises an input axon originating from a source neuron on a source core and wherein optimizing the one or more functional unit comprises relocating the splitter to the source core.

6. The method of claim 2 , wherein the splitter comprises an output neuron leading to a destination axon on a destination core and wherein optimizing the one or more functional unit comprises relocating the splitter to the destination core.

7. The method of claim 1 , wherein the one or more functional unit comprises a first splitter on a first core operably connected to a second splitter on a second core and wherein optimizing the one or more functional unit comprises merging the first splitter and the second splitter on a single core.

8. The method of claim 1 , wherein the one or more functional unit comprises a delay neuron operably connected to a source neuron and wherein optimizing the one or more functional unit comprises removing the delay neuron and increasing a delay associated with the source neuron.

9. The method of claim 1 , wherein the one or more functional unit comprises a first functional unit on a first core, a second function unit on a second core, and a splitter operably connected to the first and second functional unit and wherein optimizing the one or more functional unit comprises merging the first and second functional unit on a single core.

10. The method of claim 1 , wherein the neural network description describes a plurality of cores in a neuromorphic system.

11. The method of claim 1 , wherein each of the one or more functional unit comprises a reset axon and wherein optimizing the one or more functional unit comprises splitting one of the reset axons and removing each other reset axon.

12. A computer program product for optimizing a neurosynaptic network, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method comprising:

reading a neural network description describing a neural network, wherein the neural network comprises at least one neuron and the neural network description comprises a parameter indicating whether a timing of the at least one neuron should be preserved during optimization;

identifying one or more functional unit of the neural network;

optimizing the one or more functional unit of the neural network;

writing an optimized neural network description based on the optimized functional unit.

13. The computer program product of claim 12 , wherein the one or more functional unit comprises a splitter.

14. The computer program product of claim 12 , wherein the one or more functional unit comprises a delay neuron.

15. The computer program product of claim 12 , wherein optimizing the one or more functional unit comprises removing at least one neuron, axon, or core while maintaining the function of the one or more functional unit.

16. The computer program product of claim 13 , wherein the splitter comprises an input axon originating from a source neuron on a source core and wherein optimizing the one or more functional unit comprises relocating the splitter to the source core.

17. The computer program product of claim 13 , wherein the splitter comprises an output neuron leading to a destination axon on a destination core and wherein optimizing the one or more functional unit comprises relocating the splitter to the destination core.

18. The computer program product of claim 12 , wherein the one or more functional unit comprises a first splitter on a first core operably connected to a second splitter on a second core and wherein optimizing the one or more functional unit comprises merging the first splitter and the second splitter on a single core.

19. The computer program product of claim 12 , wherein the one or more functional unit comprises a delay neuron operably connected to a source neuron and wherein optimizing the one or more functional unit comprises removing the delay neuron and increasing a delay associated with the source neuron.

20. The computer program product of claim 12 , wherein the one or more functional unit comprises a first functional unit on a first core, a second function unit on a second core, and a splitter operably connected to the first and second functional unit and wherein optimizing the one or more functional unit comprises merging the first and second functional unit on a single core.

21. The computer program product of claim 12 , wherein the neural network description describes a plurality of cores in a neuromorphic system.

22. The computer program product of claim 12 , wherein each of the one or more functional unit comprises a reset axon and wherein optimizing the one or more functional unit comprises splitting one of the reset axons and removing each other reset axon.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2016
From: AMIR, ARNON; DATTA, PALLAB; MODHA, DHARMENDRA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 039841/0392 →
Continuity (1)
Related Publication 20180082182A1 · Mar 22, 2018