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 .
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/ patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/ patents/apply/applying-online/eterminal-disclaimer.
Claims 21-23, 25-27, 29-31, 33-37, and 39 are rejected on the ground of nonstatutory obviousness-type double patenting as being unpatentable over claims 1-3, 5-10, 12-16, and 19 of U.S. Patent US11948075B2 in view of Non-Patent Literature “Vector Quantization of LSP Parameters Using Moving Average Interframe Prediction” (“Ohmuro, et al.”). The claims of the instant application and the claims of the reference patent are compared in the table below.
Instant application 18623952
US11948075B2
21. A method of training an encoder neural network and a decoder neural network and of updating a set of latent embedding vectors stored in a memory, wherein:
the encoder neural network is configured to receive an input data item and process the input data item in accordance with a set of encoder network parameters to: generate an encoder output that comprises, for each of one more latent variables, a respective encoded vector;
the decoder neural network is configured to receive a decoder input derived from a discrete latent representation of the input data item that is generated from the encoded vectors and the set of latent embedding vectors and process the decoder input in accordance with a set of decoder network parameters to: generate a reconstruction of the input data item, and the method comprises:
receiving a training data item;
processing the training data item through the encoder neural network in accordance with current values of the encoder network parameters of the encoder neural network to generate a training encoder output that comprises, for each of the one more latent variables, a respective training encoded vector;
selecting, for each latent variable and from a plurality of current latent embedding vectors currently stored in the memory, a current latent embedding vector that is nearest to the training encoded vector for the latent variable;
generating a training decoder input that includes the nearest current latent embedding vectors;
processing the training decoder input through the decoder neural network in accordance with current values of the decoder network parameters of the decoder neural network to generate a training reconstruction of the training data item;
determining a reconstruction update to the current values of the decoder network parameters and the encoder network parameters by determining a gradient with respect to the current values of the decoder network parameters and the encoder network parameters to optimize a reconstruction error between the training reconstruction and the training data item;
and determining an update to the current latent embedding vectors as a function of moving averages of training encoded vectors in training encoder outputs generated during the training.
1. A method of training an encoder neural network and a decoder neural network and of updating a set of latent embedding vectors stored in a memory, wherein:
the encoder neural network is configured to receive an input data item and process the input data item in accordance with a set of encoder network parameters to: generate an encoder output that comprises, for each of one more latent variables, a respective encoded vector;
the decoder neural network is configured to: receive a decoder input derived from a discrete latent representation of the input data item that is generated from the encoded vectors and the set of latent embedding vectors and process the decoder input in accordance with a set of decoder network parameters to: generate a reconstruction of the input data item, and the method comprises:
receiving a training data item;
processing the training data item through the encoder neural network in accordance with current values of the encoder network parameters of the encoder neural network to generate a training encoder output that comprises, for each of the one more latent variables, a respective training encoded vector;
selecting, for each latent variable and from a plurality of current latent embedding vectors currently stored in the memory, a current latent embedding vector that is nearest to the training encoded vector for the latent variable;
generating a training decoder input that includes the nearest current latent embedding vectors;
processing the training decoder input through the decoder neural network in accordance with current values of the decoder network parameters of the decoder neural network to generate a training reconstruction of the training data item;
determining a reconstruction update to the current values of the decoder network parameters and the encoder network parameters by determining a gradient with respect to the current values of the decoder network parameters and the encoder network parameters to optimize a reconstruction error between the training reconstruction and the training data item;
22. The method of claim 21, further comprising: for each latent variable, determining a respective commitment update to the current values of the encoder network parameters by determining a gradient with respect to the current values of the encoder network parameters to minimize a commitment loss between the training encoded vector for the latent variable and the nearest current latent embedding vector to the training encoded vector for the latent variable.
2. The method of claim 1, further comprising:
for each latent variable, determining a respective commitment update to the current values of the encoder network parameters by determining a gradient with respect to the current values of the encoder network parameters to minimize a commitment loss between the training encoded vector for the latent variable and the nearest current latent embedding vector to the training encoded vector for the latent variable.
23. The method of claim 22, wherein the commitment loss is a constant multiplied by a square of an l2 error between the training encoded vector for the latent variable and a stop gradient of the nearest current latent embedding vector to the training encoded vector.
3. The method of claim 2, wherein the commitment loss is a constant multiplied by a square of an l2 error between the training encoded vector for the latent variable and a stop gradient of the nearest current latent embedding vector to the training encoded vector.
25. The method of claim 21, wherein determining the gradient with respect to the current values of the encoder network parameters comprises: copying gradients from the decoder input to the encoder output without updating the current latent embedding vectors.
5. The method of claim 1, wherein determining the gradient with respect to the current values of the encoder network parameters comprises: copying gradients from the decoder input to the encoder output without updating the current latent embedding vectors.
26. The method of claim 21, wherein determining the gradient with respect to the current values of the encoder network parameters comprises: determining a subgradient through the selecting the nearest current latent embedding vector; and using the subgradient to determine the gradient with respect to the current values of the encoder network parameters.
6. The method of claim 1, wherein determining the gradient with respect to the current values of the encoder network parameters comprises: determining a subgradient through the selecting the nearest current latent embedding vector; and using the subgradient to determine the gradient with respect to the current values of the encoder network parameters.
27. The method of claim 21, wherein the input data item is an image or a video.
7. The method of claim 1, wherein the input data item is an image or a video.
29. A system comprising one or more computers and one or more storage devices storing instructions that when executed by the one or more computers cause the one or more computers to perform operations for training an encoder neural network and a decoder neural network and of updating a set of latent embedding vectors stored in a memory, wherein:
Rest of the limitations are the same as claim 21
8. A system comprising one or more computers and one or more storage devices storing instructions that when executed by the one or more computers cause the one or more computers to perform operations for training an encoder neural network and a decoder neural network and of updating a set of latent embedding vectors stored in a memory, wherein:
Rest of the limitations are the same as claim 1
30. this claim is the same as claim 22
9. this claim is the same as claim 2
31. this claim is the same as claim 23
10. this claim is the same as claim 3
33. this claim is the same as claim 25
12. this claim is the same as claim 5
34. this claim is the same as claim 26
13. this claim is the same as claim 6
35. this claim is the same as claim 27
14. this claim is the same as claim 7
36. One or more non-transitory computer-readable storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations for training an encoder neural network and a decoder neural network and of updating a set of latent embedding vectors stored in a memory, wherein:
Rest of the limitations are the same as claim 21
15. One or more non-transitory computer-readable storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations for training an encoder neural network and a decoder neural network and of updating a set of latent embedding vectors stored in a memory, wherein:
Rest of the limitations are the same as claim 1
37. this claim is the same as claim 22
16. this claim is the same as claim 2
39. this claim is the same as claim 25
19. this claim is the same as claim 5
Regarding claim 21, claim 1 of the reference patent US11948075B2 recites all of the limitations of claim 21 of the instant application except and determining an update to the current latent embedding vectors as a function of moving averages of training encoded vectors in training encoder outputs generated during the training.
However, Ohmuro, et al. teaches and determining an update to the current latent embedding vectors as a function of moving averages of training encoded vectors in training encoder outputs generated during the training. (Ohmuro, pg. 14 col. 2 and see Figure 2, “Figure 2 shows the training flowchart. The generalized Lloyd algorithm [23] is used in the training of the codebook [and determining an update to the current latent embedding vectors]. The codebook designed for two-stage vector quantization without interframe prediction is used as the initial value for the codebook. The generalized Lloyd algorithm is a method to iterate the following two procedures until convergence is reached. One is to encode the training data and to determine which code vector should be selected in each frame [in training encoder outputs generated during the training.]. The other is to determine the optimal codebook (centroids); Figure 2 shows that the moving average (MA) is part of the update process of the codebooks (i.e. as a function of moving averages of training encoded vectors).”).
It would have been obvious to person of ordinary skill in the art before the effective filing date of the claimed invention to combine the reference patent and Ohmuro to teach the above limitation(s). The motivation for doing so is that using moving averages in vector quantization reduces the computational complexity and memory requirements (cf. Ohmuro, pg. 12-13, “A problem with VQ, however, is that the codebook size and computational complexity required in the search of the codebook in-creases exponentially, with an increase of the quantization bits. The methods that have been proposed to date to reduce computational complexity and memory requirements while minimizing the quality deterioration, have taken the forementioned into account.”).
Regarding claim 22, claim 2 of the reference patent recites the same limitations as claim 22 of the instant application.
Regarding claim 23, claim 3 of the reference patent recites the same limitations as claim 23 of the instant application.
Regarding claim 25, claim 5 of the reference patent recites the same limitations as claim 25 of the instant application.
Regarding claim 26, claim 6 of the reference patent recites the same limitations as claim 26 of the instant application.
Regarding claim 27, claim 7 of the reference patent recites the same limitations as claim 27 of the instant application.
Regarding claim 29, the claim is similar to claim 21 and rejected under the same rationales with the difference being claim 8 of the reference patent recites the same limitations as claim 29.
Regarding claims 30-31 and 33-35, the claims are similar to claims 22-23 and 25-27 and rejected under the same rationales. See table above for reference patent claim matching.
Regarding claim 36, the claim is similar to claim 21 and rejected under the same rationales with the difference being claim 15 of the reference patent recites the same limitations as claim 36.
Regarding claims 37 and 39, the claims are similar to claims 22 and 25 and rejected under the same rationales. See table above for the reference patent claim matching.
Allowable Subject Matter
Claims 21-39 are allowable over the prior art and would be allowable if rewritten or amended to overcome the rejections under double patenting set forth in this Office Action.
The following is a statement of reasons for indication of allowable subject matter:
Below are the closest cited references, each of which disclose various aspects of claim 21:
Krishnamurthy, et al., “Neural Networks for Vector Quantization of Speech and Images” discloses a system that implements the use of vector quantization for neural networks in speech and image applications. The system includes a vector quantization codebook that stores weights of a neural network as codewords in the codebook for easier retrieval and parallel processing through a winner takes all design. While Krishnamurthy teaches using vector quantization for neural networks, Krishnamurthy does not explicitly teach the use of encoder and decoder neural networks as well as a codebook being used to store embedding vectors to be used by a decoder for reconstruction training.
Agustsson, et al., “Soft-to-Hard Vector Quantization for End-to-End Learning Compressible Representations” discloses a system that uses vector quantization, entropy, and annealing to learn discrete representations using neural networks. The system uses soft assignments on feature vectors during training and as the training progresses, anneals the soft assignments to hard assignments to improve the training process. While Agustsson teaches the use of vector quantization on features within a neural network, Agustsson does not explicitly teach the use of encoder and decoder neural networks as well as a codebook being used to store embedding vectors to be used by a decoder for reconstruction training.
Grave, et al., “Improving Neural Language Models with a Continuous Cache” discloses a system that uses an external memory to store previously computed parameters for a neural network. The system is based on a memory augmented neural network that stores the past activation values for use in the current training iteration to reduce processing time. While Grave teaches a method of storing neural network parameters for future use, Graves does not explicitly teach a encoder-decoder neural network that stores embedding vectors to be used in a reconstruction task. Additionally, Graves does not explicitly teach a nearness metric between a embedding vector in storage and a current encoded vector.
Chen, et al., “Variational Lossy Autoencoder” discloses a system that modifiers a basic variational autoencoder to compress the latent space to reduce the overall complexity of the learning. The system implements a lossy compression on the encoded latent space by dropping irrelevant or minor values and instead tries to generalize the larger latent structures. While Chen teaches the use of a encoder and decoder neural network architecture by using a variational autoencoder, Chen does not explicitly teach storing embedding vectors in memory let alone comparing current encoded vectors to stored embedding vectors by nearness.
Choi, et al., US20180107926A1 discloses a system that uses vector quantization on a neural network architecture to compression the network parameters thus reducing the processing power required by the network. The system clusters network parameters into groups and then maps these group parameter clusters to binary clusters within a codebook. During inference, the network calls on the binary reduced versions of the network parameters to reduce the computation required to run the network. While Choi teaches the use of a codebook and vector quantization, Choi does not explicitly teach the encoder-decoder neural networks as claimed in claim 21 or that the codebook stores embedding vectors. Also, Choi does not explicitly teach that a embedding vector from a memory/codebook is compared to a encoded vector for nearness.
While the above prior arts disclose the aforementioned concepts, however, none of the prior arts, individually or in reasonable combination, discloses all the limitations in the manner recited in independent claim 21. Therefore, claim 21 is allowable over prior art since the prior art taken individually or in combination fails to particularly disclose, fairly suggest, or render obvious the following limitations:
“ receiving a training data item; processing the training data item through the encoder neural network in accordance with current values of the encoder network parameters of the encoder neural network to generate a training encoder output that comprises, for each of the one more latent variables, a respective training encoded vector; selecting, for each latent variable and from a plurality of current latent embedding vectors currently stored in the memory, a current latent embedding vector that is nearest to the training encoded vector for the latent variable; generating a training decoder input that includes the nearest current latent embedding vectors; processing the training decoder input through the decoder neural network in accordance with current values of the decoder network parameters of the decoder neural network to generate a training reconstruction of the training data item; determining a reconstruction update to the current values of the decoder network parameters and the encoder network parameters by determining a gradient with respect to the current values of the decoder network parameters and the encoder network parameters to optimize a reconstruction error between the training reconstruction and the training data item;”
Therefore, the above limitation renders the above independent claim allowable over prior art. Thus, independent claim 21 is considered allowable over prior art, and the dependent claims 22-28 are also considered allowable over the prior art at least by virtue of their dependence. Claims 29-39 are allowable over prior art for the same reasons as claims 21-28.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Hinton, et al., “Reducing the Dimensionality of Data with Neural Networks” introduces an autoencoder used for dimensionality reduction.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to NICHOLAS S WU whose telephone number is (571)270-0939. The examiner can normally be reached Monday - Friday 8:00 am - 4:00 pm EST.
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, Michelle Bechtold can be reached at 571-431-0762. 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.
/N.S.W./Examiner, Art Unit 2148 /MICHELLE T BECHTOLD/Supervisory Patent Examiner, Art Unit 2148