DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment
Acknowledgement is made of Applicant’s claim amendments on 03/04/2026. The claim amendments are entered. Presently, claims 1-20 remain pending. Claims 1, 10, 12-13, and 18-19 have been amended.
Response to Arguments
Regarding the 35 U.S.C 103 rejection, Applicant’s arguments with respect to claims 1-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Regarding the 35 USC 101 rejection, Applicant's arguments filed 03/04/2026 have been fully considered but they are not persuasive.
Applicant argues: For example, "Claim limitations that encompass AI in a way that cannot be practically performed in the human mind do not fall within this grouping." Id. Similarly, claim 1 recites similar limitations encompassing AI that cannot be practically performed in the human mind, such as, "compare an accuracy of the model generated with a plurality of second operations replacing the non-linear operation with an accuracy threshold to operate the vehicle" and "select, from the plurality of second operations, a second operation that approximates the non-linear operation, the selection based on ... the accuracy of the model generated with the second operation meeting the accuracy threshold to operate the vehicle" (pages 14-15 of remarks).
Examiner response: Examiner respectfully disagrees. A human can reasonably "compare an accuracy of the model generated with a plurality of second operations replacing the non-linear operation with an accuracy threshold to operate the vehicle" and "select, from the plurality of second operations, a second operation that approximates the non-linear operation, the selection based on ... the accuracy of the model generated with the second operation meeting the accuracy threshold to operate the vehicle" with the help of paper and pen. For example, a model generated using the second operations could have an accuracy rate of 97%. The accuracy threshold to operate a vehicle could be 95%. A human can compare the accuracy rate of 97% to an accuracy threshold of 95% and determine that the accuracy threshold is met. Furthermore, a human can practically select an activation function to replace a non-linear operation based on determining that the accuracy threshold is met. These steps involve an observation, evaluation, judgement, or opinion and are therefore directed to a mental process. See MPEP § 2106.04(a)(2), subsection III. Arguments are not persuasive.
Applicant argues: The specification sets forth an improvement in paragraphs [0018]-[0020] related to running large models on vehicle hardware, which may have limited computation resources, while maintaining acceptable model accuracy (pages 15-17 of remarks).
Examiner response: Examiner respectfully disagrees. Paragraph [0018] discloses a neural network implementing non-linear operations such as activation functions and replacing them with linear operations to use less processing resources. However, the claims do not describe a neural network nor linear operations, let alone linear activation functions. MPEP 2106.04(d)(1) states “If the specification sets forth an improvement in technology, the claim must be evaluated to ensure that the claim itself reflects the disclosed improvement”. The claims are not sufficient to reflect the improvement set forth in the specification, as the claimed improvement stems from replacing non-linear activation functions with linear operations in a neural network. Arguments are not persuasive.
Applicant argues: Applicant respectfully submits that "compare an accuracy of the model generated with a plurality of second operations replacing the non-linear operation with an accuracy threshold to operate the vehicle" and "select, from the plurality of second operations, a second operation that approximates the non-linear operation, the selection based on . . .the accuracy of the model generated with the second operation meeting the accuracy threshold to operate the vehicle" is not "well-understood, routine, conventional activity." (MPEP 2106.05(d)(I)(2)) (pages 17-20 of remarks).
Examiner response: Examiner respectfully disagrees. Comparing an accuracy to a threshold and selecting a second operation based on the accuracy of the model are directed to a mental process. MPEP 2106.05(a)(II) states “[h]owever, it is important to keep in mind that an improvement in the abstract idea itself (e.g. a recited fundamental economic concept) is not an improvement in technology”, therefore, comparing an accuracy to a threshold and selecting second operations based on a comparison is not an improvement in technology. Arguments are not persuasive.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to abstract idea without significantly more.
Step 1
According to the first part of the analysis, in the instant case, claims 1-11 are directed to a system comprising at least a processor, claims 12-17 are directed to a method, and claims 18-20 are directed to a vehicle comprising at least a processor. Thus, each of the claims falls within one of the four statutory categories (i.e. process, machine, manufacture, or composition of matter).
Claim 1 recites:
Step 2A, Prong 1
“search the model to identify a non-linear operation of the plurality of first operations” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can find and identify non-linear operations of a model. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
“compare an accuracy of the model generated with a plurality of second operations replacing the non-linear operation with an accuracy threshold to operate the vehicle” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can compare the accuracy of a model with nonlinear operations replaced by second operations to an accuracy threshold. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
“select, from the plurality of second operations, a second operation that approximates the non-linear operation, the selection based on: a level of computing resources consumed by the plurality of second operations, and the accuracy of the model generated with the second operation meeting the accuracy threshold to operate the vehicle” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can select a second operation based on a level of resources consumed and a comparison of the accuracy of the model to a threshold. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
“replace the non-linear operation with the second operation in the model to produce a second output” (This step is directed to a mathematical concept. See MPEP § 2106.04(a)(2), subsection I.)
Step 2A, Prong 2
“A system, comprising: a data processing system comprising memory devices coupled with one or more processors to” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
“receive a model trained by machine learning comprising a plurality of first operations, the model to generate an output to operate a vehicle” (insignificant extra-solution activity)
This judicial exception is not integrated into a practical application.
Step 2B
“A system, comprising: a data processing system comprising memory devices coupled with one or more processors to” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
“receive a model trained by machine learning comprising a plurality of first operations, the model to generate an output to operate a vehicle” (This step appears to be directed to transmitting or receiving information, which is well-understood, routine, and conventional. i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); See MPEP 2106.05 (d) (II).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 2 recites:
Step 2A, Prong 1
Claim 2 recites at least the abstract idea identified above in claim 1.
Step 2A, Prong 2
“the second operation maps to the non-linear operation and uses less computing resources relative to the non-linear operation” (linking judicial exception to a field of use. See MPEP 2106.05(h).)
This judicial exception is not integrated into a practical application.
Step 2B
“the second operation maps to the non-linear operation and uses less computing resources relative to the non-linear operation” (linking judicial exception to a field of use. See MPEP 2106.05(h).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 3 recites:
Step 2A, Prong 1
“search the second model to identify a non-linear operation of a plurality of third operations” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can find and identify non-linear operations of a model. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
“select, from the plurality of second operations, a fourth operation that approximates the non-linear operation of the plurality of third operations, the selection based on the level of computing resources consumed by the plurality of second operations, an accuracy of the second model generated with the plurality of second operations, and the accuracy threshold to operate the vehicle” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can select a second operation based on a level of resources, accuracy, or accuracy threshold. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
“replace the non-linear operation of the plurality of third operations with the fourth operation in the model” (This step is directed to a mathematical concept. See MPEP § 2106.04(a)(2), subsection I.)
Step 2A, Prong 2
“receive a second model, wherein the output of the model is an input to the second model” (insignificant extra-solution activity)
This judicial exception is not integrated into a practical application.
Step 2B
“receive a model trained by machine learning comprising a plurality of first operations, the model to generate an output to operate a vehicle” (This step appears to be directed to transmitting or receiving information, which is well-understood, routine, and conventional. i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); See MPEP 2106.05 (d) (II).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 4 recites:
Step 2A, Prong 1
“identify a set of nodes of the plurality of nodes to measure the accuracy at” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can identify nodes for measuring accuracy. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
select a node from the set of nodes that represents an operation that operates based on the output of the non-linear operation responsive to a determination that the node is separated from a second node of the plurality of nodes representing the non-linear operation by a number of nodes or a number of edges less than a threshold” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can select a node based on a number of edges or nodes that are less than a threshold. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
“determine the accuracy for the plurality of second operations based on values generated by the model with the plurality of second operations at an output of the operation” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can determine the accuracy of an operation based on values generated by the operation. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2
“receive a graph representing the model, the graph comprising a plurality of nodes representing the plurality of first operations of the model, the graph comprising a plurality of edges between the plurality of nodes indicating that an output of one operation of the plurality of first operations is an input into another operation of the plurality of first operations” (insignificant extra-solution activity)
This judicial exception is not integrated into a practical application.
Step 2B
“receive a graph representing the model, the graph comprising a plurality of nodes representing the plurality of first operations of the model, the graph comprising a plurality of edges between the plurality of nodes indicating that an output of one operation of the plurality of first operations is an input into another operation of the plurality of first operations” (This step appears to be directed to transmitting or receiving information, which is well-understood, routine, and conventional. i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); See MPEP 2106.05 (d) (II).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 5 recites:
Step 2A, Prong 1
“replace the non-linear operation with the second operation” (This step is directed to a mathematical concept. See MPEP § 2106.04(a)(2), subsection I.)
“replace the non-linear operation with a third operation of the plurality of second operations” (This step is directed to a mathematical concept. See MPEP § 2106.04(a)(2), subsection I.)
“optimize an objective function based on the accuracy of the second operation, the level of computing resources consumed by the second operation, the accuracy of the third operation, and the level of computing resources consumed by the third operation” (This step is directed to a mathematical concept. See MPEP § 2106.04(a)(2), subsection I.)
“select the second operation based on the optimization of the objective function” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can select an operation based on an optimized objective function. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2
“execute the model with the second operation of the plurality of second operations to generate the accuracy for the second operation” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
“execute the model with the third operation to generate the accuracy for the third operation” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
This judicial exception is not integrated into a practical application.
Step 2B
“execute the model with the second operation of the plurality of second operations to generate the accuracy for the second operation” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
“execute the model with the third operation to generate the accuracy for the third operation” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 6 recites:
Step 2A, Prong 1
“select the second operation to replace the non-linear operation responsive to a completion of training the model” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can select an operation to replace the non-linear operation after a model is trained (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2
“train the model with a training dataset” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
This judicial exception is not integrated into a practical application.
Step 2B
“train the model with a training dataset” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 7 recites:
Step 2A, Prong 1
“search a library for operations that approximate the non-linear operation to identify the plurality of second operations” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can look for an operation to replace the non-linear operation in a library (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2 & 2B
The claim does not recite any additional elements.
Claim 8 recites:
Step 2A, Prong 1
“determine the accuracy for the second operation based on the at least one value for the point” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can determine an accuracy for an operation based on its output (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
“select the second operation from the plurality of second operations based on the accuracy” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can select an operation based on an accuracy (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2
“execute the model with the second operation to generate at least one value at a point within the model” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
This judicial exception is not integrated into a practical application.
Step 2B
“execute the model with the second operation to generate at least one value at a point within the model” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 9 recites:
Step 2A, Prong 1
“search the model for operations of the plurality of first operations that consume a particular level of computing resources greater than a threshold to identify the non-linear operation” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can look for an operation that use a particular amount of memory (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2 & 2B
The claim does not recite any additional elements.
Claim 10 recites:
Step 2A, Prong 1
“wherein the level of computing resources is based on a lookup table size” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can determine a level of computing resources based on a memory size of a lookup table (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2 & 2B
The claim does not recite any additional elements.
Claim 11 recites:
Step 2A, Prong 1
“the plurality of second operations are linear operations that approximate the non-linear operation” (This step is directed to a mathematical concept. See MPEP § 2106.04(a)(2), subsection I.)
Step 2A, Prong 2 & 2B
The claim does not recite any additional elements.
Claim 12 recites:
See rejection of claim 1. Same rationale applies.
Claim 13 recites:
Step 2A, Prong 1
“wherein the level of computing resources is based on a lookup table size” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can determine a level of computing resources based on a memory size of a lookup table (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.)
Step 2A, Prong 2
“the second operation maps to the non-linear operation and uses less computing resources relative to the non-linear operation,” (linking judicial exception to a field of use. See MPEP 2106.05(h).)
This judicial exception is not integrated into a practical application.
Step 2B
“the second operation maps to the non-linear operation and uses less computing resources relative to the non-linear operation,” (linking judicial exception to a field of use. See MPEP 2106.05(h).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 14 recites:
Step 2A, Prong 1 & Step 2A, Prong 2 & 2B
See rejection of claim 3. Same rationale applies.
Claim 15 recites:
Step 2A, Prong 1 & Step 2A, Prong 2 & 2B
See rejection of claim 4. Same rationale applies.
Claim 16 recites:
Step 2A, Prong 1 & Step 2A, Prong 2 & 2B
See rejection of claim 5. Same rationale applies.
Claim 17 recites:
Step 2A, Prong 1 & Step 2A, Prong 2 & 2B
See rejection of claim 8. Same rationale applies.
Claim 18 recites:
Step 2A, Prong 1
“the model transformed to replace a non-linear operation of the model with a second operation of a plurality of second operations,” (This step is directed to a mathematical concept. See MPEP § 2106.04(a)(2), subsection I.)
“the second operation selected from the plurality of second operations to approximate the non-linear operation, the selection based on a level of computing resources consumed by the plurality of second operations and a comparison of an accuracy of the model generated with the plurality of second operations with an accuracy threshold to operate the vehicle” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can select a second operation based on a level of resources consumed and a comparison of the accuracy of the model to a threshold. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2
“A vehicle, comprising: a data processing system comprising memory devices coupled with one or more processors to” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
“receive a model trained by machine learning comprising a plurality of first operations…” (insignificant extra-solution activity)
“receive sensor data from at least one sensor of the vehicle” (insignificant extra-solution activity)
“execute the model with the sensor data as an input to generate an output to operate the vehicle” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
This judicial exception is not integrated into a practical application.
Step 2B
“A vehicle, comprising: a data processing system comprising memory devices coupled with one or more processors to” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
“receive a model trained by machine learning comprising a plurality of first operations…” (This step appears to be directed to transmitting or receiving information, which is well-understood, routine, and conventional. i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); See MPEP 2106.05 (d) (II).)
“receive sensor data from at least one sensor of the vehicle” (This step appears to be directed to transmitting or receiving information, which is well-understood, routine, and conventional. i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); See MPEP 2106.05 (d) (II).)
“execute the model with the sensor data as an input to generate an output to operate the vehicle” (Mere instructions to apply the exception using a generic computer component. See 2106.05(f).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 19 recites:
Step 2A, Prong 1
“wherein the level of computing resources is based on a lookup table size” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can determine a level of computing resources based on a memory size of a lookup table (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.)
Step 2A, Prong 2
“the second operation maps to the non-linear operation and uses less computing resources relative to the non-linear operation” (linking judicial exception to a field of use. See MPEP 2106.05(h).)
This judicial exception is not integrated into a practical application.
Step 2B
“the second operation maps to the non-linear operation and uses less computing resources relative to the non-linear operation” (linking judicial exception to a field of use. See MPEP 2106.05(h).)
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Claim 20 recites:
Step 2A, Prong 1
“the second operation is selected to replace the non-linear operation responsive to a completion of training the model” (This step is a recitation of a mental process that is practical to perform in the human mind. A human can select second operation to replace a non-linear operation once the training of the model is finished. (i.e. observation, evaluation, judgement, opinion). See MPEP § 2106.04(a)(2), subsection III.).
Step 2A, Prong 2 & 2B
The claim does not recite any additional elements.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-2, 5-6, 8, 11-12, 16-18, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Ben-dror et al. (US-20220327386-A1) in view of in view of Bingham et al. (US-20220051076-A1) and Wolff et al. (US-20230415772-A1)
Regarding Claim 1,
Ben-dror (US 20220327386 A1) teaches a system, comprising:
a data processing system comprising memory devices coupled with one or more processors to:
receive a model trained by machine learning comprising a plurality of first operations (para [0048] “According to some embodiments, parameterization component 310 receives a neural network that includes an affine function and a non-linear activation function.” Activation functions (i.e., first operations).),
search the model to identify a non-linear operation of the plurality of first operations (para [0048] “In some examples, parameterization component 310 replaces the non-linear activation function with a parameterized activation function that includes a linearity parameter.” The parameterization component finds (i.e. searched) for non-linear activations (i.e., first operations) to replace.);
select, from the plurality of second operations (para [0048] “In some examples, parameterization component 310 replaces a set of non-linear activation functions with a set of parameterized activation functions having a same linearity parameter.”), a second operation that approximates the non-linear operation (para [0040] “The present disclosure describes systems and methods for neural network reduction by decreasing the number of layers in the neural network. One or more embodiments of the present disclosure include receiving a trained neural network (e.g., a neural network developed by a user and user device via NAS) and learning the non-linear activation units that can be replaced with an identity function. Next, linear blocks may be folded to form a single block in places where the non-linear units (e.g., non-linear activation functions) were replaced by an identity function.”), the selection based on:
a level of computing resources consumed by the plurality of second operations (para [0043] “For instance, some edge devices may benefit from implementation of reduced neural networks (e.g., to increase edge device performance when implementing reduced neural networks via reduced power consumption, reduced computation latency, etc.).”), and the accuracy of the model generated with the plurality of second operation operations (para [0007] “Next, linear blocks may then be collapsed or folded to form a single block in places where the non-linear activation units were replaced by an identity function. Such techniques may reduce the number of layers in the neural network, which may optimize power and computation efficiency of the neural network architecture (e.g., without unduly influencing the accuracy of the network model)”); and
replace the non-linear operation with the second operation in the model to produce a second output (para [0023] “The term “reducing a neural network” refers to the process of modifying the neural network by removing parameters of function in a manner that the output of the reduced neural network approximates that of the original neural network.” para [0049] “According to some embodiments, parameterization component 310 is configured to modify a neural network that includes an affine function and a non-linear activation function by replacing the non-linear activation function with a parameterized activation function that includes a linearity parameter.”).
While Ben-dror discloses selecting second operations based on resource consumption and an accuracy (Abs. “Next, linear blocks may then be folded to form a single block in places where the non-linear activation units were replaced by an identity function. Such techniques may reduce the number of layers in the neural network, which may optimize power and computation efficiency of the neural network architecture (e.g., without unduly influencing the accuracy of the network model).”), Ben-dror does not explicitly disclose comparing the accuracy to a threshold.
Ben-dror does not explicitly disclose
the model to generate an output to operate a vehicle;
compare an accuracy of the model generated with a plurality of second operations replacing the non-linear operation with an accuracy threshold to operate the vehicle;
and the accuracy of the model generated with the plurality of second operation operations meeting the accuracy threshold to operate the vehicle;
However, Bingham (US 20220051076 A1) teaches
compare an accuracy of the model generated with a plurality of second operations replacing the non-linear operation with an accuracy threshold (para [0029] “During the search, all ReLU activation functions in a given neural network are replaced with a candidate activation function.” The relu activation functions (i.e., first nonlinear operations) are replaced with candidate activation functions (i.e., second operations). Para [0014] “training the neural network with the AF.sub.C at a compressed learning rate over a first predetermined number of epochs and assigning a fitness score F.sub.AFC to the child activation function AF.sub.C; comparing the fitness score F.sub.AFC to a predetermined threshold fitness score F.sub.T and if F.sub.AFC≥F.sub.T” Model fitness score (i.e., accuracy) is compared to a threshold). Para [0029] “During the search, all ReLU activation functions in a given neural network are replaced with a candidate activation function. No other changes to the network or training setup are made. The network is trained on the dataset, and the activation function is assigned a fitness score equal to the network's accuracy on the validation set.”)
and the accuracy of the model generated with the plurality of second operation operations meeting the accuracy threshold (para [0014], [0029]);
Ben-dror and Bingham are analogous because they are directed to replacing activation functions in machine learning models.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the activation function of Ben-dror with the accuracy threshold of Bingham.
Doing so would allow for reducing the error rate for the activation function (Bingham para [0067]).
While Bingham discloses comparing an accuracy of the model generated from replacing the non-linear operations to a threshold, Bingham does not explicitly disclose an accuracy threshold to operate a vehicle.
However, Wolff (US 20230415772 A1) teaches
receive a model trained by machine learning comprising a plurality of first operations (para [0089] “In such an example, CNN 440 determines a final value to provide to each neuron of second subsampling layer 448 based on the aggregates of all the values provided to each neuron and an activation function associated with each neuron of second subsampling layer 448.”), the model to generate an output to operate a vehicle (para [0070] “In some embodiments, control system 408 receives data associated with at least one trajectory from planning system 404 and control system 408 controls operation of the vehicle.” para [0071] “In some embodiments, perception system 402, planning system 404, localization system 406, and/or control system 408 implement at least one machine learning model (e.g., at least one multilayer perceptron (MLP), at least one convolutional neural network (CNN), at least one recurrent neural network (RNN), at least one autoencoder, at least one transformer, and/or the like) … In some examples, perception system 402, planning system 404, localization system 406, and/or control system 408 implement at least one machine learning model as part of a pipeline (e.g., a pipeline for identifying one or more objects located in an environment and/or the like).” The system uses an output from the CNN to control the vehicle. Para [0091] “In some embodiments, fully connected layers 449 are configured to generate an output associated with a prediction (sometimes referred to as a classification). The prediction may include an indication that an object included in the image provided as input to CNN 440 includes an object, a set of objects, and/or the like.”);
compare an accuracy of the model generated … with an accuracy threshold to operate the vehicle (para [0175] “As the planning system 404 processes the scene data 502 corresponding to the different scenes, the trajectory evaluation network 510 or machine learning model may continue to be modified until trained to meet a training threshold (e.g., time, accuracy, etc.). Once trained, the components, such as the trajectory evaluation network 510 or its coefficients, weights, nodes, or other parameters, may be integrated into a vehicle 200.”);
and the accuracy of the model generated … meeting the accuracy threshold to operate the vehicle (para [0175] “As the planning system 404 processes the scene data 502 corresponding to the different scenes, the trajectory evaluation network 510 or machine learning model may continue to be modified until trained to meet a training threshold (e.g., time, accuracy, etc.). Once trained, the components, such as the trajectory evaluation network 510 or its coefficients, weights, nodes, or other parameters, may be integrated into a vehicle 200.”);
Ben-dror and Wolff are analogous because they are directed towards neural networks utilizing activation functions.
It would have been obvious to one or ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror with the method of controlling a vehicle of Wolf.
Doing so would allow for setting trajectories to autonomously control vehicles (Wolf para [0025]).
Regarding Claim 2,
Ben-dror, Bingham, and Wolff teach the system of claim 1. Ben-dror further teaches wherein: the second operation maps to the non-linear operation and uses less computing resources relative to the non-linear operation (para [0040] “The present disclosure describes systems and methods for neural network reduction by decreasing the number of layers in the neural network. One or more embodiments of the present disclosure include receiving a trained neural network (e.g., a neural network developed by a user and user device via NAS) and learning the non-linear activation units that can be replaced with an identity function. Next, linear blocks may be folded to form a single block in places where the non-linear units (e.g., non-linear activation functions) were replaced by an identity function.” para [0043] “For instance, some edge devices may benefit from implementation of reduced neural networks (e.g., to increase edge device performance when implementing reduced neural networks via reduced power consumption, reduced computation latency, etc.).”).
Regarding Claim 5,
Ben-dror, Bingham, and Wolff teach the system of claim 1. Ben-dror further teaches comprising: the data processing system to:
replace the non-linear operation with the second operation (para [0049] “According to some embodiments, parameterization component 310 is configured to modify a neural network that includes an affine function and a non-linear activation function by replacing the non-linear activation function with a parameterized activation function that includes a linearity parameter.”);
replace the non-linear operation with a third operation of the plurality of second operations (para [0010] “replacing the non-linear activation function with a parameterized activation function that includes a linearity parameter, computing an auxiliary loss term based on a value selected for the linearity parameter of the parameterized activation function, wherein the auxiliary loss term encourages the linearity parameter to approach a value of one, iteratively updating the value for the linearity parameter of the parameterized activation function based on the auxiliary loss term to obtain an approximately affine activation function,” The activation functions (i.e., first operations) are iteratively replaced by updating a parameter of the linearly parameterized activation function (i.e. at least a second and third operation).);
optimize an objective function based on the accuracy of the second operation (para [0008], para [0036] “Each node and edge is associated with one or more node weights that determine how the signal is processed and transmitted. During the training process, these weights are adjusted to improve the accuracy of the result (i.e., by minimizing a loss function which corresponds in some way to the difference between the current result and the target result).” Loss (i.e, objective function).), the level of computing resources consumed by the second operation (para [0043] “For instance, some edge devices may benefit from implementation of reduced neural networks (e.g., to increase edge device performance when implementing reduced neural networks via reduced power consumption, reduced computation latency, etc.).”), the accuracy of the third operation (para [0010] “One or more embodiments of the method, apparatus, non-transitory computer readable medium, and system include identifying a neural network that includes a affine function and a non-linear activation function, replacing the non-linear activation function with a parameterized activation function that includes a linearity parameter, computing an auxiliary loss term based on a value selected for the linearity parameter of the parameterized activation function, wherein the auxiliary loss term encourages the linearity parameter to approach a value of one, iteratively updating the value for the linearity parameter of the parameterized activation function based on the auxiliary loss term to obtain an approximately affine activation function, and combining the approximately affine activation function with the affine function of the neural network to obtain a reduced neural network.” para [0036] “Each node and edge is associated with one or more node weights that determine how the signal is processed and transmitted. During the training process, these weights are adjusted to improve the accuracy of the result (i.e., by minimizing a loss function which corresponds in some way to the difference between the current result and the target result).” The parameterized activation function that replaces the non-linear activation function is iteratively replaced including a second and third operation.), and the level of computing resources consumed by the third operation (para [0043] “For instance, some edge devices may benefit from implementation of reduced neural networks (e.g., to increase edge device performance when implementing reduced neural networks via reduced power consumption, reduced computation latency, etc.).”); and
select the second operation based on the optimization of the objective function (para [0010] “One or more embodiments of the method, apparatus, non-transitory computer readable medium, and system include identifying a neural network that includes a affine function and a non-linear activation function, replacing the non-linear activation function with a parameterized activation function that includes a linearity parameter, computing an auxiliary loss term based on a value selected for the linearity parameter of the parameterized activation function, wherein the auxiliary loss term encourages the linearity parameter to approach a value of one, iteratively updating the value for the linearity parameter of the parameterized activation function based on the auxiliary loss term to obtain an approximately affine activation function, and combining the approximately affine activation function with the affine function of the neural network to obtain a reduced neural network.”).
Bingham further teaches
execute the model with the second operation of the plurality of second operations to generate the accuracy for the second operation (para [0029] “During the search, all ReLU activation functions in a given neural network are replaced with a candidate activation function. No other changes to the network or training setup are made. The network is trained on the dataset, and the activation function is assigned a fitness score equal to the network's accuracy on the validation set.”);
execute the model with the third operation to generate the accuracy for the third operation (para [0030] “In one exemplary embodiment, given a parent activation function, as shown in FIGS. 2(a) and 2(b), a child activation function is created by applying one of four possible mutations. All mutations are equally likely with two special cases. If a remove mutation is selected for an activation function with just one node, a change mutation is applied instead.” The candidate activation functions (i.e., second operations) are mutated resulting in third operations. Para [0036] “The function with the highest validation accuracy serves as the parent, and is mutated to create a child activation function.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the activation function of Ben-dror with the accuracy test of Bingham.
Doing so would allow for reducing the error rate for the activation function (Bingham para [0067]).
Regarding Claim 6,
Ben-dror, Bingham, and Wolff the system of claim 1. Ben-dror further teaches the data processing system to:
train the model with a training dataset (para [0115] “Batch normalization may be achieved by fixing the mean and variance of each layer's inputs. In some cases, the normalization may be conducted over an entire training set. In other cases, normalization is restrained to each mini-batch in the training process.”); and
select the second operation to replace the non-linear operation responsive to a completion of training the model (para [0025] “One or more embodiments of the disclosure identify and remove certain non-linear layers in a trained neural network.” para [0040] “One or more embodiments of the present disclosure include receiving a trained neural network (e.g., a neural network developed by a user and user device via NAS) and learning the non-linear activation units that can be replaced with an identity function. Next, linear blocks may be folded to form a single block in places where the non-linear units (e.g., non-linear activation functions) were replaced by an identity function.”).
Regarding Claim 8,
Ben-dror, Bingham, and Wolff teach the system of claim 1. Ben-dror further teaches comprising: the data processing system to:
execute the model with the second operation to generate at least one value at a point within the model (para [0087]-[0088] “FIGS. 7A and 7B may illustrate an activation function A encouraged to the identity function by training a towards 1 (e.g., where α towards 1 makes the new activation function (New_Activation) towards the identity function (e.g., or an approximately affine activation function). One or more embodiments of the present disclosure remove activations by training. Existing activations may be transformed into the following form New_Activation=(1−α).Math.A+α.Math.Identity (1)”. The identity function (i.e., second operation) generates an activation output (i.e., at least one value at a point within the model).);
determine the accuracy for the second operation based on the at least one value for the point (para [0036] “Each node and edge is associated with one or more node weights that determine how the signal is processed and transmitted. During the training process, these weights are adjusted to improve the accuracy of the result (i.e., by minimizing a loss function which corresponds in some way to the difference between the current result and the target result).”); and
select the second operation from the plurality of second operations based on the accuracy (para [0010] “One or more embodiments of the method, apparatus, non-transitory computer readable medium, and system include identifying a neural network that includes a affine function and a non-linear activation function, replacing the non-linear activation function with a parameterized activation function that includes a linearity parameter, computing an auxiliary loss term based on a value selected for the linearity parameter of the parameterized activation function, wherein the auxiliary loss term encourages the linearity parameter to approach a value of one, iteratively updating the value for the linearity parameter of the parameterized activation function based on the auxiliary loss term to obtain an approximately affine activation function, and combining the approximately affine activation function with the affine function of the neural network to obtain a reduced neural network.” para [0036] “Each node and edge is associated with one or more node weights that determine how the signal is processed and transmitted. During the training process, these weights are adjusted to improve the accuracy of the result (i.e., by minimizing a loss function which corresponds in some way to the difference between the current result and the target result).”).
Regarding Claim 11,
Ben-dror, Bingham, and Wolff teach the system of claim 1. Ben-dror further teaches wherein: the plurality of second operations are linear operations that approximate the non-linear operation (para [0040] “Next, linear blocks may be folded to form a single block in places where the non-linear units (e.g., non-linear activation functions) were replaced by an identity function.”).
Regarding Claim 12,
Claim 12 is the method corresponding to the system of claim 1. Claim 12 is substantially similar to claim 1 and is rejected on the same grounds.
Regarding Claim 16,
Claim 16 is the method corresponding to the system of claim 5. Claim 16 is substantially similar to claim 5 and is rejected on the same grounds.
Regarding Claim 17,
Claim 17 is the method corresponding to the system of claim 8. Claim 17 is substantially similar to claim 8 and is rejected on the same grounds.
Regarding Claim 18,
Ben-dror (US 20220327386 A1) teaches a vehicle, comprising:
a data processing system comprising memory devices coupled with one or more processors to:
receive a model trained by machine learning comprising a plurality of first operations (para [0048] “According to some embodiments, parameterization component 310 receives a neural network that includes an affine function and a non-linear activation function.” Activation functions (i.e., first operations).), the model transformed to replace a non-linear operation of the model with a second operation of a plurality of second operations, the second operation selected from the plurality of second operations to approximate the non-linear operation (para [0048] “In some examples, parameterization component 310 replaces the non-linear activation function with a parameterized activation function that includes a linearity parameter.”), the selection based on a level of computing resources consumed by the plurality of second operations (para [0040] “The present disclosure describes systems and methods for neural network reduction by decreasing the number of layers in the neural network. One or more embodiments of the present disclosure include receiving a trained neural network (e.g., a neural network developed by a user and user device via NAS) and learning the non-linear activation units that can be replaced with an identity function. Next, linear blocks may be folded to form a single block in places where the non-linear units (e.g., non-linear activation functions) were replaced by an identity function.” para [0043] “For instance, some edge devices may benefit from implementation of reduced neural networks (e.g., to increase edge device performance when implementing reduced neural networks via reduced power consumption, reduced computation latency, etc.).”)
Ben-dror does not explicitly disclose comparing the accuracy to a threshold.
Ben-dror does not explicitly disclose
and a comparison of an accuracy of the model generated with the plurality of second operations with an accuracy threshold to operate the vehicle;
receive sensor data from at least one sensor of the vehicle; and
execute the model with the sensor data as an input to generate an output to operate the vehicle.
However, Bingham (US 20220051076 A1) teaches
and a comparison of an accuracy of the model generated with the plurality of second operations with an accuracy threshold (para [0029] “During the search, all ReLU activation functions in a given neural network are replaced with a candidate activation function.” The relu activation functions (i.e., first nonlinear operations) are replaced with candidate activation functions (i.e., second operations). Para [0014] “training the neural network with the AF.sub.C at a compressed learning rate over a first predetermined number of epochs and assigning a fitness score F.sub.AFC to the child activation function AF.sub.C; comparing the fitness score F.sub.AFC to a predetermined threshold fitness score F.sub.T and if F.sub.AFC≥F.sub.T” Model fitness score (i.e., accuracy) is compared to a threshold). Para [0029] “During the search, all ReLU activation functions in a given neural network are replaced with a candidate activation function. No other changes to the network or training setup are made. The network is trained on the dataset, and the activation function is assigned a fitness score equal to the network's accuracy on the validation set.”)
Ben-dror and Bingham are analogous because they are directed to replacing activation functions in machine learning models.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the activation function of Ben-dror with the accuracy threshold of Bingham.
Doing so would allow for reducing the error rate for the activation function (Bingham para [0067]).
While Bingham discloses comparing an accuracy of the model generated from replacing the non-linear operations to a threshold, Bingham does not explicitly disclose an accuracy threshold to operate a vehicle.
However, Wolf (US 20230415772 A1) teaches
and a comparison of an accuracy of the model … with an accuracy threshold to operate the vehicle (para [0175] “As the planning system 404 processes the scene data 502 corresponding to the different scenes, the trajectory evaluation network 510 or machine learning model may continue to be modified until trained to meet a training threshold (e.g., time, accuracy, etc.). Once trained, the components, such as the trajectory evaluation network 510 or its coefficients, weights, nodes, or other parameters, may be integrated into a vehicle 200.”);
receive sensor data from at least one sensor of the vehicle (para [0048] “Autonomous vehicle compute 202f include at least one device configured to be in communication with cameras 202a, LiDAR sensors 202b, radar sensors 202c, microphones 202d, communication device 202e, safety controller 202g, and/or DBW system 202h.”); and
execute the model with the sensor data as an input to generate an output to operate the vehicle (para [0078] “For example, perception system 402 processes the data associated with the input provided to CNN 420 based on perception system 402 normalizing sensor data (e.g., image data, LiDAR data, radar data, and/or the like).”).
Ben-dror and Wolf are analogous because they are directed towards neural networks utilizing activation functions.
It would have been obvious to one or ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror with the method of controlling a vehicle of Wolf.
Doing so would allow for setting trajectories to autonomously control vehicles (Wolf para [0025]).
Regarding Claim 20,
Ben-dror, Bingham, and Wolff teach the vehicle of claim 18. Ben-dror further teaches wherein: the second operation is selected to replace the non-linear operation responsive to a completion of training the model (para [0025] “One or more embodiments of the disclosure identify and remove certain non-linear layers in a trained neural network.” para [0040] “One or more embodiments of the present disclosure include receiving a trained neural network (e.g., a neural network developed by a user and user device via NAS) and learning the non-linear activation units that can be replaced with an identity function. Next, linear blocks may be folded to form a single block in places where the non-linear units (e.g., non-linear activation functions) were replaced by an identity function.”).
Claims 3 and 14 are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Ben-dror/Bingham/Wolff, as applied above, and further in view of Huang et al. (US-20250202679-A1).
Regarding Claim 3,
Ben-dror, Bingham, and Wolff teach the system of claim 1. Ben-dror further teaches comprising: the data processing system to:
receive a second model (para [0043] “For instance, some edge devices may benefit from implementation of reduced neural networks (e.g., to increase edge device performance when implementing reduced neural networks via reduced power consumption, reduced computation latency, etc.).” multiple neural networks may be reduced. para [0048] “According to some embodiments, parameterization component 310 receives a neural network that includes an affine function and a non-linear activation function.” Activation functions (i.e., first operations).),
search the second model to identify a non-linear operation of a plurality of third operations (para [0048] “In some examples, parameterization component 310 replaces the non-linear activation function with a parameterized activation function that includes a linearity parameter.”);
select, from the plurality of second operations (para [0048] “In some examples, parameterization component 310 replaces a set of non-linear activation functions with a set of parameterized activation functions having a same linearity parameter.”), a fourth operation that approximates the non-linear operation of the plurality of third operations (para [0040] “The present disclosure describes systems and methods for neural network reduction by decreasing the number of layers in the neural network. One or more embodiments of the present disclosure include receiving a trained neural network (e.g., a neural network developed by a user and user device via NAS) and learning the non-linear activation units that can be replaced with an identity function. Next, linear blocks may be folded to form a single block in places where the non-linear units (e.g., non-linear activation functions) were replaced by an identity function.”), the selection based on the level of computing resources consumed by the plurality of second operations (para [0043] “For instance, some edge devices may benefit from implementation of reduced neural networks (e.g., to increase edge device performance when implementing reduced neural networks via reduced power consumption, reduced computation latency, etc.).”), an accuracy of the second model generated with the plurality of second operations (para [0010] “One or more embodiments of the method, apparatus, non-transitory computer readable medium, and system include identifying a neural network that includes a affine function and a non-linear activation function, replacing the non-linear activation function with a parameterized activation function that includes a linearity parameter, computing an auxiliary loss term based on a value selected for the linearity parameter of the parameterized activation function, wherein the auxiliary loss term encourages the linearity parameter to approach a value of one, iteratively updating the value for the linearity parameter of the parameterized activation function based on the auxiliary loss term to obtain an approximately affine activation function, and combining the approximately affine activation function with the affine function of the neural network to obtain a reduced neural network.” para [0036] “Each node and edge is associated with one or more node weights that determine how the signal is processed and transmitted. During the training process, these weights are adjusted to improve the accuracy of the result (i.e., by minimizing a loss function which corresponds in some way to the difference between the current result and the target result).”), and
replace the non-linear operation of the plurality of third operations with the fourth operation in the model (para [0049] “According to some embodiments, parameterization component 310 is configured to modify a neural network that includes an affine function and a non-linear activation function by replacing the non-linear activation function with a parameterized activation function that includes a linearity parameter.”).
Bingham further teaches
select, from the plurality of second operations, a fourth operation that approximates the non-linear operation of the plurality of third operations (para [0015] “In a third exemplary embodiment, at least one computer-readable medium storing instructions that, when executed by a computer, perform a process for generating one or more activation functions for a neural network, the process including: selecting a random population of activation functions from an operator search space comprising a plurality of activation functions; replacing existing activation functions in the neural network with each of a subset of the selected activation functions” The process of selecting activation functions to replace the current activation functions are repeated.), the selection based on the accuracy threshold (Para [0014] “training the neural network with the AF.sub.C at a compressed learning rate over a first predetermined number of epochs and assigning a fitness score F.sub.AFC to the child activation function AF.sub.C; comparing the fitness score F.sub.AFC to a predetermined threshold fitness score F.sub.T and if F.sub.AFC≥F.sub.T” Model fitness score (i.e., accuracy) is compared to a threshold).); and
Ben-dror and Bingham are analogous because they are directed to replacing activation functions in machine learning models.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the activation function of Ben-dror with the accuracy threshold of Bingham.
Doing so would allow for reducing the error rate for the activation function (Bingham para [0067]).
While Bingham discloses comparing an accuracy of the model generated from replacing the non-linear operations to a threshold, Bingham does not explicitly disclose an accuracy threshold to operate a vehicle.
However, Wolf (US 20230415772 A1) teaches
the accuracy threshold to operate the vehicle (para [0175] “As the planning system 404 processes the scene data 502 corresponding to the different scenes, the trajectory evaluation network 510 or machine learning model may continue to be modified until trained to meet a training threshold (e.g., time, accuracy, etc.). Once trained, the components, such as the trajectory evaluation network 510 or its coefficients, weights, nodes, or other parameters, may be integrated into a vehicle 200.”).
Ben-dror and Wolf are analogous because they are directed towards neural networks utilizing activation functions.
It would have been obvious to one or ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror with the method of controlling a vehicle of Wolf.
Doing so would allow for setting trajectories to autonomously control vehicles (Wolf para [0025]).
Ben-dror, Bingham, and Wolff do not explicitly disclose
wherein the output of the model is an input to the second model;
However, Huang (US 20250202679 A1) teaches
wherein the output of the model is an input to the second model (para [0042] “An additional normalized sum 54B may be computed from the normalized sum 54A and the output of the encoder feed-forward network 56, and the normalized sum 54B may be used as an input to the decoder layer 70.”);
Ben-dror, Bingham, Wolff, and Huang are analogous because they are directed to the same field of endeavor of neural networks.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror, Bingham, and Wolff with the encoder-decoder architecture of Huang.
Doing so would allow for processing encrypted user input data with a neural network (Huang para [0021]).
Regarding Claim 14,
Claim 14 is the method corresponding to the system of claim 3. Claim 14 is substantially similar to claim 3 and is rejected on the same grounds.
Claims 4 and 15 are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Ben-dror/Bingham/Wolff, as applied above, and further in view of Biryukova et al. (US-20220138562-A1) and Kim et al. (US-20230259775-A1).
Regarding Claim 4,
Ben-dror, Bingham, and Wolff teach the system of claim 1. Ben-dror further teaches comprising: the data processing system to:
receive a graph representing the model, the graph comprising a plurality of nodes representing the plurality of first operations of the model, the graph comprising a plurality of edges between the plurality of nodes indicating that an output of one operation of the plurality of first operations is an input into another operation of the plurality of first operations (para [0003] “Within a neural network, nodes (e.g., which may be referred to as neurons) may be interconnected and operate collectively to process input data. Nodes in the network may have an activation function that computes whether the node is activated based on the output of previous nodes.” Para [0036]);
Ben-dror, Bingham, and Wolff do not explicitly disclose
identify a set of nodes of the plurality of nodes to measure the accuracy at;
select a node from the set of nodes that represents an operation that operates based on the output of the non-linear operation responsive to a determination that the node is separated from a second node of the plurality of nodes representing the non-linear operation by a number of nodes or a number of edges less than a threshold; and
determine the accuracy for the plurality of second operations based on values generated by the model with the plurality of second operations at an output of the operation.
However, Biryukova (US 20220138562 A1) teaches
identify a set of nodes of the plurality of nodes to measure the accuracy at (para [0120]-[0124] Grid nodes (i.e., subset of nodes).);
determine the accuracy for the plurality of second operations based on values generated by the model with the plurality of second operations at an output of the operation (para [0123] “ReLU(x)={0x<0xx≥0
or its modification (Noisy ReLU, Leaky ReLU, parametric ReLU, etc.),” modified activation function (i.e., second plurality of operations). Para [0124]-[0126] accuracy.).
Ben-dror, Bingham, Wolff, and Biryukova are analogous because they are directed to the same field of endeavor of neural networks.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror, Bingham, and Wolff with the activation functions of Biryukova.
Doing so would allow for increasing the accuracy of the results produced by the trained ANN instance. An additional objective is to increase the speed of training of an ANN instance using certain embodiments of the present solution, such as embeddings or matrix solutions of systems of linear equations (Biryukova para [0005]).
Kim (US 20230259775 A1) teaches
select a node from the set of nodes that represents an operation that operates based on the output of the non-linear operation responsive to a determination that the node is separated from a second node of the plurality of nodes representing the non-linear operation by a number of nodes or a number of edges less than a threshold (para [0061], para [0067] “For example, when a weight between a node 1 and a node 2-3 in the neural network 210 is less than or equal to a predetermined threshold value, pruning is a process of setting the weight between the node 1 and the node 2-3 in the neural network 210 to “0”, for example, to effectively remove connectivity between the node 1 and the node 2-3 as shown in the pruned neural network 220 (in some embodiments, pruning may involve removing or suppressing a connection so that corresponding previously-connected channels/nodes stop exchanging an activation input/output).”);
Ben-dror, Bingham, Wolff, and Kim are analogous because they are directed to the same field of endeavor of neural networks.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror, Bingham, and Wolff with the pruning of Kim.
Doing so would allow for maintaining performance of a neural network while reducing the cost of implementing the neural network (Kim para [0004]).
Regarding Claim 15,
Claim 15 is the method corresponding to the system of claim 4. Claim 15 is substantially similar to claim 4 and is rejected on the same grounds.
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over the combination of Ben-dror/Bingham/Wolff, as applied above, and further in view of Choi et al. (US-20230306242-A1).
Regarding Claim 7,
Ben-dror, Bingham, and Wolff teach the system of claim 1. Ben-dror, Bingham, and Wolff do not explicitly disclose comprising: the data processing system to: search a library for operations that approximate the non-linear operation to identify the plurality of second operations.
However, Choi (US 20230306242 A1) teaches
search a library for operations that approximate the non-linear operation to identify the plurality of second operations (para [0057] “The processor 200 may generate the LUT using an auxiliary neural network corresponding to a layer of the main neural network (whose non-linear activation function is to be approximated/substituted by the LUT) For example, the non-linear function may include the GELU function, the softmax function, or a layer normalization function, among others.” Look up table (i.e., library).).
Ben-dror, Bingham, Wolff, and Choi are analogous because they are directed to the same field of endeavor of neural networks.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror, Bingham, and Wolff with the look up table of Choi.
Doing so may improve performance of the main neural network by using the LUTs corresponding to the respective main layers to provide the non-linear functionality of the non-linear function of the main layers (a LUT generally provides a result with less computation than needed by the non-linear function that it approximates) (Choi para [0051]).
Claim 9 is rejected under 35 U.S.C. 103 as being unpatentable over the combination of Ben-dror/Bingham/Wolff, as applied above, and further in view of Wang et al. (US-20230114915-A1).
Regarding Claim 9,
Ben-dror, Bingham, and Wolff teach the system of claim 1.
Ben-dror, Bingham, and Wolff do not explicitly disclose
comprising: the data processing system to: search the model for operations of the plurality of first operations that consume a particular level of computing resources greater than a threshold to identify the non-linear operation.
However, Wang (US 20230114915 A1) teaches
comprising: the data processing system to: search the model for operations of the plurality of first operations that consume a particular level of computing resources greater than a threshold to identify the non-linear operation (para [0053] “Generally, for the ReLU function calculation unit, a YOLOv3-tiny network uses the Leaky ReLU as an activation function. However, when x<0, Y=kx, where k is a decimal between 0 and 1, and therefore the floating-point multiplication is required, which not only wastes resources but also consumes a lot of time. To reduce resource consumption and save time, the present disclosure chooses to use the ReLU function as the activation function. The ReLU functions are shown as follows. When x<0, the ReLU function outputs y=0. Compared with the Leaky ReLU, the realization of the ReLU function in the circuit not only saves resources but also saves calculation time.”).
Ben-dror, Bingham, Wolff and Wang are analogous because they are directed to the same field of endeavor of neural networks.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror, Bingham, and Wolff with the activation function of Wang.
Doing so would allow for saving processing resources and time for neural network computations (Wang para [0053]).
Claims 10, 13, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Ben-dror/Bingham/Wolff, as applied above, and further in view of Edso et al. (US 20240062063 A1).
Regarding Claim 10,
Ben-dror, Bingham, and Wolf teach the system of claim 1.
Ben-dror, Bingham, and Wolf do not explicitly disclose
wherein the level of computing resources is based on a lookup table size.
However, Edso (US 20240062063 A1) teaches
wherein the level of computing resources is based on a lookup table size (para [0054] “As described above, the coding efficiency and the computational resources used to compress and decompress using lookup tables 402A and 402B may be dependent on the size of lookup tables 402A and 402B, the codewords, values, or symbols to which the weight vales are mapped, and the amount of binning performed when grouping weight values.”).
Ben-dror, Bingham, Wolf, and Edso are analogous because they are directed to the field of neural networks.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror, Bingham, and Wolf with the lookup table of Edso.
Doing so would allow for compressing the neural network to reduce the amount of memory usage (Edso para [0045]).
Regarding claim 13,
Ben-dror, Bingham, and Wolf teach the method of claim 12. Ben-dror further teaches wherein: the second operation maps to the non-linear operation and uses less computing resources relative to the non-linear operation (para [0040] “The present disclosure describes systems and methods for neural network reduction by decreasing the number of layers in the neural network. One or more embodiments of the present disclosure include receiving a trained neural network (e.g., a neural network developed by a user and user device via NAS) and learning the non-linear activation units that can be replaced with an identity function. Next, linear blocks may be folded to form a single block in places where the non-linear units (e.g., non-linear activation functions) were replaced by an identity function.” para [0043] “For instance, some edge devices may benefit from implementation of reduced neural networks (e.g., to increase edge device performance when implementing reduced neural networks via reduced power consumption, reduced computation latency, etc.).”),
Ben-dror, Bingham, and Wolf do not explicitly disclose
wherein the level of computing resources is based on a lookup table size.
However, Edso (US 20240062063 A1) teaches
wherein the level of computing resources is based on a lookup table size (para [0054] “As described above, the coding efficiency and the computational resources used to compress and decompress using lookup tables 402A and 402B may be dependent on the size of lookup tables 402A and 402B, the codewords, values, or symbols to which the weight vales are mapped, and the amount of binning performed when grouping weight values.”).
Ben-dror, Bingham, Wolf, and Edso are analogous because they are directed to the field of neural networks.
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify the neural network of Ben-dror, Bingham, and Wolf with the lookup table of Edso.
Doing so would allow for compressing the neural network to reduce the amount of memory usage (Edso para [0045]).
Regarding claim 19,
Claim 19 is the vehicle corresponding to the method of claim 13. Claim 19 is substantially similar to claim 13 and is rejected on the same grounds.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to HENRY K NGUYEN whose telephone number is (571)272-0217. The examiner can normally be reached Mon - Fri 7:00am-4:30pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Li B Zhen can be reached at 5712723768. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/HENRY NGUYEN/Examiner, Art Unit 2121