US 11,900,263 B2
Augmenting neural networks
Sherry Moore, Los Altos, CA (US); Jeremiah Harmsen, Zurich (CH); and Noah Fiedel, Palo Alto, CA (US)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Oct. 24, 2022, as Appl. No. 17/972,492.
Application 17/972,492 is a continuation of application No. 16/645,441, granted, now 11,481,638, previously published as PCT/US2018/050687, filed on Sep. 12, 2018.
Claims priority of provisional application 62/559,463, filed on Sep. 15, 2017.
Prior Publication US 2023/0119229 A1, Apr. 20, 2023
Int. Cl. G06N 3/10 (2006.01); G06F 8/34 (2018.01); G06N 3/08 (2023.01); G06F 18/214 (2023.01); G06F 18/2137 (2023.01); G06F 18/21 (2023.01); G06N 3/044 (2023.01); G06N 3/047 (2023.01)
CPC G06N 3/105 (2013.01) [G06F 8/34 (2013.01); G06F 18/214 (2023.01); G06F 18/2137 (2023.01); G06F 18/2178 (2023.01); G06N 3/044 (2023.01); G06N 3/047 (2023.01); G06N 3/08 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
maintaining, by a computational graph system that manages execution of computational graphs representing neural network operations for users of the computational graph system, data specifying a plurality of pre-trained neural networks, wherein each of the pre-trained neural networks is a neural network that has been trained on training data to determine trained values of respective parameters of the neural network;
obtaining data specifying a user computational graph representing neural network operations, the user computational graph comprising a plurality of nodes connected by edges;
modifying the user computational graph by modifying a subgraph of the user computational graph using a particular pre-trained neural network from the plurality of pre-trained neural networks, comprising:
identifying the subgraph of the user computational graph, wherein the subgraph of the user computational graph receives a subgraph input, and generates a subgraph output after processing the subgraph input, wherein the subgraph output is provided as an input to a succeeding node in the user computational graph;
selecting the particular pre-trained neural network from the plurality of pre-trained neural networks, wherein the particular pre-trained neural network receives an input conforming to the subgraph input, and generates an output conforming to the subgraph output; and
replacing the subgraph with the particular pre-trained neural network by inserting a remote call node into the user computational graph to modify the user computational graph, wherein the remote call node is configured to, during execution of the modified user computational graph:
receive data representing the subgraph input,
provide, using a remote call, the subgraph input as an input to the particular pre-trained neural network,
obtain, in response to the remote call, a remote output generated by the particular pre-trained neural network for the subgraph input, and
provide, as the subgraph output, the remote output generated by the particular pre-trained neural network to the succeeding node; and
storing the modified user computational graph in a memory device.