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 .
Status of Claims
This Office Action is in response to the communication filed on 13 Jun 2023.
Claims 1-16 are being considered on the merits.
Drawings
The drawings filed on 13 Jun 2023 are accepted.
Claim Objections
Claim 15 is objected to because of the following informality: The first line of the last claim limitation recites “…(i) inputting the the testing data…” where there is an extraneous definite article.
Claims 1, 7, 9, and 15 are objected to because they each recite “…perform learning operation” where the term “learning operation” should be plural or a definite or indefinite article appears missing.
Appropriate correction is required.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Where applicant acts as his or her own lexicographer to specifically define a term of a claim contrary to its ordinary meaning, the written description must clearly redefine the claim term and set forth the uncommon definition so as to put one reasonably skilled in the art on notice that the applicant intended to so redefine that claim term. Process Control Corp. v. HydReclaim Corp., 190 F.3d 1350, 1357, 52 USPQ2d 1029, 1033 (Fed. Cir. 1999).
The term “1-st” is used by claims 1-20 to likely mean “first” but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “1-st”.
The term “n-th” is used by claims 1-20 to likely mean “last of a set” but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “n-th”.
The term “(1_1)-st” is used by claims 1, 7, 9, and 15 likely mean “first of a first set” but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(1_1)-st”.
The term “(1_m)-st” is used by claims 1, 7, 9, and 15 likely mean “first of a last set” but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(1_m)-st”.
The term “(n_1)-th” is used by claims 1, 7, 9, and 15 likely mean “last of a first set” but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(n_1)-th”.
The term “(n_m)-th” is used by claims 1, 7, and 15 appears to possibly mean “last of a last set” but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(n_m)-th”.
The term “(j_k)-th” is used by claims 1, 7, 9, and 15 appears to possibly indicate some iteration of a loop but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(j_k)-th”.
The term “(x_k)-th” is used by claims 1, 7, 9, and 15 appears to possibly indicate some iteration of a loop but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(x_k)-th”.
The term “(iii-1)” is used by claims 1, 7, and 15 appears to possibly indicate some specific total task loss but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(iii-1)”.
The term “(iii-2)” is used by claims 1, 7, and 15 appears to possibly indicate a specific total consistency loss but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(iii-2)”.
The term “(ii-1)” is used by claims 1, 7, and 15 appears to possibly indicate a specific mini batch task loss but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(ii-1)”.
The term “(ii-2)” is used by claims 1, 7, and 15 appears to possibly indicate a specific mini batch consistency loss but is not a commonly used or understood term. The term is indefinite because the specification does not clearly define the term “(ii-2)”.
The term “(i)” in claims 1, 6-8, and 14-16 is a relative term which renders the claim indefinite. The term “(i)” is not defined by the claim, the specification does not provide a standard for ascertaining the requisite degree, and one of ordinary skill in the art would not be reasonably apprised of the scope of the invention. The claim element following each “(i)” is rendered indefinite as a result of the usage of this term.
The term “(I)” in claims 9, 15, and 16 is a relative term which renders the claim indefinite. The term “(I)” is not defined by the claim, the specification does not provide a standard for ascertaining the requisite degree, and one of ordinary skill in the art would not be reasonably apprised of the scope of the invention. The claim element following each “(I)” is rendered indefinite as a result of the usage of this term.
The term “(II)” in claims 9, 11, 15, and 16 is a relative term which renders the claim indefinite. The term “(II)” is not defined by the claim, the specification does not provide a standard for ascertaining the requisite degree, and one of ordinary skill in the art would not be reasonably apprised of the scope of the invention. The claim element following each “(II)” is rendered indefinite as a result of the usage of this term.
The term “(III)” in claim 10 is a relative term which renders the claim indefinite. The term “(III)” is not defined by the claim, the specification does not provide a standard for ascertaining the requisite degree, and one of ordinary skill in the art would not be reasonably apprised of the scope of the invention. The claim element following each “(III)” is rendered indefinite as a result of the usage of this term.
Claims 3, 6 and 14 recite the limitation “the step of (b)”. There is insufficient antecedent basis for this limitation in the claim.
Claims 6, 8 and 14 recite the limitation “the step (a)”. There is insufficient antecedent basis for this limitation in the claim.
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-6, 9-14, and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Cheng (US20240078792; hereinafter, Cheng) in view of Gordon (US20210279511; hereinafter, Gordon)
Regarding claim 1, Cheng teaches:
A method for training a multi-tasking network configured to perform multi-tasks by using each of datasets having each of task labels corresponding to each of different tasks, the method comprising: (Cheng, para. 0029: “The encoder module can also be implemented using different types of network models, such as a convolutional neural network, a recurrent neural network, a transformer, or a sub-network. At step 806, the method includes computing, using a first task head, a first training loss metric based on the extracted features and the first set of labels. At step 808, the method includes computing, using a second task head, a second training loss metric based on the extracted features and the second set of labels. The task heads can be configured to perform different types of inference tasks” Examiner notes Cheng teaches training a network on at least a first and second task each having a first and second set of labels).
(a) in response to acquiring specific training data from a main dataset including a 1-st sub dataset having a 1-st task label to an n-th sub dataset having an n-th task label, wherein the n is an integer of 2 or more, a learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) inputting the specific training data into each of a 1-st multi-tasking network to an n-th multi-tasking network performing each of n tasks, to thereby instruct each of the 1-st multi-tasking network to the n-th multi-tasking network to perform learning operation on the specific training data and thus to output each of n task results; and (Cheng, para. 0026 and 0045: “The input data 510 includes facial image data. The encoder 504 is implemented to extract features from the input data 510. The two task heads 506, 508 receive the extracted features as inputs and compute predictions based on their respective inference task.” “In this aspect, additionally or alternatively, the encoder module includes one or more of a convolutional neural network, a recurrent neural network, a transformer, or a sub-network.”)
(b) the learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) (i) calculating a 1-st task loss to an n-th task loss by referring to a specific task label and each of a 1-st specific task result to an n-th specific task result of the 1-st multi-tasking network to the n-th multitasking network for a specific task corresponding to the specific task label included in the specific training data, (ii) calculating a 1-st unlabeled consistency loss group comprised of a (1_1)-st unlabeled consistency loss (Gordon, para. 0006: “ For example, the system can process a particular unlabeled training example using the first neural network to generate a first output for the first machine learning task, and can process the particular unlabeled training example using each of the second neural networks to generate respective second outputs for the second machine learning tasks. Using the second outputs and the relationship between outputs of the first neural network and outputs of the second neural networks, the system can generate a target consistency output for the first machine learning task” “The training system 100 includes a training data store 110, N task engines 120a-n, and a consistency loss engine 140.” Examiner notes Gordon teaches consistency loss on labels) to a (1_m)-th unlabeled consistency loss to an n-th unlabeled consistency loss group comprised of a (n_1)-st unlabeled consistency loss to an (n_m)- th unlabeled consistency loss by referring to a (j_k)-th task result and an (x_k)-th task result, while increasing j from 1 to n, and while increasing k from 1 to m for each j, wherein m corresponds to remaining tasks other than the specific task among then tasks, and wherein x corresponds to remaining multi-tasking networks other than any one multi-tasking network specified by j among the 1-st multi-tasking network to the n-th multi-tasking network, and (iii) training the 1-st multi-tasking network to the n-th multi-tasking network by using (iii-1) a total task loss generated by referring to the 1-st task loss to the n-th task loss and (iii-2) a total consistency loss generated by referring to the 1-st unlabeled consistency loss group comprised of the (1_1) -st unlabeled consistency loss to the (1_m)-th unlabeled consistency loss to the n-th unlabeled consistency loss group comprised of the (n_1)-st unlabeled consistency loss to the (n_m)-th unlabeled consistency loss. (Cheng, para. 0024: “In addition to different neural network architectures, multi-task joint training methods can include different implementations of the filtering and masking processes. FIG. 4 is a diagram conceptually illustrating an example process 400 for applying a binary mask to a computed training loss in accordance with an implementation of the present disclosure. As shown, a training loss metric 402 is computed using input data 404 and an associated set of labels 406 for a given task. The training loss metric 402 can be computed by comparing prediction outputs from a task head with the associated set of labels 406. Different functions may be used to calculate the training loss metric. In some implementations, training loss metric 402 is computed using a smooth L1 loss function. The input data 404 includes n data elements, and the set of labels 406 includes n annotations. In the illustrative example, the set of labels 406 is missing at least an annotation associated with the 2nd data element of the input data 404. A mask 408 is computed using the set of labels 406. Different types of masks can be used depending on the application. In the example process 400, the mask 408 is a binary mask. Computation of the mask 408 can be based on how missing annotations are represented in the set of labels 406. In some implementations, the set of labels 406 include random values for missing annotations. Different data representation schemes can be utilized, and the masking process can be modified as appropriate. For example, in the diagram of FIG. 4, the set of labels 406 is zero-padded, having values of zeroes for missing annotations. As such, the set of labels 406 includes a zero value representing the missing annotation for the 2nd data element of the input data 404. In such cases, a binary mask can be computed by passing on the zero-values representing missing annotations. Using the mask 408, the training metric 402 can be filtered to remove training losses resulting from missing annotations. The resulting filtered training loss metric 410 includes training losses for data elements having applicable annotations.” Examiner notes Cheng teaches training a neural network on losses including masking missing annotations when computing loss)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng. Cheng teaches methods, systems, and apparatus, including computer programs encoded on computer storage media, for training a neural network using consistency measures. Gordon teaches weight normalization to improve the conditioning of the optimization problem. One of ordinary skill would have been motivated to combine the teachings of Gordon into Cheng in order to enforce a consistency between two neural networks resulting in improvement of both models (Gordon, para. 0011).
Regarding claim 2, Cheng teaches:
The method of Claim 1, further comprising: (c) the learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) assessing performances of the 1-st multi-tasking network to the n-th multi-tasking network, (Cheng, para. 0020: “training loss is a metric that indicates the accuracy of the prediction compared to a ground truth value. If the prediction is perfect, the loss is zero. Greater losses indicate worse performances.” Examiner notes Cheng teaches measure of worse performances which is assessment of performance) thereby selecting an optimal multi-tasking network with a best performance. (Gordon, para. 0059: “For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Regarding claim 3, Cheng teaches:
The method of Claim 1, wherein, at the step of (b), the learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) is configured to generate a labeled consistency loss by referring to a 1-st specific consistency loss to an n-th specific consistency loss, and then generate the total consistency loss by further referring to the labeled consistency loss, (Cheng, para. 0030: “At step 810, the method includes filtering the first training loss metric using a first mask. The first mask may be computed using the first set of labels, which can then be applied to the first training loss metric to filter undesired training losses. At step 812, the method includes filtering the second training loss metric using a second mask. The second mask may be computed using the second set of labels, which can then be applied to the second training loss metric to filter undesired training losses. In some implementations, at least one of the masks includes a binary mask having zero values corresponding to the missing annotations of the first set of labels. As At step 814, the method includes computing a final training loss metric based on the filtered first and second training loss metrics.” Examiner notes Cheng teaches a first and second loss which generate a “final” i.e. total loss metric using the first and second loss).
wherein the 1-st specific consistency loss is generated by referring to the 1-st specific task result and each of 1-st other specific task results corresponding to the 1-st specific task result, and (Cheng, para. 0030 and 0031: “The final training loss metric can be used to update and adjust the neural network including the encoder and plurality of task heads.” “A first training loss metric can be computed based on a first set of labels using a first task head, a second training loss metric can be computed based on a second set of labels using a second task head, and a third training loss metric can be computed based on a third set of labels using a third task head. Higher numbers of task heads can also be implemented. The task heads can include neural network architectures for partially or completely differing types of inference tasks. Furthermore, the steps as described in process 800 can occur sequentially or in parallel, or in a different order, provided similar functionality is achieved.” Examiner notes for examination purposes only, the phrase “generated by referring” is interpreted as processing along with task results from other tasks where such steps can occur in any different order, including in parallel starting with a first result of each task).
wherein the n-th specific consistency loss is generated by referring to the n-th specific task result and each of n-th other specific task results corresponding to the n-th specific task result. (Cheng, para. 0030 and 0031: “The final training loss metric can be used to update and adjust the neural network including the encoder and plurality of task heads.” “A first training loss metric can be computed based on a first set of labels using a first task head, a second training loss metric can be computed based on a second set of labels using a second task head, and a third training loss metric can be computed based on a third set of labels using a third task head. Higher numbers of task heads can also be implemented. The task heads can include neural network architectures for partially or completely differing types of inference tasks. Furthermore, the steps as described in process 800 can occur sequentially or in parallel, or in a different order, provided similar functionality is achieved.” Examiner notes for examination purposes only, the phrase “generated by referring” is interpreted as processing along with task results from other tasks where such steps can occur in any different order, including in parallel starting with a first result of each task).
Regarding claim 4, Cheng teaches:
The method of Claim 1, wherein the learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) is configured to generate a total network loss by adding the total task loss and the total consistency loss, and train the 1-st multi-tasking network to the n-th multi-tasking network by using the total network loss, (Gordon, para. 0006: “ For example, the system can process a particular unlabeled training example using the first neural network to generate a first output for the first machine learning task, and can process the particular unlabeled training example using each of the second neural networks to generate respective second outputs for the second machine learning tasks. Using the second outputs and the relationship between outputs of the first neural network and outputs of the second neural networks, the system can generate a target consistency output for the first machine learning task” “The training system 100 includes a training data store 110, N task engines 120a-n, and a consistency loss engine 140.” Examiner notes Gordon teaches consistency loss on labels)
wherein the total task loss and the total consistency loss are balanced by adjusting an application ratio of the total consistency loss through hyperparameters (Gordon, para. 0059: “Thus, the training of the N neural networks can be parallelized, significantly reducing the time required for training. Furthermore, each task trainer of the distributed training system 200 (e.g., the first task trainer 210) can use different hyperparameters than the other task trainers, allowing for the hyperparameters to be optimized for each respective different machine learning task. For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”) of the learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“).
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Regarding claim 5, Cheng teaches:
The method of Claim 1, wherein the 1-st multi-tasking network to the n-th multi-tasking network are generated by cloning an initial multi-tasking network configured to perform the n tasks. (Gordon, para. 0011: “In some existing systems, a first neural network for a first machine learning task and a second neural network for a second machine learning task can be trained using the same, twice-labeled training data set, where each training example in the training data set has a first label corresponding to the first machine learning task and a second label corresponding to the second machine learning task” Examiner notes Gordon teaches a first and second machine learning task using the same training set i.e. a cloned multi-tasking neural network).
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Regarding claim 6, Cheng teaches:
The method of Claim 1, wherein the learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“). is configured to (i) generate a mini batch including at least one 1-st training data sampled from the 1-st sub dataset to at least one n-th training data sampled from the n-th sub dataset, (ii) for each of all training data included in the mini batch, wherein all the training data have been generated at the step of (b) after performing the step (a), (Gordon, para. 0043: “In such implementations, the training system 100 can employ any appropriate batch updating policy to train the neural networks. For example, the training system 100 can alternate between i) training example batches that include only training examples from the mediator training data set and ii) training example batches that include only training examples from the dedicated training data sets. As another example, the system can use training example batches that include one or more training examples from both the mediator training data set and the dedicated training data set.” Examiner notes the Gordon teaches use of batches less than the entire dataset).
(ii-1) generate a mini batch task loss by averaging each of total task losses on each of all the training data and (ii-2) generate a mini batch consistency loss by averaging each of total consistency losses on each of all the training data, and (iii) train the 1-st multi-tasking network to the n-th multi-tasking network by using the mini batch task loss and the mini batch consistency loss. (Gordon, para. 0059: “Thus, the training of the N neural networks can be parallelized, significantly reducing the time required for training. Furthermore, each task trainer of the distributed training system 200 (e.g., the first task trainer 210) can use different hyperparameters than the other task trainers, allowing for the hyperparameters to be optimized for each respective different machine learning task. For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Regarding claim 9, Cheng teaches:
A learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) for training a multi-tasking network configured to perform multi-tasks by using each of datasets having each of task labels corresponding to each of different tasks, the learning device comprising: (Cheng, para. 0029: “The encoder module can also be implemented using different types of network models, such as a convolutional neural network, a recurrent neural network, a transformer, or a sub-network. At step 806, the method includes computing, using a first task head, a first training loss metric based on the extracted features and the first set of labels. At step 808, the method includes computing, using a second task head, a second training loss metric based on the extracted features and the second set of labels. The task heads can be configured to perform different types of inference tasks” Examiner notes Cheng teaches training a network on at least a first and second task each having a first and second set of labels).
a memory storing instructions for training the multitasking network configured to perform the multi-tasks by using each of the datasets having each of the task labels corresponding to each of the different tasks; and (Cheng, para. 0041: “Thus, a module, program, or engine may be instantiated via logic processor 902 executing instructions held by non-volatile storage device 906, using portions of volatile memory 904.”)
a processor performing operations for training the multitasking network configured to perform the multi-tasks by using each of the datasets having each of the task labels corresponding to each of the different tasks according to the instructions stored in the memory; (Cheng, para. 0029: “The encoder module can also be implemented using different types of network models, such as a convolutional neural network, a recurrent neural network, a transformer, or a sub-network. At step 806, the method includes computing, using a first task head, a first training loss metric based on the extracted features and the first set of labels. At step 808, the method includes computing, using a second task head, a second training loss metric based on the extracted features and the second set of labels. The task heads can be configured to perform different types of inference tasks” Examiner notes Cheng teaches training a network on at least a first and second task each having a first and second set of labels).
wherein the processor performs (I) a process of, in response to acquiring specific training data from a main dataset including a 1-st sub dataset having a 1-st task label to an n-th sub dataset having an n-th task label, wherein the n is an integer of 2 or more, inputting the specific training data into each of a 1-st multi-tasking network to an n-th multi-tasking network performing each of n tasks, to thereby instruct each of the 1-st multitasking network to the n-th multi-tasking network to perform learning operation on the specific training data and thus to output each of n task results; and (Cheng, para. 0026 and 0045: “The input data 510 includes facial image data. The encoder 504 is implemented to extract features from the input data 510. The two task heads 506, 508 receive the extracted features as inputs and compute predictions based on their respective inference task.” “In this aspect, additionally or alternatively, the encoder module includes one or more of a convolutional neural network, a recurrent neural network, a transformer, or a sub-network.”)
(II) processes of (II-1) calculating a 1-st task loss to an n-th task loss by referring to a specific task label and each of a 1-st specific task result to an n-th specific task result of the 1-st multi-tasking network to the n-th multi-tasking network for a specific task corresponding to the specific task label included in the specific training data, (II-2) calculating a 1-st unlabeled consistency loss group comprised of a (1_1)-st unlabeled consistency loss (Gordon, para. 0006: “ For example, the system can process a particular unlabeled training example using the first neural network to generate a first output for the first machine learning task, and can process the particular unlabeled training example using each of the second neural networks to generate respective second outputs for the second machine learning tasks. Using the second outputs and the relationship between outputs of the first neural network and outputs of the second neural networks, the system can generate a target consistency output for the first machine learning task” “The training system 100 includes a training data store 110, N task engines 120a-n, and a consistency loss engine 140.” Examiner notes Gordon teaches consistency loss on labels) to a (1_m)-th unlabeled consistency loss to an n-th unlabeled consistency loss group comprised of a (n_1)-st unlabeled consistency loss to an (n_m) -th unlabeled consistency loss by referring to a (j_k)-th task result and an (x_k)-th task result, while increasing j from 1 ton, and while increasing k from 1 to m for each j, wherein m corresponds to remaining tasks other than the specific task among then tasks, and wherein x corresponds to remaining multi-tasking networks other than any one multitasking network specified by j among the 1-st multi-tasking network to the n-th multi-tasking network, and (II-3) training the 1-st multi-tasking network to the n-th multi-tasking network by using (II-3-a) a total task loss generated by referring to the 1-st task loss to the n-th task loss and (II-3-b) a total consistency loss generated by referring to the 1-st unlabeled consistency loss group comprised of the (1_1)-st unlabeled consistency loss to the (1 m) -th unlabeled consistency loss to the n-th unlabeled consistency loss group comprised of the (n 1)-st unlabeled consistency loss to the (n m)-th unlabeled consistency loss. (Cheng, para. 0024: “In addition to different neural network architectures, multi-task joint training methods can include different implementations of the filtering and masking processes. FIG. 4 is a diagram conceptually illustrating an example process 400 for applying a binary mask to a computed training loss in accordance with an implementation of the present disclosure. As shown, a training loss metric 402 is computed using input data 404 and an associated set of labels 406 for a given task. The training loss metric 402 can be computed by comparing prediction outputs from a task head with the associated set of labels 406. Different functions may be used to calculate the training loss metric. In some implementations, training loss metric 402 is computed using a smooth L1 loss function. The input data 404 includes n data elements, and the set of labels 406 includes n annotations. In the illustrative example, the set of labels 406 is missing at least an annotation associated with the 2nd data element of the input data 404. A mask 408 is computed using the set of labels 406. Different types of masks can be used depending on the application. In the example process 400, the mask 408 is a binary mask. Computation of the mask 408 can be based on how missing annotations are represented in the set of labels 406. In some implementations, the set of labels 406 include random values for missing annotations. Different data representation schemes can be utilized, and the masking process can be modified as appropriate. For example, in the diagram of FIG. 4, the set of labels 406 is zero-padded, having values of zeroes for missing annotations. As such, the set of labels 406 includes a zero value representing the missing annotation for the 2nd data element of the input data 404. In such cases, a binary mask can be computed by passing on the zero-values representing missing annotations. Using the mask 408, the training metric 402 can be filtered to remove training losses resulting from missing annotations. The resulting filtered training loss metric 410 includes training losses for data elements having applicable annotations.” Examiner notes Cheng teaches training a neural network on losses including masking missing annotations when computing loss)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Regarding claim 10, Cheng teaches:
The learning device of Claim 9, wherein the processor further performs (III) the learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) assessing performances of the 1-st multi-tasking network to the n-th multi-tasking network, (Cheng, para. 0020: “training loss is a metric that indicates the accuracy of the prediction compared to a ground truth value. If the prediction is perfect, the loss is zero. Greater losses indicate worse performances.” Examiner notes Cheng teaches measure of worse performances which is assessment of performance) thereby selecting an optimal multi-tasking network with a best performance. (Gordon, para. 0059: “For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Regarding claim 11, Cheng teaches:
The learning device of Claim 9, wherein the processor, at the process of (II), is configured to generate a labeled consistency loss by referring to a 1-st specific consistency loss to an n-th specific consistency loss, and generate the total consistency loss by further referring to the labeled consistency loss, (Cheng, para. 0030: “At step 810, the method includes filtering the first training loss metric using a first mask. The first mask may be computed using the first set of labels, which can then be applied to the first training loss metric to filter undesired training losses. At step 812, the method includes filtering the second training loss metric using a second mask. The second mask may be computed using the second set of labels, which can then be applied to the second training loss metric to filter undesired training losses. In some implementations, at least one of the masks includes a binary mask having zero values corresponding to the missing annotations of the first set of labels. As At step 814, the method includes computing a final training loss metric based on the filtered first and second training loss metrics.” Examiner notes Cheng teaches a first and second loss which generate a “final” i.e. total loss metric using the first and second loss).
wherein the 1-st specific consistency loss is generated by referring to the 1-st specific task result and each of 1-st other specific task results corresponding to the 1-st specific task result, and (Cheng, para. 0030 and 0031: “The final training loss metric can be used to update and adjust the neural network including the encoder and plurality of task heads.” “A first training loss metric can be computed based on a first set of labels using a first task head, a second training loss metric can be computed based on a second set of labels using a second task head, and a third training loss metric can be computed based on a third set of labels using a third task head. Higher numbers of task heads can also be implemented. The task heads can include neural network architectures for partially or completely differing types of inference tasks. Furthermore, the steps as described in process 800 can occur sequentially or in parallel, or in a different order, provided similar functionality is achieved.” Examiner notes for examination purposes only, the phrase “generated by referring” is interpreted as processing along with task results from other tasks where such steps can occur in any different order, including in parallel starting with a first result of each task).
wherein the n-th specific consistency loss is generated by referring to the n-th specific task result and each of n-th other specific task results corresponding to the n-th specific task result. (Cheng, para. 0030 and 0031: “The final training loss metric can be used to update and adjust the neural network including the encoder and plurality of task heads.” “A first training loss metric can be computed based on a first set of labels using a first task head, a second training loss metric can be computed based on a second set of labels using a second task head, and a third training loss metric can be computed based on a third set of labels using a third task head. Higher numbers of task heads can also be implemented. The task heads can include neural network architectures for partially or completely differing types of inference tasks. Furthermore, the steps as described in process 800 can occur sequentially or in parallel, or in a different order, provided similar functionality is achieved.” Examiner notes for examination purposes only, the phrase “generated by referring” is interpreted as processing along with task results from other tasks where such steps can occur in any different order, including in parallel starting with a first result of each task).
Regarding claim 12, Cheng teaches:
The learning device of Claim 9, wherein the processor (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) is configured to generate a total network loss by adding the total task loss and the total consistency loss, and train the 1-st multi-tasking network to the n-th multi-tasking network by using the total network loss, (Gordon, para. 0006: “ For example, the system can process a particular unlabeled training example using the first neural network to generate a first output for the first machine learning task, and can process the particular unlabeled training example using each of the second neural networks to generate respective second outputs for the second machine learning tasks. Using the second outputs and the relationship between outputs of the first neural network and outputs of the second neural networks, the system can generate a target consistency output for the first machine learning task” “The training system 100 includes a training data store 110, N task engines 120a-n, and a consistency loss engine 140.” Examiner notes Gordon teaches consistency loss on labels)
wherein the total task loss and the total consistency loss are balanced by adjusting an application ratio of the total consistency loss through hyperparameters (Gordon, para. 0059: “Thus, the training of the N neural networks can be parallelized, significantly reducing the time required for training. Furthermore, each task trainer of the distributed training system 200 (e.g., the first task trainer 210) can use different hyperparameters than the other task trainers, allowing for the hyperparameters to be optimized for each respective different machine learning task. For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”) of the learning device. (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“).
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Regarding claim 13, Cheng teaches:
The learning device of Claim 9, wherein the 1-st multi-tasking network to the n-th multi-tasking network are generated by cloning an initial multi-tasking network configured to perform then tasks. (Gordon, para. 0011: “In some existing systems, a first neural network for a first machine learning task and a second neural network for a second machine learning task can be trained using the same, twice-labeled training data set, where each training example in the training data set has a first label corresponding to the first machine learning task and a second label corresponding to the second machine learning task” Examiner notes Gordon teaches a first and second machine learning task using the same training set i.e. a cloned multi-tasking neural network).
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Regarding claim 14, Cheng teaches:
The learning device of Claim 9, wherein the processor (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) is configured to (i) generate a mini batch including at least one 1-st training data sampled from the 1-st sub dataset to at least one n-th training data sampled from the n-th sub dataset, (ii) for each of all training data included in the mini batch, wherein all the training data have been generated at the step of (b) after performing the step (a), (Gordon, para. 0043: “In such implementations, the training system 100 can employ any appropriate batch updating policy to train the neural networks. For example, the training system 100 can alternate between i) training example batches that include only training examples from the mediator training data set and ii) training example batches that include only training examples from the dedicated training data sets. As another example, the system can use training example batches that include one or more training examples from both the mediator training data set and the dedicated training data set.” Examiner notes the Gordon teaches use of batches less than the entire dataset)
(ii-1) generate a mini batch task loss by averaging each of total task losses on each of all the training data and (ii-2) generate a mini batch consistency loss by averaging each of total consistency losses on each of all the training data, and (iii) train the 1-st multi-tasking network to the n-th multi-tasking network by using the mini batch task loss and the mini batch consistency loss. (Gordon, para. 0059: “Thus, the training of the N neural networks can be parallelized, significantly reducing the time required for training. Furthermore, each task trainer of the distributed training system 200 (e.g., the first task trainer 210) can use different hyperparameters than the other task trainers, allowing for the hyperparameters to be optimized for each respective different machine learning task. For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
Claims 7-8 and 15-16 are rejected under 35 U.S.C. 103 as being unpatentable over Cheng, in view of Gordon and further in view of Y. Huang, W. Wang, L. Wang and T. Tan, "Multi-task deep neural network for multi-label learning," 2013 IEEE International Conference on Image Processing, Melbourne, VIC, Australia, 2013, pp. 2897-2900, doi: 10.1109/ICIP.2013.6738596 (hereinafter, “Huang”)
Regarding claim 7, Cheng teaches:
A method for testing (Huang, sec. 4.2: “We do not perform ten-fold cross-validation and can not compute the standard deviation of hamming loss in this dataset, because the training set and testing set have been given explicitly (17,927 training images and 12,073 testing images)” Examiner notes Huang teaches a testing set i.e. testing) a trained multi-tasking network by using each of datasets having each of task labels corresponding to each of different tasks, the method comprising: (Cheng, para. 0029: “The encoder module can also be implemented using different types of network models, such as a convolutional neural network, a recurrent neural network, a transformer, or a sub-network. At step 806, the method includes computing, using a first task head, a first training loss metric based on the extracted features and the first set of labels. At step 808, the method includes computing, using a second task head, a second training loss metric based on the extracted features and the second set of labels. The task heads can be configured to perform different types of inference tasks” Examiner notes Cheng teaches training a network on at least a first and second task each having a first and second set of labels).
(a) on condition that a learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) has performed processes of (i) in response to acquiring specific training data from a main dataset including a 1-st sub dataset having a 1-st task label to an n-th sub dataset having an n-th task label, wherein the n is an integer of 2 or more, inputting the specific training data into each of a 1-st multi-tasking network to an n-th multi-tasking network performing each of n tasks to thereby instruct each of the 1-st multi-tasking network to the n-th multi-tasking network to perform learning operation (Cheng, para. 0015: “Further, the framework can utilize the multi-headed attention mechanism to enable joint learning on multiple inference tasks.”) on the specific training data and thus to output each of n task results for training; and (Cheng, para. 0026 and 0045: “The input data 510 includes facial image data. The encoder 504 is implemented to extract features from the input data 510. The two task heads 506, 508 receive the extracted features as inputs and compute predictions based on their respective inference task.” “In this aspect, additionally or alternatively, the encoder module includes one or more of a convolutional neural network, a recurrent neural network, a transformer, or a sub-network.”)
(ii) calculating a 1-st task loss to an n-th task loss by referring to each of a 1-st specific task result for training to an n-th specific task result for training of the 1-st multi-tasking network to the n-th multi-tasking network for a specific task corresponding to a specific task label included in the specific training data and the specific task label, calculating a 1-st unlabeled consistency loss group comprised of a (1_1)-st unlabeled consistency loss (Gordon, para. 0006: “ For example, the system can process a particular unlabeled training example using the first neural network to generate a first output for the first machine learning task, and can process the particular unlabeled training example using each of the second neural networks to generate respective second outputs for the second machine learning tasks. Using the second outputs and the relationship between outputs of the first neural network and outputs of the second neural networks, the system can generate a target consistency output for the first machine learning task” “The training system 100 includes a training data store 110, N task engines 120a-n, and a consistency loss engine 140.” Examiner notes Gordon teaches consistency loss on labels) to a (1_m)-th unlabeled consistency loss to an n-th unlabeled consistency loss group comprised of a (n_1)-st unlabeled consistency loss to an (n_m)-th unlabeled consistency loss by referring to a (j_k)-th task result and an (x_k)-th task result, while increasing j from 1 to n, and while increasing k from 1 to m for each j, wherein m corresponds to remaining tasks other than the specific task among then tasks, and wherein x corresponds to remaining multi-tasking networks other than any one multi-tasking network specified by j among the 1-st multi-tasking network to the n-th multi-tasking network, and (iii) training the 1-st multi-tasking network to the n-th multi-tasking network by using (iii-1) a total task loss generated by referring to the 1-st task loss to the n-th task loss and (iii-2) a total consistency loss generated by referring to the 1-st unlabeled consistency loss group comprised of the (1_1) -st unlabeled consistency loss to the (1_m)-th unlabeled consistency loss to the n-th unlabeled consistency loss group comprised of the (n_1) -st unlabeled consistency loss to the (n_m)-th unlabeled consistency loss, a testing device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) acquiring testing data without a task label; and (Cheng, para. 0024: “In addition to different neural network architectures, multi-task joint training methods can include different implementations of the filtering and masking processes. FIG. 4 is a diagram conceptually illustrating an example process 400 for applying a binary mask to a computed training loss in accordance with an implementation of the present disclosure. As shown, a training loss metric 402 is computed using input data 404 and an associated set of labels 406 for a given task. The training loss metric 402 can be computed by comparing prediction outputs from a task head with the associated set of labels 406. Different functions may be used to calculate the training loss metric. In some implementations, training loss metric 402 is computed using a smooth L1 loss function. The input data 404 includes n data elements, and the set of labels 406 includes n annotations. In the illustrative example, the set of labels 406 is missing at least an annotation associated with the 2nd data element of the input data 404. A mask 408 is computed using the set of labels 406. Different types of masks can be used depending on the application. In the example process 400, the mask 408 is a binary mask. Computation of the mask 408 can be based on how missing annotations are represented in the set of labels 406. In some implementations, the set of labels 406 include random values for missing annotations. Different data representation schemes can be utilized, and the masking process can be modified as appropriate. For example, in the diagram of FIG. 4, the set of labels 406 is zero-padded, having values of zeroes for missing annotations. As such, the set of labels 406 includes a zero value representing the missing annotation for the 2nd data element of the input data 404. In such cases, a binary mask can be computed by passing on the zero-values representing missing annotations. Using the mask 408, the training metric 402 can be filtered to remove training losses resulting from missing annotations. The resulting filtered training loss metric 410 includes training losses for data elements having applicable annotations.” Examiner notes Cheng teaches training a neural network on losses including masking missing annotations when computing loss)
(b) the testing (Huang, sec. 4.2: “We do not perform ten-fold cross-validation and can not compute the standard deviation of hamming loss in this dataset, because the training set and testing set have been given explicitly (17,927 training images and 12,073 testing images)” Examiner notes Huang teaches a testing set i.e. testing) device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) (i) inputting the testing data to an optimal multi-tasking network having a best performance among the 1-st multi-tasking network to the n-th multi-tasking network, (Gordon, para. 0059: “For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”) and (ii) instructing (Cheng, para. 0041: “ Thus, a module, program, or engine may be instantiated via logic processor 902 executing instructions held by non-volatile storage device 906, using portions of volatile memory 904.”) the optimal multi-tasking network to perform learning operation on the testing data, to thereby output n task results for testing. (Huang, sec. 4.2: “We do not perform ten-fold cross-validation and can not compute the standard deviation of hamming loss in this dataset, because the training set and testing set have been given explicitly (17,927 training images and 12,073 testing images)” Examiner notes Huang teaches a testing set i.e. testing)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Huang into Cheng as modified. Huang teaches a multi-task deep neural network (MT-DNN) architecture to handle the multi-label learning problem, in which each label learning is defined as a binary classification task. One of ordinary skill would have been motivated to combine the teachings of Huang into Cheng as modified in order to achieve better performance (Huang, sec. 4.2).
Regarding claim 8, Cheng teaches:
The method of Claim 7, wherein, at the step (a), the learning device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) has performed processes of (i) generating a mini batch including at least one 1-st training data sampled from the 1-st sub dataset to at least one n-th training data sampled from the n-th sub dataset, (ii) for each of all training data included in the mini batch, wherein all the training data have been generated at the process of (ii) after performing the process of (i), (Gordon, para. 0043: “In such implementations, the training system 100 can employ any appropriate batch updating policy to train the neural networks. For example, the training system 100 can alternate between i) training example batches that include only training examples from the mediator training data set and ii) training example batches that include only training examples from the dedicated training data sets. As another example, the system can use training example batches that include one or more training examples from both the mediator training data set and the dedicated training data set.” Examiner notes the Gordon teaches use of batches less than the entire dataset).
(ii-1) generating a mini batch task loss by averaging each of total task losses on each of all the training data generated in (ii) above, and (ii-2) generating a mini batch consistency loss by averaging each of total consistency losses on each of all the training data, and (iii) training the 1-st multi-tasking network to the n-th multi-tasking network by using the mini batch task loss and the mini batch consistency loss. (Gordon, para. 0059: “Thus, the training of the N neural networks can be parallelized, significantly reducing the time required for training. Furthermore, each task trainer of the distributed training system 200 (e.g., the first task trainer 210) can use different hyperparameters than the other task trainers, allowing for the hyperparameters to be optimized for each respective different machine learning task. For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Huang into Cheng, as modified, as set forth above with respect to claim 7.
Regarding claim 15, Cheng teaches:
A testing device for testing a trained multi-tasking network by using each of datasets having each of task labels corresponding to each of different tasks, the testing device comprising:
a memory storing instructions for testing the trained multi-tasking network by using each of the datasets having each of the task labels corresponding to each of the different tasks; and (Cheng, para. 0041: “Thus, a module, program, or engine may be instantiated via logic processor 902 executing instructions held by non-volatile storage device 906, using portions of volatile memory 904.”)
a processor performing operations for testing the trained multi-tasking network by using each of the datasets having each of the task labels corresponding to each of the different tasks according to the instructions stored in the memory; (Cheng, para. 0029: “The encoder module can also be implemented using different types of network models, such as a convolutional neural network, a recurrent neural network, a transformer, or a sub-network. At step 806, the method includes computing, using a first task head, a first training loss metric based on the extracted features and the first set of labels. At step 808, the method includes computing, using a second task head, a second training loss metric based on the extracted features and the second set of labels. The task heads can be configured to perform different types of inference tasks” Examiner notes Cheng teaches training a network on at least a first and second task each having a first and second set of labels).
wherein the processor performs (I) on condition that a learning device, has performed processes of (i) in response to acquiring specific training data from a main dataset including a 1-st sub dataset having a 1-st task label to an n-th sub dataset having an n-th task label, wherein then is an integer of 2 or more, inputting the specific training data into each of a 1-st multi-tasking network to an n-th multi-tasking network performing each of n tasks to thereby instruct each of the 1-st multitasking network to the n-th multi-tasking network to perform learning operation on the specific training data and thus to output each of n task results for training; and (Cheng, para. 0026 and 0045: “The input data 510 includes facial image data. The encoder 504 is implemented to extract features from the input data 510. The two task heads 506, 508 receive the extracted features as inputs and compute predictions based on their respective inference task.” “In this aspect, additionally or alternatively, the encoder module includes one or more of a convolutional neural network, a recurrent neural network, a transformer, or a sub-network.”)
(ii) calculating a 1-st task loss to an n-th task loss by referring to each of a 1-st specific task result for training to an n-th specific task result for training of the 1-st multi-tasking network to the n-th multi-tasking network for a specific task corresponding to a specific task label included in the specific training data and the specific task label, calculating a 1-st unlabeled consistency loss group comprised of a (1_1)-st unlabeled consistency loss (Gordon, para. 0006: “ For example, the system can process a particular unlabeled training example using the first neural network to generate a first output for the first machine learning task, and can process the particular unlabeled training example using each of the second neural networks to generate respective second outputs for the second machine learning tasks. Using the second outputs and the relationship between outputs of the first neural network and outputs of the second neural networks, the system can generate a target consistency output for the first machine learning task” “The training system 100 includes a training data store 110, N task engines 120a-n, and a consistency loss engine 140.” Examiner notes Gordon teaches consistency loss on labels) to a (1_m)-th unlabeled consistency loss to an n-th unlabeled consistency loss group comprised of a (n_1)-st unlabeled consistency loss to an (n_m)-th unlabeled consistency loss by referring to a (j_k)-th task result and an (x_k)-th task result, while increasing j from 1 ton, and while increasing k from 1 to m for each j, wherein m corresponds to remaining tasks other than the specific task among then tasks, and wherein x corresponds to remaining multi-tasking networks other than any one multitasking network specified by j among the 1-st multi-tasking network to the n-th multi-tasking network, and (iii) training the 1-st multi-tasking network to the n-th multi-tasking network by using (iii-1) a total task loss generated by referring to the 1-st task loss to the n-th task loss and (iii-2) a total consistency loss generated by referring to the 1-st unlabeled consistency loss group comprised of the (1_1)-st unlabeled consistency loss to the (1_m) -th unlabeled consistency loss to the n-th unlabeled consistency loss group comprised of the (n_1)-st unlabeled consistency loss to the (n m)-th unlabeled consistency loss, (Cheng, para. 0024: “In addition to different neural network architectures, multi-task joint training methods can include different implementations of the filtering and masking processes. FIG. 4 is a diagram conceptually illustrating an example process 400 for applying a binary mask to a computed training loss in accordance with an implementation of the present disclosure. As shown, a training loss metric 402 is computed using input data 404 and an associated set of labels 406 for a given task. The training loss metric 402 can be computed by comparing prediction outputs from a task head with the associated set of labels 406. Different functions may be used to calculate the training loss metric. In some implementations, training loss metric 402 is computed using a smooth L1 loss function. The input data 404 includes n data elements, and the set of labels 406 includes n annotations. In the illustrative example, the set of labels 406 is missing at least an annotation associated with the 2nd data element of the input data 404. A mask 408 is computed using the set of labels 406. Different types of masks can be used depending on the application. In the example process 400, the mask 408 is a binary mask. Computation of the mask 408 can be based on how missing annotations are represented in the set of labels 406. In some implementations, the set of labels 406 include random values for missing annotations. Different data representation schemes can be utilized, and the masking process can be modified as appropriate. For example, in the diagram of FIG. 4, the set of labels 406 is zero-padded, having values of zeroes for missing annotations. As such, the set of labels 406 includes a zero value representing the missing annotation for the 2nd data element of the input data 404. In such cases, a binary mask can be computed by passing on the zero-values representing missing annotations. Using the mask 408, the training metric 402 can be filtered to remove training losses resulting from missing annotations. The resulting filtered training loss metric 410 includes training losses for data elements having applicable annotations.” Examiner notes Cheng teaches training a neural network on losses including masking missing annotations when computing loss)
a testing device (Cheng, para. 0032: “In some embodiments, the methods and processes described herein may be tied to a computing system of one or more computing devices.“) acquiring testing data (Huang, sec. 4.2: “We do not perform ten-fold cross-validation and can not compute the standard deviation of hamming loss in this dataset, because the training set and testing set have been given explicitly (17,927 training images and 12,073 testing images)” Examiner notes Huang teaches a testing set i.e. testing) without a task label; and (Cheng, para. 0024: “Computation of the mask 408 can be based on how missing annotations are represented in the set of labels 406. In some implementations, the set of labels 406 include random values for missing annotations”)
(II) the testing device (i) inputting the the testing data (Cheng, para. 0026: “The input data 510 includes facial image data. The encoder 504 is implemented to extract features from the input data 510. The two task heads 506, 508 receive the extracted features as inputs and compute predictions based on their respective inference task.” Examiner notes Cheng teaches input of data) to an optimal multi-tasking network having a best performance among the 1-st multi-tasking network to the n-th multi-tasking network, (Gordon, para. 0059: “For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.” Examiner notes Gordon teaches an optimal multi-tasking network) and (ii) instructing the optimal multi-tasking network to perform learning operation on the testing data (Cheng, para. 0015: “Further, the framework can utilize the multi-headed attention mechanism to enable joint learning on multiple inference tasks.” Examiner notes Cheng teaches performance of a learning operation where Gordon teaches use of testing data), to thereby output n task results for testing. (Cheng, para. 0026 and 0045: “The input data 510 includes facial image data. The encoder 504 is implemented to extract features from the input data 510. The two task heads 506, 508 receive the extracted features as inputs and compute predictions based on their respective inference task.” “In this aspect, additionally or alternatively, the encoder module includes one or more of a convolutional neural network, a recurrent neural network, a transformer, or a sub-network.”)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Huang into Cheng, as modified, as set forth above with respect to claim 7.
Regarding claim 16, Cheng teaches:
The testing device of Claim 15, wherein, at the process (I), the learning device has performed processes of (i) generating a mini batch including at least one 1-st training data sampled from the 1-st sub dataset to at least one n-th training data sampled from the n-th sub dataset, (ii) for each of all training data included in the mini batch, wherein all the training data have been generated at the process of (II) after performing (i), (Gordon, para. 0043: “In such implementations, the training system 100 can employ any appropriate batch updating policy to train the neural networks. For example, the training system 100 can alternate between i) training example batches that include only training examples from the mediator training data set and ii) training example batches that include only training examples from the dedicated training data sets. As another example, the system can use training example batches that include one or more training examples from both the mediator training data set and the dedicated training data set.” Examiner notes the Gordon teaches use of batches less than the entire dataset).
(ii-1) generating a mini batch task loss by averaging each of total task losses on each of all the training data generated in (ii) above, and (ii-2) generating a mini batch consistency loss by averaging each of total consistency losses on each of all the training data, and (iii) training the 1-st multi-tasking network to the n-th multi-tasking network by using the mini batch task loss and the mini batch consistency loss. (Gordon, para. 0059: “Thus, the training of the N neural networks can be parallelized, significantly reducing the time required for training. Furthermore, each task trainer of the distributed training system 200 (e.g., the first task trainer 210) can use different hyperparameters than the other task trainers, allowing for the hyperparameters to be optimized for each respective different machine learning task. For example, each task trainer can automatically tune its own set of hyperparameters during a hyperparameter search phase, identifying an optimal set of hyperparameters for the corresponding machine learning task.”)
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Gordon into Cheng as set forth above with respect to claim 1.
It would have obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Huang into Cheng, as modified, as set forth above with respect to claim 7.
Prior Art
Jacob, et. al. (US 12536791 B2) teaches image processing using a multi-task neural network framework, wherein the multi-task neural network framework is trained using a combination of task specific losses, the task specific losses including a plurality of first losses associated with the multi-task neural network framework and a plurality of second losses associated with a plurality of single-task neural network model.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Sally T. Ley whose telephone number is (571)272-3406. The examiner can normally be reached Monday - Thursday, 10:00am - 6:00pm ET.
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, Viker Lamardo can be reached at (571) 270-5871. 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.
/STL/Examiner, Art Unit 2147
/VIKER A LAMARDO/Supervisory Patent Examiner, Art Unit 2147