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 .
Acknowledgments
This submission filed on 08/21/25 is acknowledged.
Status of Claims
Claims 1-20 are pending.
In the Amendment filed on 08/21/25, claims 1, 3 and 11-18 were amended, and no claims were cancelled or added.
Claims 1-20 are rejected.
Response to Arguments
Regarding the claim objections
In view of the claim amendments, the objections to claims 3 and 18 are withdrawn. The objections to claims 4 and 19 were not addressed in the Applicant's Response and accordingly remain outstanding. In addition, the claim amendments give rise to new rejections.
Regarding the rejections under 35 U.S.C. 112
In view of the claim amendments, the previous rejections under 35 U.S.C. 112 are withdrawn. However, the claim amendments give rise to new rejections under 35 U.S.C. 112.
Regarding the rejection under 35 U.S.C. 101
Applicant presents no substantive argument but refers to the amended claim language. See Response, p. 9.
As for the amended claim language, it is entirely abstract idea content, except for the machine learning module (of the device) and the processing unit, which are generic computer elements recited at a high level of generality. As such, the claims merely recite an abstract idea applied using generic computer components and generally linked to a particular technological environment or field of use.
Regarding the rejections under 35 U.S.C. 102 and 103
Applicant's arguments have been fully considered but are not persuasive or are moot in view of the new combination of references currently being used in the rejections.
The amended claim language is taught by newly cited references Boehmke and Zou, in combination with pre-existing reference Gaur.
As for the filtering step (see Applicant's argument at Response, p. 12), Gaur teaches this, as per the rejection hereinbelow, e.g., 0030, where filtering is taught by "selectively determining"; the probability of acceptance is taught by "a probability that one or more lenders will approve and/or purchase the loan information … The probability may describe a likelihood of the loan information approved and/or bought by the one or more lenders … a probability for any of one or more loans that one or more lenders will approve"; and a minimum probability of acceptance is taught by "probability threshold."
Claim Objections
Claims 1, 4, 11, 17 and 19 are objected to because of the following informalities:
A) Claims 1, 11 and 17 recite:
creating an initial set of binary trees for each inputs from the financial data and the customer profile, wherein each of the initial set of binary trees provide an output for a corresponding input,
The language underlined above represents grammatical errors: "each" is singular but the associated noun or verb ("input"; "provide") is plural. The grammatically correct form is, e.g., "each … provides."
B) Claims 1, 11 and 17 further recite:
determining, based on comparison, an error between the outputs from the initial set of binary trees and the historical data,
The language underlined above represents a grammatical error: "comparison" requires an article ("the" or "a"). For proper antecedent basis "comparison" should be preceded by "the."
C) Claims 1, 11 and 17 further recite:
creating a next set of binary trees in response to determining that the error between the outputs from the initial set of binary trees and the historical data is greater than a predetermine value,
The language underlined above appears to include a clerical/typographical error: "a predetermine value" does not make sense. As best understood, "predetermine" should be changed to "predetermined."
D) Claims 1, 11 and 17 further recite:
and wherein each of the next set of binary trees provide a next output for the corresponding input, and
The language underlined above represents a grammatical error: "each" is singular but the associated verb ("provide") is plural. The grammatically correct form is "each … provides."
E) Claims 1, 11 and 17 further recite:
repeating creating the next set of binary tress until the error between the outputs from a previous set of binary trees and the historical data is greater than the predetermine value;
The language underlined above appears to include clerical/typographical errors: "tress" does not make senses in context. As best understood, "tress" should be changed to "trees." In addition, "a predetermine value" does not make sense. As best understood, "predetermine" should be changed to "predetermined."
F) Claim 4 recites:
training the second machine learning module based on historical loan application approval data to predict the buy lending, the historical loan application approval data comprising a list of accepted loan applications, a buy lending rate for each of the accepted loan applications, the customer profile for each of the accepted loan applications, and the financial data for each of the accepted loan applications.
The language underlined above appears to include a clerical/typographical error. As best understood, "buy lending" should be changed to "buy lending rate" consistent with corresponding claim 14.
G) Claim 19 recites:
training the first machine learning module based on historical loan application approval data to predict the probability of acceptance, the historical loan application approval data comprising a list of approved/disapproved loan applications, the customer profile associated with each of the approved/ disapproved loan application, the vehicle data associated with each of the approved/disapproved loan applications, and the financial data associated with each of the approved/disapproved.
The language underlined above appears to include a clerical/typographical error. As best understood, "each of the approved/disapproved loan application" should be changed to "each of the approved/disapproved loan applications," and "each of the approved/disapproved" should be changed to "each of the approved/disapproved loan applications," consistent with the rest of the claim.
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 pre-AIA the applicant regards as the invention.
Lack of Antecedent Basis
Claims 1, 11 and 17 recite:
creating an initial set of binary trees for each inputs from the financial data and the customer profile, wherein each of the initial set of binary trees provide an output for a corresponding input,
The underlined language, "each inputs" is equivalent to "each of the inputs." However, no such inputs have previously been recited. Therefore, there is insufficient antecedent basis for this phrase. It is suggested to amend "each inputs" to "respective inputs" to correct the problem, but other solutions are possible.
Claims 2-10, 12-16 and 18-20 are rejected by virtue of their dependency from a rejected claim.
Unclear Scope
Claims 1, 11 and 17 recite:
creating an initial set of binary trees for each inputs from the financial data and the customer profile, wherein each of the initial set of binary trees provide an output for a corresponding input,
determining, based on comparison, an error between the outputs from the initial set of binary trees and the historical data,
creating a next set of binary trees in response to determining that the error between the outputs from the initial set of binary trees and the historical data is greater than a predetermine value, wherein the next set of binary trees are created based on the error in the initial set of trees, and wherein each of the next set of binary trees provide a next output for the corresponding input, and
repeating creating the next set of binary tress until the error between the outputs from a previous set of binary trees and the historical data is greater than the predetermine value;
As per the content of the above claim limitations, the word "greater" shown in bold above does not make sense, and also contradicts the specification, which teaches:
… This process of creating new set of trees to reduce the errors in predications in the previous set of trees can be repeated for a number of rounds or when the errors are less than a predetermined level. (0026)
As such, the word "greater" shown in bold above is understood to be a clerical error. To correct the problems of lack of sense and contradiction with the specification, the word "greater" shown in bold above should be changed to "less" and, for purposes of examination, is interpreted accordingly.
Claims 2-10, 12-16 and 18-20 are rejected by virtue of their dependency from a rejected claim.
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 a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
Claims 1-20 are directed to a method, system, or non-transitory computer-readable medium, which are/is one of the statutory categories of invention. (Step 1: YES)
Claims 1, 11 and 17 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The claims recite a
method, system, and non-transitory computer-readable medium for intelligent lender selection.
For claims 1, 11 and 17 (claim 1 being deemed representative), the limitations (indicated below in bold) of:
receiving, by a device comprising at least one processor, a customer identifier associated with a customer;
determining, by the device, a customer profile for the customer based on the customer identifier;
receiving, by the device, a vehicle data associated with a vehicle to be transferred to the customer;
determining, by the device, financial data associated with a loan application by the customer for transfer of the vehicle to the customer based on the vehicle data and the customer profile;
predicting, by using a first machine learning module of the device, a probability of acceptance of the loan application for each of a plurality of lending entities based on the financial data and the customer profile, wherein predicting, using the first machine learning module of the device, the probability of acceptance comprises:
creating an initial set of binary trees for each inputs from the financial data and the customer profile, wherein each of the initial set of binary trees provide an output for a corresponding input,
comparing outputs from the initial set of binary trees with a historical data,
determining, based on comparison, an error between the outputs from the initial set of binary trees and the historical data,
creating a next set of binary trees in response to determining that the error between the outputs from the initial set of binary trees and the historical data is greater than a predetermine value, wherein the next set of binary trees are created based on the error in the initial set of trees, and wherein each of the next set of binary trees provide a next output for the corresponding input, and
repeating creating the next set of binary tress until the error between the outputs from a previous set of binary trees and the historical data is greater than the predetermine value;
filtering, by the device, one or more lending entities from the plurality of lending entities based on the probability of acceptance and a minimum probability of acceptance defined by an administrator; and
submitting, by the device, the loan application to each of the one or more lending entities filtered based on the probability of acceptance and a minimum probability of acceptance.
as drafted, constitute a process that, under the broadest reasonable interpretation, covers "certain methods of organizing human activity," specifically, "fundamental economic practices or principles" and/or "commercial or legal interactions," but for recitation of generic computer components and generally linking the use of a judicial exception to a particular technological environment or field of use. The Examiner notes that "fundamental economic practices" or "fundamental economic principles" describe concepts relating to the economy and commerce, including hedging, insurance, and mitigating risks, and "commercial interactions" or "legal interactions" include agreements in the form of contracts, legal obligations, advertising, marketing or sales activities or behaviors, and business relations. MPEP 2106.04(a)(2)II.A.,B. If a claim limitation, under its broadest reasonable interpretation, covers "fundamental economic practices or principles" and/or "commercial or legal interactions," but for recitation of generic computer components and generally linking the use of a judicial exception to a particular technological environment or field of use, then it falls within the "certain methods of organizing human activity" grouping of abstract ideas. Accordingly, claims 1, 11 and 17 recite an abstract idea. (Step 2A - Prong 1: YES. The claims recite an abstract idea.)
This judicial exception is not integrated into a practical application. Claims 1, 11 and 17 recite the additional elements of a device comprising at least one processor, a first machine learning module of the device (the foregoing recited in claim 1); a memory storage, a processing unit, a first machine learning module (the foregoing recited in claim 11); and a non-transitory computer-readable medium, a device comprising at least one processor, a first machine learning module of the device (the foregoing recited in claim 17), that implement the abstract idea. These additional elements are not described by the applicant and they are recited at a high level of generality (i.e., one or more generic computer elements performing generic computer functions, or generally linking the use of a judicial exception to a particular technological environment or field of use), such that they amount to no more than mere instructions to apply the exception using generic computer elements (namely, a device comprising at least one processor, a first machine learning module of the device, a memory storage, a processing unit, a first machine learning module, a non-transitory computer-readable medium), or such that they amount to no more than generally linking the use of a judicial exception to a particular technological environment or field of use (namely, a first machine learning module of the device, a first machine learning module). Accordingly, even in combination these 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. (Step 2A - prong 2: NO. The additional elements do not integrate the abstract idea into a practical application.)
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception itself. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of a device comprising at least one processor, a first machine learning module of the device (the foregoing recited in claim 1); a memory storage, a processing unit, a first machine learning module (the foregoing recited in claim 11); and a non-transitory computer-readable medium, a device comprising at least one processor, a first machine learning module of the device (the foregoing recited in claim 17), to perform the noted steps amount to no more than mere instructions to apply the exception using generic computer elements or generally linking the use of a judicial exception to a particular technological environment or field of use. Mere instructions to apply an exception using generic computer elements or generally linking the use of a judicial exception to a particular technological environment or field of use cannot provide an inventive concept ("significantly more"). Accordingly, even in combination, these additional elements do not provide significantly more. As such, claims 1, 11 and 17 are not patent eligible. (Step 2B: NO. The claims do not provide significantly more.)
Dependent claims 2-10, 12-16 and 18-20 are similarly rejected because they further define/narrow the abstract idea of independent claims 1, 11 and 17 as discussed above, and/or do not integrate the abstract idea into a practical application or provide an inventive concept such as would render the claims eligible, whether each is considered individually or as an ordered combination.
As for further defining/narrowing the abstract idea:
Claims 2, 12 and 18 merely describe predicting … a buy lending rate for the loan application from the one or more entities; and determining … a sale lending rate for the loan application based on the buy lending rate.
Claims 3 and 13 merely describe filtering … the one or more lending entities from the plurality of lending entities further based on a profit margin comprising a difference between the sale lending rate and the buy lending rate.
Claims 4, 5, 8, 14, 15 and 19 merely describe "based on" various data.
Claim 6 merely describes that determining coefficients of an nth-degree polynomial algorithm based on the historical loan application approval data to predict the sale lending rate.
Claims 7, 9, 16 and 20 merely describe a gradient boosting algorithm.
Claim 10 merely describes receiving … a selection of a default lending entity from the administrator; and submitting… the loan application to the default lending entity in addition to the one or more lending entities.
As for additional elements:
Claims 2 and 18 recite "by a second machine learning module of the device" and "by/using a third machine learning module of the device." This recitation is at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer element ("by a second machine learning module of the device" and "by/using a third machine learning module of the device") and such that it amounts to no more than generally linking the use of a judicial exception to a particular technological environment or field of use ("by a second machine learning module of the device" and "by/using a third machine learning module of the device"). Even in combination these additional elements do not integrate the abstract idea into a practical application and do not amount to significantly more than the abstract idea itself.
Claim 3 recites "by the device." This recitation is at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer element. Even in combination these additional elements do not integrate the abstract idea into a practical application and do not amount to significantly more than the abstract idea itself.
Claims 4-6, 8 and 19 recite "training the second/third/first machine learning module." This recitation is at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer element. Even in combination these additional elements do not integrate the abstract idea into a practical application and do not amount to significantly more than the abstract idea itself.
Claims 7, 9, 16 and 20 recite "the second/first machine learning module." This recitation is at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer element. Even in combination these additional elements do not integrate the abstract idea into a practical application and do not amount to significantly more than the abstract idea itself.
Claim 10 recites "by the device." This recitation is at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer element. Even in combination these additional elements do not integrate the abstract idea into a practical application and do not amount to significantly more than the abstract idea itself.
Claim 12 recites "wherein the processing device unit is further operative to:," "using a second machine learning module of the device" and "using a third machine learning module of the device." This recitation is at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer element ("wherein the processing device unit is further operative to:," "using a second machine learning module of the device," and "using a third machine learning module of the device") and such that it amounts to no more than generally linking the use of a judicial exception to a particular technological environment or field of use ("using a second machine learning module of the device" and "using a third machine learning module of the device."). Even in combination these additional elements do not integrate the abstract idea into a practical application and do not amount to significantly more than the abstract idea itself.
Claim 13 recites "wherein the processing device unit is further operative to:." This recitation is at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer element. Even in combination these additional elements do not integrate the abstract idea into a practical application and do not amount to significantly more than the abstract idea itself.
Claims 14 and 15 recite "wherein the processing device unit is further operative/ configured to train the second/first machine learning module." This recitation is at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer element. Even in combination these additional elements do not integrate the abstract idea into a practical application and do not amount to significantly more than the abstract idea itself.
Therefore, dependent claims 2-10, 12-16 and 18-20 are not patent eligible.
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 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.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1, 8, 9, 11, 15-17, 19 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Gaur et al. (U.S. Patent Application Publication No. 2021/0233164 A1), hereafter Gaur, in view of Boehmke et al. ("Hands-On Machine Learning with R"), hereafter Boehmke, and further in view of Zou et al. (U.S. Patent Application Publication No. 2023/0196072 A1), hereafter Zou.
Notes regarding Boehmke:
i. As Boehmke does not have page numbers, citations to Boehmke indicate chapters or sections of chapters.
ii. Due to file size limits, it was required to divide Boehmke into two separate files (enclosed herewith), which in turn mandated that Boehmke be listed as two separate entries on the enclosed Form PTO-892 (Notice of References Cited). Nonetheless, Boehmke is a single reference.
Note regarding the ordering of the claims: the claim rejections below are not set forth completely according to the order of the claim numbering, in order that all of the independent claims may be set forth at the outset.
Regarding Claim 1
Gaur teaches:
receiving, by a device comprising at least one processor, a customer identifier associated with a customer; (0059, 0093, 0022)
determining, by the device, a customer profile (0022 "financial data (e.g., a credit score, purchase history, etc.) associated with the user/customer identifier"; 0027) for the customer based on the customer identifier; (0022, 0027, 0059, 0093-0094)
receiving, by the device, a vehicle data associated with a vehicle to be transferred to the customer; (0022, 0059, 0094)
determining, by the device, financial data (0047, 0087 "loan information") associated with a loan application by the customer for transfer of the vehicle to the customer based on the vehicle data and the customer profile; (0047, 0087)
predicting, using a first machine learning module of the device, a probability of acceptance of the loan application for each of a plurality of lending entities based on the financial data and the customer profile, wherein predicting, using the first machine learning module of the device, the probability of acceptance comprises: (0030, 0021-0023, Fig. 4, 0104-0107)
… the financial data and the customer profile, (0030, 0021-0023, Fig. 4, 0104-0107)
…
filtering, by the device, one or more lending entities from the plurality of lending entities based on the probability of acceptance and a minimum probability of acceptance (0030, probability threshold) defined by an administrator; and (0030, e.g., "selectively determine which lenders to which to submit the offer based on likelihood of approval of the offer.")
submitting, by the device, the loan application to each of the one or more lending entities filtered based on the probability of acceptance and a minimum probability of acceptance. (0030, e.g., "selectively determine which lenders to which to submit the offer based on likelihood of approval of the offer.")
Gaur does not explicitly disclose in its entirety but Boehmke teaches:
creating an initial set of binary trees for each inputs from …, (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error; regarding binary trees: the trees discussed in chapter 12 were previously described in chapter 9 ("future chapters will discuss powerful ensemble algorithms-like random forests and gradient boosting machines - which are constructed by combining together many decision trees in a clever way. This chapter will provide you with a strong foundation in decision trees."); the description in chapter 9 teaches that these trees (decision trees) are commonly binary trees: 9.2., 9.3, e.g., "A basic decision tree partitions the training data into homogeneous subgroups …. The subgroups (also called nodes) are formed recursively using binary partitions …"; and the trees shown in the figures of 9.2, 9.3 are binary; (note: this teaching of binary trees applies to the subsequent limitations set forth below and for concision is not repeated below); regarding trees (plural): although Boehmke speaks here of a tree rather than a set of trees, a set of trees would be obvious pursuant to legal precedent, MPEP 2144.04 VI.B. (Duplication of Parts) (note: this teaching of trees in the plural applies to the subsequent limitations set forth below and for concision is not repeated below))
wherein each of the initial set of binary trees provide an output for a corresponding input, (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error; note the fact that the error is identified indicates that the trees provide an output for a corresponding input, since the error is the difference between the predicted output and a target (actual/historical) output, and the way a tree works by definition is that an output is obtained from an input, as seen in chapter 9, see 9.2, 9.3 the illustrated figures show that an input yields an output)
comparing outputs from the initial set of binary trees with a historical data, (2.6; 2.6.1 "Loss functions are metrics that compare the predicted values to the actual value (the output of a loss function is often referred to as the error or pseudo residual). When performing resampling methods, we assess the predicted values for a validation set compared to the actual target value. For example, in regression, one way to measure error is to take the difference between the actual and predicted value for a given observation (this is the usual definition of a residual in ordinary linear regression)." (2.6); note by definition the error is the difference between the output and the target/actual (historical) data, therefore determining (calculating) the loss function (error) necessarily involves performing the recited comparison)
determining, based on comparison, an error between the outputs from the initial set of binary trees and the historical data, ((2.6; 2.6.1 "Loss functions are metrics that compare the predicted values to the actual value (the output of a loss function is often referred to as the error or pseudo residual). When performing resampling methods, we assess the predicted values for a validation set compared to the actual target value. For example, in regression, one way to measure error is to take the difference between the actual and predicted value for a given observation (this is the usual definition of a residual in ordinary linear regression)." (2.6))
creating a next set of binary trees in response to determining that the error between the outputs from the initial set of binary trees and the historical data is …, (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error)
wherein the next set of binary trees are created based on the error in the initial set of trees, and (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error)
wherein each of the next set of binary trees provide a next output for the corresponding input, and (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error; note the fact that the error is identified indicates that the trees provide an output for a corresponding input, since the error is the difference between the predicted output and a target (actual/historical) output, and the way a tree works by definition is that an output is obtained from an input, as seen in chapter 9, see 9.2, 9.3 the illustrated figures show that an input yields an output)
repeating creating the next set of binary tress until the error between the outputs from a previous set of binary trees and the historical data is … (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error)
(Note: the foregoing limitations taught by Boehmke essentially encompass the definition of gradient boosting, as taught by Boehmke, 12; 12.2.1; 12.2.2; 12.5.)
It would have been obvious to one of ordinary skill in the art not later than the effective filing date of the claimed invention to have modified Gaur's systems and methods for determining loans and lenders for a customer purchasing a vehicle, by incorporating therein these teachings of Boehmke regarding gradient boosting using binary trees and a stopping criterion, because (1) while Gaur teaches machine learning, including adjusting a model and weights, Gaur does not spell out the details of how the machine learning is implemented, and Boehmke's teachings provide a suitable example of such implementation detail that merely fleshes out Gaur and is necessary to actually practice Gaur, (2) Boehmke's particular teachings (gradient boosting, etc.) provide a powerful algorithm for carrying out machine learning "that is often hard to beat with other algorithms" (Boehmke, 12) so that it would enhance Gaur's performance, and (3) in view of aforementioned reason (1) the combination is a matter of combining prior art elements according to known methods to yield predictable results, MPEP 2143.I.A.
Gaur (0036, 0041, 0060, 0075, 0095, 0111) teaches optimizing a loss function so as to reduce the error between the output of the ML model and the expected (target/actual) output, e.g., by backpropagation of errors (0075). Similarly, Boehmke (2.6; 2.6.1; 9.3; 12.2.2; 13.5) teaches optimizing an ML model so as to minimize the loss function (error between predicted value and actual value), including through backpropagation (13.5), and including the use of early stopping (12.5), i.e., stopping the training once a certain condition has been met, e.g., if the accuracy has stopped improving by a certain amount (11.5), if the loss function does not improve for a specified number of epochs (iterations) (13.7.1), etc. Nonetheless, these teachings, even the early stopping as here described, do not explicitly teach performing the recited repeating until the error is less than a predetermined value (as per "Claim Objections" and "Rejections under 35 U.S.C. 112" above, "is greater than the predetermine value" is interpreted as "is less than a predetermined value"). But Zou teaches, in the context of machine learning/neural networks generally (not specifically regarding binary decision trees), a stopping criterion of stopping iterations when the loss (error) reaches a value in a predefined range (predetermined value). (As indicated below, except for binary trees, Zou also teaches the same content as that cited above as being taught by Boehmke, which demonstrates that Zou's teachings are appropriate for combination with Boehmke and, since Boehmke merely fleshes out implementation detail for Gaur, are appropriate more generally for combination with Gaur.) Thus, Gaur in view of Boehmke does not explicitly disclose in its entirety but Zou teaches:
creating an initial … for each inputs from …, (0423, 0425)
wherein each of the initial … provide an output for a corresponding input, (0425)
comparing outputs from the initial … with a historical data, (0425)
determining, based on comparison, an error between the outputs from the initial … and the historical data, (0425)
creating a next … in response to determining that the error between the outputs from the initial … and the historical data is greater than a predetermine value, (0425)
wherein the next … are created based on the error in the initial set of trees, and (0425 "The computed loss is then used to update the parameters of the NN")
wherein each of the next … provide a next output for the corresponding input, and (0425)
repeating … until the error between the outputs from a previous … and the historical data is greater than the predetermine value; (0425)
It would have been obvious to one of ordinary skill in the art not later than the effective filing date of the claimed invention to have modified the combination of Gaur's systems and methods for determining loans and lenders for a customer purchasing a vehicle, as modified by Boehmke's teachings regarding gradient boosting using binary trees and a stopping criterion, by incorporating therein these teachings of Zou regarding a stopping criterion of the loss (error) reaching a value in a predefined range (predetermined value), because, as Boehmke (2.6) teaches, when assessing performance of or optimizing a predictive model, there are many different loss functions, and many different ways to compute a loss function, to choose from, and the best selections depend on the specific problem context, so that Zou's particular ways of optimizing including his particular stopping criteria (0425), may be considered equivalents in principle to those taught by Gaur and Boehmke, and may be preferable to those taught by Gaur and Boehmke in certain circumstances, and accordingly the combination amounts to simple substitution of one known element for another to obtain predictable results, MPEP 2143.I.B.
Regarding Claim 11
Gaur teaches:
a memory storage; and (Fig. 2, 231, 234, 236)
a processing unit coupled to the memory storage, wherein the processing unit is operative to: (Fig. 2, 232)
receive a customer identifier associated with a customer; (0059, 0093, 0022)
determine customer variables (0022 "financial data (e.g., a credit score, purchase history, etc.) associated with the user/customer identifier"; 0027) for the customer based on the customer identifier; (0022, 0027, 0059, 0093-0094)
receive vehicle variables associated with a vehicle to be transferred to the customer; (0022, 0059, 0094)
determine loan variables (0047, 0087 "loan information") associated with a loan application by the customer for financing the transfer of the vehicle to the customer based on the vehicle variables and the customer variables; (0047, 0087)
predict, using a first machine learning module, a probability of acceptance of the loan application by each of a plurality of lending entities based on the loan variables, the vehicle variables, and the customer variables, wherein the processing unit being operative to predict, using the first machine learning module of the device, the probability of acceptance comprises the processing unit being operative to: (0030, 0021-0023, Fig. 4, 0104-0107)
… the financial data and the customer profile, (0030, 0021-0023, Fig. 4, 0104-0107)
…
filter one or more lending entities from the plurality of lending entities based on the probability of acceptance and a minimum probability of acceptance (0030, probability threshold) defined by an administrator; and (0030, e.g., "selectively determine which lenders to which to submit the offer based on likelihood of approval of the offer.")
submit the loan application to each of the one or more lending entities filtered based on the probability of acceptance and a minimum probability of acceptance. (0030, e.g., "selectively determine which lenders to which to submit the offer based on likelihood of approval of the offer.")
Gaur does not explicitly disclose in its entirety but Boehmke teaches:
creating an initial set of binary trees for each inputs from …, (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error; regarding binary trees: the trees discussed in chapter 12 were previously described in chapter 9 ("future chapters will discuss powerful ensemble algorithms-like random forests and gradient boosting machines - which are constructed by combining together many decision trees in a clever way. This chapter will provide you with a strong foundation in decision trees."); the description in chapter 9 teaches that these trees (decision trees) are commonly binary trees: 9.2., 9.3, e.g., "A basic decision tree partitions the training data into homogeneous subgroups …. The subgroups (also called nodes) are formed recursively using binary partitions …"; and the trees shown in the figures of 9.2, 9.3 are binary; (note: this teaching of binary trees applies to the subsequent limitations set forth below and for concision is not repeated below); regarding trees (plural): although Boehmke speaks here of a tree rather than a set of trees, a set of trees would be obvious pursuant to legal precedent, MPEP 2144.04 VI.B. (Duplication of Parts) (note: this teaching of trees in the plural applies to the subsequent limitations set forth below and for concision is not repeated below))
wherein each of the initial set of binary trees provide an output for a corresponding input, (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error; note the fact that the error is identified indicates that the trees provide an output for a corresponding input, since the error is the difference between the predicted output and a target (actual/historical) output, and the way a tree works by definition is that an output is obtained from an input, as seen in chapter 9, see 9.2, 9.3 the illustrated figures show that an input yields an output)
comparing outputs from the initial set of binary trees with a historical data, (2.6; 2.6.1 "Loss functions are metrics that compare the predicted values to the actual value (the output of a loss function is often referred to as the error or pseudo residual). When performing resampling methods, we assess the predicted values for a validation set compared to the actual target value. For example, in regression, one way to measure error is to take the difference between the actual and predicted value for a given observation (this is the usual definition of a residual in ordinary linear regression)." (2.6); note by definition the error is the difference between the output and the target/actual (historical) data, therefore determining (calculating) the loss function (error) necessarily involves performing the recited comparison)
determining, based on comparison, an error between the outputs from the initial set of binary trees and the historical data, ((2.6; 2.6.1 "Loss functions are metrics that compare the predicted values to the actual value (the output of a loss function is often referred to as the error or pseudo residual). When performing resampling methods, we assess the predicted values for a validation set compared to the actual target value. For example, in regression, one way to measure error is to take the difference between the actual and predicted value for a given observation (this is the usual definition of a residual in ordinary linear regression)." (2.6))
creating a next set of binary trees in response to determining that the error between the outputs from the initial set of binary trees and the historical data is …, (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error)
wherein the next set of binary trees are created based on the error in the initial set of trees, and (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error)
wherein each of the next set of binary trees provide a next output for the corresponding input, and (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error; note the fact that the error is identified indicates that the trees provide an output for a corresponding input, since the error is the difference between the predicted output and a target (actual/historical) output, and the way a tree works by definition is that an output is obtained from an input, as seen in chapter 9, see 9.2, 9.3 the illustrated figures show that an input yields an output)
repeating creating the next set of binary tress until the error between the outputs from a previous set of binary trees and the historical data is … (12, 12.2.1, 12.2.2 creates successive trees in sequence, each new tree focusing on largest errors in previous tree, in order to improve performance, and minimize error)
(Note: the foregoing limitations taught by Boehmke essentially encompass the definition of gradient boosting, as taught by Boehmke, 12; 12.2.1; 12.2.2; 12.5.)
It would have been obvious to one of ordinary skill in the art not later than the effective filing date of the claimed invention to have modified Gaur's systems and methods for determining loans and lenders for a customer purchasing a vehicle, by incorporating therein these teachings of Boehmke regarding gradient boosting using binary trees and a stopping criterion, because (1) while Gaur teaches machine learning, including adjusting a model and weights, Gaur does not spell out the details of how the machine learning is implemented, and Boehmke's teachings provide a suitable example of such implementation detail that merely fleshes out Gaur and is necessary to actually practice Gaur, (2) Boehmke's particular teachings (gradient boosting, etc.) provide a powerful algorithm for carrying out machine learning "that is often hard to beat with other algorithms" (Boehmke, 12) so that it would enhance Gaur's performance, and (3) in view of aforementioned reason (1) the combination is a matter of combining prior art elements according to known methods to yield predictable results, MPEP 2143.I.A.
Gaur (0036, 0041, 0060, 0075, 0095, 0111) teaches optimizing a loss function so as to reduce the error between the output of the ML model and the expected (target/actual) output, e.g., by backpropagation of errors (0075). Similarly, Boehmke (2.6; 2.6.1; 9.3; 12.2.2; 13.5) teaches optimizing an ML model so as to minimize the loss function (error between predicted value and actual value), including through backpropagation (13.5), and including the use of early stopping (12.5), i.e., stopping the training once a certain condition has been met, e.g., if the accuracy has stopped improving by a certain amount (11.5), if the loss function does not improve for a specified number of epochs (iterations) (13.7.1), etc. Nonetheless, these teachings, even the early stopping as here described, do not explicitly teach performing the recited repeating until the error is less than a predetermined value (as per "Claim Objections" and "Rejections under 35 U.S.C. 112" above, "is greater than the predetermine value" is interpreted as "is less than a predetermined value"). But Zou teaches, in the context of machine learning/neural networks generally (not specifically regarding binary decision trees), a stopping criterion of stopping iterations when the loss (error) reaches a value in a predefined range (predetermined value). (As indicated below, except for binary trees, Zou also teaches the same content as that cited above as being taught by Boehmke, which demonstrates that Zou's teachings are appropriate for combination with Boehmke and, since Boehmke merely fleshes out implementation detail for Gaur, are appropriate more generally for combination with Gaur.) Thus, Gaur in view of Boehmke does not explicitly disclose in its entirety but Zou teaches:
creating an initial … for each inputs from …, (0423, 0425)
wherein each of the initial … provide an output for a corresponding input, (0425)
comparing outputs from the initial … with a historical data, (0425)
determining, based on comparison, an error between the outputs from the initial … and the historical data, (0425)
creating a next … in response to determining that the error between the outputs from the initial … and the historical data is greater than a predetermine value, (0425)
wherein the next … are created based on the error in the initial set of trees, and (0425 "The computed loss is then used to update the parameters of the NN")
wherein each of the next … provide a next output for the corresponding input, and (0425)
repeating … until the error between the outputs from a previous … and the historical data is greater than the predetermine value; (0425)
It would have been obvious to one of ordinary skill in the art not later than the effective filing date of the claimed invention to have modified the combination of Gaur's systems and methods for determining loans and lenders for a customer purchasing a vehicle, as modified by Boehmke's teachings regarding gradient boosting using binary trees and a stopping criterion, by incorporating therein these teachings of Zou regarding a stopping criterion of the loss (error) reaching a value in a predefined range (predetermined value), because, as Boehmke (2.6) teaches, when assessing performance of or optimizing a predictive model, there are many different loss functions, and many different ways to compute a loss function, to choose from, and the best selections depend on the specific problem context, so that Zou's particular ways of optimizing including his particular stopping criteria (0425), may be considered equivale