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 .
The instant application having Application No. 19/484,747 filed on 11/14/2025 is presented for examination by the Examiner. Claims 1-20 are currently pending in the present application.
Priority
As required by M.P.E.P. 201.14(c), acknowledgement is made of Applicant's claim for priority as a 371 of PCT/US2024/029991 filed on 5/17/2024 which has a Provisional Application 63/502,912 filed on 5/17/2023.
Drawings
The Applicant's drawings filed on 11/14/2025 are acceptable for examination purpose.
Information Disclosure Statement
As required by M.P.E.P. 609, the Applicant's submission of the Information Disclosure Statement dated 1/30/2026 is acknowledged by the Examiner and the cited references have been considered in the examination of the claims now pending.
Abstract Objection
The abstract of the disclosure is objected to because it should be in narrative form and generally limited to a single paragraph on a separate sheet within the range of 50 to 150 words. Correction is respectfully required. See MPEP § 608.01(b).
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.
As per claims 1, 11 and 16; the claims recite “determining one or more nearest neighbor data points for the query using the data” which renders the claims indefinite. The claims provide no guidance as how the step “determining” is to be accomplished; and how “the data” is being used to determine the one or more nearest neighbor data points as such. Clarification or correction is respectfully required.
Note, the dependent claims are also rejected because they depend on and/or do not remedy the deficiencies inherited by their parent claims.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
As per claim 1, the claim recites “A computer-implemented method for performing a nearest neighbor search procedure, the method comprising:
receiving a query for one or more nearest neighbor data points to a requested data point from a dataset of a plurality of data points;
maintaining data representing a codebook, wherein the codebook is associated with a first set of vector quantization assignments and a second set of vector quantization assignments, wherein the codebook comprises a plurality of centers and each center represents a different partition of the dataset of a plurality of data points, wherein the first set of vector quantization assignments assigns each data point to an index of a closest center of the plurality of centers and the second set of vector quantization assignments assigns each data point to an index of another center of the plurality of centers; and
determining one or more nearest neighbor data points for the query using the data”.
Step 1: Statutory Category
Claim 1 discloses a method which is a process within the meaning of the section.
Step 2A - Prong One: Judicial Exception Recited
The claim recites the limitation “determining” which specifically recites “determining one or more nearest neighbor data points for the query using the data”. This limitation is process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind, but for the recitation of generic computer components. That is, nothing in the claim element precludes the steps from practically being performed in a human mind or with the aid of pen or paper. For example, “determining” in the context of this claim encompasses a user mentally, and with the aid of pen and paper looking at information and/or characteristics of data and examining to identify or determine the relevant or desired data.
If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
Step 2A - Prong Two: Integrated into a Practical Application
The claim recites the additional elements “receiving a query…” and “maintaining data representing a codebook…”. The judicial exception is not integrated into a practical application. In particular, the additional steps: the “receiving” step mounts to data gathering which is considered to be insignificant extra-solution activity (see MPEP 2106.05(g)), and the “maintaining” step is considered as a mere instruction to apply an exception to perform an existing process on a generic computer and/or no more than an idea of a solution or outcome on a generic computer (see MPEP 2106.05(f)). Accordingly, the additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea, thus fail to integrate the abstract idea into a practical application. See MPEP 2106.05(g).
Step 2B: Claim provides an Inventive Concept
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The insignificant extra-solution activities identified above, which include the data-gathering and the step of “maintaining” is recognized by the courts as well-understood, routine, and conventional activities when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity (see MPEP 2106.05(d)(II)). For these reasons, there is no inventive concept in the claim, and thus it is ineligible.
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional element of performing the “maintaining” step amounts to no more than mere instructions to apply the exception using a generic computer component. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept.
The claim as a whole, does not amount to significantly more than the abstract idea itself. This is because the claim does not affect an improvement to the functioning of a computer itself; and the claim does not move beyond a general link of the use of an abstract idea to a particular technological environment.
Accordingly, claim 1 is directed to an abstract idea.
As per claim 2, the claim recites “The method of claim 1, further comprising:
generating the codebook of centers by applying vector quantization to the dataset of the plurality of data points; and
for each data point of the dataset of the plurality of data points, generating the vector quantization assignment of the first set of quantization assignments for the data point, wherein the data point is assigned to an index of a closest center of the plurality of centers for the codebook”. The judicial exception is not integrated into a practical application. In particular, these additional limitations mount to data gathering which is considered to be insignificant extra-solution activity (see MPEP 2106.05(g)), and do not amount to significantly more than the above-identified judicial exception.
As per claim 3, the claim recites “The method of claim 2, further comprising generating the second set of vector quantization assignments by, for each data point of the dataset:
calculating a first partitioning residual that measures a distance between the data point and the closest center assigned to the data point by the first set of vector quantization assignments; as the judicial exception is not integrated into a practical application. In particular, this additional limitation covers mathematical concepts which consider as an abstract idea.
determining, from the plurality of centers for the codebook, a loss minimizing center for the data point by minimizing a loss function that is based on the first partitioning residual for the data point; and as the judicial exception is not integrated into a practical application. In particular, this additional limitation has been discussed above with respect to the abstract idea (i.e., “Mental Processes”) and does not amount to significantly more than the above-identified judicial exception.
assigning the data point to an index of the loss minimizing center” as the judicial exception is not integrated into a practical application. In particular, this additional limitation amounts to no more than mere instructions to apply an exception to perform an existing process on a generic computer (MPEP 2106.05(f)), and mere instructions to apply an exception using a generic computer do not amount to significantly more.
As per claim 4, the claim recites “The method of claim 3, wherein the loss function is an orthogonality amplified residual loss based on the first partitioning residual”. The judicial exception is not integrated into a practical application. In particular, this additional limitation amounts to no more than mere instructions to apply an exception to perform an existing process on a generic computer (MPEP 2106.05(f)), and mere instructions to apply an exception using a generic computer do not amount to significantly more.
As per claim 5, the claim recites “The method of claim 4, wherein the orthogonality amplified residual loss measures an expected squared inner product between the requested data point and a second partitioning residual, wherein the second partitioning residual is weighted by a value based on a cosine of an angle between the requested data point and the first partitioning residual”. The judicial exception is not integrated into a practical application. In particular, this additional limitation covers mathematical concepts which consider as an abstract idea.
As per claim 6, the claim recites “The method of claim 3, wherein determining the loss minimizing center for the data point further comprises:
for each center of the plurality of centers:
calculating a squared distance from the data point to the center;
determining a penalty term that penalizes the center for parallelism between (i) the first partitioning residual and (ii) a second partitioning residual that measures a distance between the data point and the center; and
determining an adjusted squared distance using the squared distance and the penalty term; and
determining the loss minimizing center for the data point by selecting a center having a minimum adjusted squared distance”. The judicial exception is not integrated into a practical application. In particular, the additional limitation of “calculating” covers mathematical concepts which consider as an abstract idea; and the additional limitations of “determining” have been discussed above with respect to the abstract idea (i.e., “Mental Processes”) and do not amount to significantly more than the above-identified judicial exception.
As per claim 7, the claim recites “The method of claim 1, wherein determining the one or more nearest neighbor data points for the query using the data further comprises:
determining a candidate set of nearest neighbor data points using the first set of quantization assignments and the second set of quantization assignments;
performing a maximum inner product operation on the candidate set of nearest neighbor data points to identify k nearest data points among the candidate set of data points; and
outputting the k nearest data points as the one or more nearest neighbor data points”. The judicial exception is not integrated into a practical application. In particular, the additional limitation of “determining” have been discussed above with respect to the abstract idea (i.e., “Mental Processes”) and does not amount to significantly more than the above-identified judicial exception; and the additional limitations of “performing” and “outputting” amount to no more than mere instructions to apply an exception to perform an existing process on a generic computer (MPEP 2106.05(f)), and mere instructions to apply an exception using a generic computer do not amount to significantly more.
As per claim 8, the claim recites “The method of claim 7, further comprising: prior to performing the maximum inner product operation, removing duplicate data points in the candidate set of nearest neighbor data points”. The judicial exception is not integrated into a practical application. In particular, this additional limitation amounts to no more than mere instructions to apply an exception to perform an existing process on a generic computer (MPEP 2106.05(f)), and mere instructions to apply an exception using a generic computer do not amount to significantly more.
As per claim 9, the claim recites “The method of claim 7, wherein the maintained data identifies, for each center, each data point assigned to the center by the first set of assignments and each data point assigned to the center by the second set of assignments, and wherein determining a candidate set of nearest neighbor data points using the first set of quantization assignments and the second set of quantization assignments comprises:
performing a maximum inner product operation on the plurality of centers to identify one or more centers that are nearest to the requested data point; and
identifying, as the candidate set of nearest neighbor data points, the data points assigned to each of the one or more identified centers by the first set of assignments and by the second set of assignments”. The judicial exception is not integrated into a practical application. In particular, the additional limitation of “performing” amounts to no more than mere instructions to apply an exception to perform an existing process on a generic computer (MPEP 2106.05(f)), and mere instructions to apply an exception using a generic computer do not amount to significantly more; and the additional limitation of “identifying” had been discussed above with respect to the abstract idea (i.e., “Mental Processes”) and does not amount to significantly more than the above-identified judicial exception.
As per claim 10, the claim recites “The method of claim 1 wherein the first set of vector quantization assignments are non-spilled assignments, and wherein the second set of vector quantization assignments are spilled assignments”. The judicial exception is not integrated into a practical application. In particular, this additional limitation amounts to no more than mere instructions to apply an exception to perform an existing process on a generic computer (MPEP 2106.05(f)), and mere instructions to apply an exception using a generic computer do not amount to significantly more.
As per claim 11, the claim recites “A system comprising: one or more computers; and one or more storage devices communicatively coupled to the one or more computers, wherein the one or more storage devices store instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising:” the limitations similar to the claim 1.
Step 1: Statutory Category
Claim 11 discloses a system which is a machine within the meaning of the section.
Step 2A – Prong One: Judicial Exception Recited
The claim recites the limitations as same as claim 1, and therefore are interpreted as an abstract idea under the same premise as claim 1.
Step 2A – Prong Two: Integrated into a Practical Application
The claim recites additional elements as same as claim 1, and therefore are interpreted as an abstract idea under the same premise as claim 1.
Step 2B: Claim provides an Inventive Concept
The claim recites the limitations as same as claim 1, and therefore is considered under the same premise as claim 1 as no inventive concept in the claim, and thus it is ineligible.
As per claims 12-15, the claims are rejected under the same premises as the claims 2-5 respectively.
As per claim 16, the claim recites “One or more non-transitory computer storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:” the limitations similar to claim 1.
Step 1: Statutory Category
Claim 16 discloses one or more non-transitory computer storage media which is a manufacture within the meaning of the section.
Step 2A – Prong One: Judicial Exception Recited
The claim recites the limitations as same as claim 1, and therefore are interpreted as an abstract idea under the same premise as claim 1.
Step 2A – Prong Two: Integrated into a Practical Application
The claim recites additional elements as same as claim 1, and therefore are interpreted as an abstract idea under the same premise as claim 1.
Step 2B: Claim provides an Inventive Concept
The claim recites the limitations as same as claim 1, and therefore is considered under the same premise as claim 1 as no inventive concept in the claim, and thus it is ineligible.
As per claims 17-20, the claims are rejected under the same premises as the claims 2-5 respectively.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-7 and 11-20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Chen et al. (“Approximate Nearest Neighbor Search by Residual Vector Quantization”, 2010-12-08, Pages 11259-11273, see attached IDS).
As per claim 1, Chen et al. discloses A computer-implemented method for performing a nearest neighbor search procedure, as (see e.g., Abstract) the method comprising:
receiving a query for one or more nearest neighbor data points to a requested data point from a dataset of a plurality of data points; as (see e.g., Abstract: as “Euclidean distance between query vector and database vector is approximated”, as a query vector is received).
maintaining data representing a codebook, wherein the codebook is associated with a first set of vector quantization assignments and a second set of vector quantization assignments, as (see e.g., Section 2. Residual Vector Quantization, and Fig. 1: as a codebook associated with a first stage-quantizer Q1 and a second stage-quantizer Q2) wherein the codebook comprises a plurality of centers and each center represents a different partition of the dataset of a plurality of data points, as (see e.g., Section 2. Residual Vector Quantization: as “A K-point vector quantizer Q maps a vector into its nearest centroidin codebook”) wherein the first set of vector quantization assignments assigns each data point to an index of a closest center of the plurality of centers as (see e.g., Section 2. Residual Vector Quantization: as “A K-point vector quantizer Q maps a vector into its nearest centroidin codebook” in combination with the Fig. 1 disclose this feature because the first stage-quantizer Q1 assigns each data point “into its nearest centroidin codebook”) and the second set of vector quantization assignments assigns each data point to an index of another center of the plurality of centers; and as (see e.g., Section 2. Residual Vector Quantization: as “A K-point vector quantizer Q maps a vector into its nearest centroidin codebook" in combination with the Fig. 1 disclose this feature because the first stage-quantizer Q2 assigns each data point “into its nearest centroidin codebook”).
determining one or more nearest neighbor data points for the query using the data, as (see e.g., Section 3. Using Residual Vector Quantization for ANN).
As per claim 2, Chen et al. discloses The method of claim 1, further comprising: generating the codebook of centers by applying vector quantization to the dataset of the plurality of data points; and for each data point of the dataset of the plurality of data points, generating the vector quantization assignment of the first set of quantization assignments for the data point, wherein the data point is assigned to an index of a closest center of the plurality of centers for the codebook, as (see e.g., Section 2. Residual Vector Quantization).
As per claim 3, Chen et al. discloses The method of claim 2, further comprising generating the second set of vector quantization assignments by, for each data point of the dataset: calculating a first partitioning residual that measures a distance between the data point and the closest center assigned to the data point by the first set of vector quantization assignments; determining, from the plurality of centers for the codebook, a loss minimizing center for the data point by minimizing a loss function that is based on the first partitioning residual for the data point; and assigning the data point to an index of the loss minimizing center, as (see e.g., Section 2. Residual Vector Quantization: as calculating the residuals and the other features only disclose further details of a mathematical method).
As per claim 4, Chen et al. discloses The method of claim 3, wherein the loss function is an orthogonality amplified residual loss based on the first partitioning residual, as (see e.g., Section 2. Residual Vector Quantization: as calculating the residuals and the other features only disclose further details of a mathematical method).
As per claim 5, Chen et al. discloses The method of claim 4, wherein the orthogonality amplified residual loss measures an expected squared inner product between the requested data point and a second partitioning residual, wherein the second partitioning residual is weighted by a value based on a cosine of an angle between the requested data point and the first partitioning residual, as (see e.g., Section 2. Residual Vector Quantization: as calculating the residuals and the other features only disclose further details of a mathematical method).
As per claim 6, Chen et al. discloses The method of claim 3, wherein determining the loss minimizing center for the data point further comprises:
for each center of the plurality of centers: calculating a squared distance from the data point to the center; determining a penalty term that penalizes the center for parallelism between (i) the first partitioning residual and (ii) a second partitioning residual that measures a distance between the data point and the center; and determining an adjusted squared distance using the squared distance and the penalty term; and determining the loss minimizing center for the data point by selecting a center having a minimum adjusted squared distance, as (see e.g., Section 2. Residual Vector Quantization: as calculating the residuals and the other features only disclose further details of a mathematical method).
As per claim 7, Chen et al. discloses The method of claim 1, wherein determining the one or more nearest neighbor data points for the query using the data further comprises:
determining a candidate set of nearest neighbor data points using the first set of quantization assignments and the second set of quantization assignments; performing a maximum inner product operation on the candidate set of nearest neighbor data points to identify k nearest data points among the candidate set of data points; and outputting the k nearest data points as the one or more nearest neighbor data points, as (see e.g., Section 3.1. Exhaustive Search by Fast Distance Computation; and Section 3.2. Non-Exhaustive Search by Rough Approximation).
As per claims 11 and 16, the claims are rejected under the same premise as the claim 1.
As per claims 12 and 17, the claims are rejected under the same premise as the claim 2.
As per claims 13 and 18, the claims are rejected under the same premise as the claim 3.
As per claims 14 and 19, the claims are rejected under the same premise as the claim 4.
As per claims 15 and 20, the claims are rejected under the same premise as the claim 5.
Claim Rejections - 35 USC § 103
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.
Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over Chen et al., and further in view of Hamid (US 11,341,185 B1).
As per claim 8, Hamid discloses The method of claim 7, further comprising: prior to performing the maximum inner product operation, removing duplicate data points in the candidate set of nearest neighbor data points, which is not explicitly disclosed by Chen et al., as (Hamid, see e.g., Col. 2 lines 16-27 and Col. 4 lines 2-18).
Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing data of the claimed invention to modify the Chen et al. invention to include techniques of indexing scheme for a specific large-scale context that balances search accuracy, search speed, and index size, as taught by Hamid, for the benefit of focusing on reducing the compute requirements.
Claims 9 and 10 is rejected under 35 U.S.C. 103 as being unpatentable over Chen et al., and further in view of Yang et al. (US 8,422,802 B2).
As per claim 9, Yang et al. discloses The method of claim 7, wherein the maintained data identifies, for each center, each data point assigned to the center by the first set of assignments and each data point assigned to the center by the second set of assignments, and wherein determining a candidate set of nearest neighbor data points using the first set of quantization assignments and the second set of quantization assignments comprises:
performing a maximum inner product operation on the plurality of centers to identify one or more centers that are nearest to the requested data point; and identifying, as the candidate set of nearest neighbor data points, the data points assigned to each of the one or more identified centers by the first set of assignments and by the second set of assignments, which is not explicitly disclosed by Chen et al., as (Yang et al., see e.g., Abstract, Col. 2 lines 34-47; and Figs. 2A-2D).
Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing data of the claimed invention to modify the Chen et al. invention to include techniques for construction of a visual codebook, as taught by Yang et al., for the benefit of performing an approximate nearest neighbor search.
As per claim 10, Yang et al. discloses The method of claim 1 wherein the first set of vector quantization assignments are non-spilled assignments, and wherein the second set of vector quantization assignments are spilled assignments, which is not explicitly disclosed by Chen et al., as (Yang et al., see e.g., Col. 2 lines 34-47; and Figs. 2A-2D).
Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing data of the claimed invention to modify the Chen et al. invention to include techniques for construction of a visual codebook, as taught by Yang et al., for the benefit of performing an approximate nearest neighbor search.
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Bai D. Vu whose telephone number is (571) 270-1751. The examiner can normally be reached 9:00 - 5:30.
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, Tony Mahmoudi can be reached at (571) 272-4078. 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.
/BAI D VU/Primary Examiner, Art Unit 2163 10/2/2026