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 .
Status of Claims
This is a nonfinal rejection in response to amendments/remarks filed on 10/03/2025. Claims 1, 8, and 16 are examined herein. Claim 4 has been cancelled. Claims 1-3, and 5-19 are pending and are examined herein.
Priority
This application discloses and claims only subject matter disclosed in prior Application No. 16/653,722 granted as US Patent No. 11625796 , filed 2019-10-15. This priority date is acknowledged and accepted by the examiner.
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.
7. Claims 1-3, 5-10, and 12-13 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-15 of U.S. Patent No. 11625796 in view of Zeldin et al. (US 20190005575 A1) hereinafter Zeldin, since the claims, if allowed, would improperly extend the “right to exclude” already granted in the patent. See the chart below mapping the limitations in which the patented claim holds the narrower scope than the instant claim limitation, or are patentably indistinct. The features taught in the instant application that are not covered in the patent have been bolded, such as the last two limitations of claim 1 and claim 8. These limitations are then addressed in an obviousness combination subsequent to the mapping chart.
Clm
Instant Application 18/185,840
Clm
Patent No. 11625796
Double Patenting Statement
1
A method for determining a predicted value of a user purchase via a computer system, the method comprising:
1
A method for determining a predicted value of a user purchase for booking a property via a computer system, the method comprising:
Patented claim 1 is not identical to instant claim 1, but they are patentably indistinct because instant Claim 1 is anticipated by patented claim 1. This limitation of instant claim 1 holds a broader scope which encompasses the corresponding limitation in patented claim 1 because the bolded language is simply further limitation of the instant claim.
1
storing a first plurality of user metrics in a raw data format, the first plurality of user metrics relating to a user’s activity on the computer system;
1
storing a first plurality of user metrics in a raw data format, the first plurality of user metrics relating to the activity of the user on the computer system
These limitations hold the same scope.
1
storing a second plurality of user metrics associated with the user’s activity on the computer system within a window of time, the second plurality of user metrics being generated by aggregation of data in the first plurality of user metrics;
1
storing a second plurality of user metrics associated with the activity of the user on the computer system within a window of time, the second plurality of user metrics being generated by aggregation of data in the first plurality of user metrics;
These limitations hold the same scope.
1
grouping the second plurality of user metrics into one or more features, each feature corresponding to a statistic of the data in the second plurality of user metrics;
1
grouping the second plurality of user metrics into one or more features, each feature corresponding to a statistic of the data in the second plurality of user metrics;
These limitations holds the same scope
1
training a first machine learning model, using a first regression-based algorithm, based on the one or more features by using a first set of feature-specific weighting that distinguishes between the one or more features to predict a probability of the user purchase;
1
training a first machine learning model, using a first regression-based algorithm, based on a first set of feature-specific weighting that distinguishes between the one or more features, the first machine learning model for predicting probabilities of purchases by the user;
These limitations holds the same scope, though the patented claims do not specifically recite the limitation “based on the one or more features by using”, such a limitation does not further limit the scope because “a first set of feature-specific weighting that distinguishes between the one or more features” means that the training is based on the one or more features.
1
training a second machine learning model, using a second regression-based algorithm, based on the one or more features by using a second set of feature-specific weighting that distinguishes between the one or more features to predict an expected value of the user purchase,
1
training a second machine learning model, using a second regression-based algorithm, based on a second set of feature-specific weighting that distinguishes between the one or more features, the second machine learning model for predicting values of purchases by the user;
These limitations holds the same scope, though the patented claims do not specifically recite the limitation “based on the one or more features by using”, such a limitation does not further limit the scope because “a first set of feature-specific weighting that distinguishes between the one or more features” means that the training is based on the one or more features.
1
wherein the second set of feature-specific weighting is distinct from the first set of feature- specific weighting;
Though this instant limitation isn’t specifically taught in the patented claim, it would have been obvious to one of ordinary skill in the art to modify the patented claim by adding the teachings of to arrive at the instant limitations.
1
providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model and the expected value of the user purchase predicted by the trained second machine learning model.
1
combining, by the at least one processor, the predicted probability of the user purchase generated by the first machine learning model and the predicted value of the user purchase generated by the second machine learning model as a weight summation to generate a predicted return on investment (ROI) value; and selecting with the at least one processor a landing page for presentation to the user based on the predicted ROI value,
Though this instant limitation isn’t specifically taught in the patented claim, it would have been obvious to one of ordinary skill in the art to modify this limitation in the patented claim with the teachings of to arrive at the instant limitations.
2
The method of claim 1, wherein the training of the first machine learning model comprises identifying features, of the one or more features, relevant to the user’s past activity on the computer system,
2
The method of claim 1, wherein the training of the first machine learning model comprises identifying features, of the one or more features, relevant to the user’s past activity on the computer system,
Patented claim 2 and instant claim 2 are patentably indistinct because instant Claim 2 is anticipated by patented claim 2.
2
and wherein the training of the second machine learning model comprises identifying features, of the one or more features, relevant to the price of the user purchase.
2
and wherein the training of the second machine learning model comprises identifying features, of the one or more features, relevant to the price of the user purchase.
Patented claim 2 and instant claim 2 are patentably indistinct because instant Claim 2 is anticipated by patented claim 2.
3
The method of claim 1, wherein the training of the first machine learning model comprises identifying features, of the one or more features, relevant to a frequency of the user’s activity on the computer system.
3
The method of claim 1, wherein the training of the first machine learning model comprises identifying features, of the one or more features, relevant to a frequency of the user’s activity on the computer system.
Patented claim 3 and instant claim 3 are patentably indistinct because instant Claim 3 is anticipated by patented claim 3.
5
The method of claim 1, wherein the first regression-based algorithm is a logistic regression model, and the second regression-based algorithm is a linear regression model.
5
The method of claim 1, wherein the first regression-based algorithm is a logistic regression model, and the second regression-based algorithm is a linear regression model.
Patented claim 5 and instant claim 5 are patentably indistinct because instant Claim 5 is anticipated by patented claim 5.
6
The method of claim 1, wherein the user purchase relates to a booking of a property listing viewed by the user via the computer system;
1
A method for determining a predicted value of a user purchase for booking a property via a computer system, the method comprising:
Instant claim 6 is not identical to patented claim 6 but is patentably indistinct because patented claim 6, in combination with the claim it depends on, anticipates instant claim 6.
6
and wherein the first set of feature-specific weightings weighs features corresponding to one or more of the following items more heavily than features that do not correspond to one or more of the following items: a) user account history, b) past or historical user activity, c) recent user activity, d) availability of a set of property listings viewed by the user, e) location of the user, and f) location of the set of property listings viewed by the user.
6
The method of claim 1, wherein the first set of feature-specific weightings weighs features corresponding to one or more of the following items more heavily than at least one other feature of the one or more features: a) user account history, b) past or historical user activity, c) recent user activity, d) availability of a set of property listings viewed by the user, e) location of the user, and f) location of the set of property listings viewed by the user.
7
The method of claim 1, wherein the user purchase relates to a booking of a property listing viewed by the user via the computer system;
1
A method for determining a predicted value of a user purchase for booking a property via a computer system, the method comprising:
Instant claim 7 is not identical to patented claim 7 but is patentably indistinct because patented claim 7, in combination with the claim it depends on anticipates, instant claim 7.
7
and wherein the second set of feature-specific weightings weighs features corresponding to one or more of the following items more heavily than features that do not correspond to one or more of the following items: a) location of a set of property listings viewed by the user, and b) a median price of the set of property listings viewed by the user.
7
The method of claim 1, wherein the second set of feature-specific weightings weighs features corresponding to one or more of the following items more heavily than at least one other feature of the one or more features: a) location of a set of property listings viewed by the user, and b) a median price of the set of property listings viewed by the user.
8
A system for obtaining a real-time computative prediction of a return on investment (ROI) value for a user based on user data provided by one or more servers over a network, the system comprising:
8
A system for obtaining a real-time computative prediction of a return on investment (ROI) value for a user based on user data provided by one or more servers over a network, the system comprising:
Patented claim 8 is not identical to instant claim 8, but they are patentably indistinct because instant Claim 8 is anticipated by patented claim 8.
8
a web server;
8
a web server;
8
a memory configured to store a plurality of user data in a raw data format, the plurality of user data relating to a user’s activity on the system, the plurality of user data being obtained from the web server;
8
a memory configured to store a plurality of user data in a raw data format, the plurality of user data relating to activity of the user in searching for property listings on the system, the plurality of user data being obtained from the web server and indicating property-specific characteristics of properties described by the property listings;
The bolded elements are further limitations to the scope of instant claim 8, therefore instant claim 8 is anticipated by patented claim 8 because instant 8 encompasses the scope of patented claim 8.
8
and at least one processor configured to: transform the plurality of user data into a set of aggregated user metrics associated with the user’s activity on the system within a window of time;
8
and at least one processor configured to: transform the plurality of user data into a set of aggregated user metrics associated with the activity of the user on the system within a window of time;
These limitations hold the same scope
8
store the aggregated user metrics in the memory;
8
store the aggregated user metrics in the memory;
These limitations hold the same scope
8
categorize the aggregated user metrics into one or more training signals;
8
categorize the aggregated user metrics into one or more training signals;
These limitations hold the same scope
8
train a first machine learning model, using a first regression-based algorithm, based on the one or more training signals by using a first set of weighted multipliers to predict a probability of a user purchase;
8
generate a first set of weighted multipliers for the one or more training signals using a first regression-based algorithm; train a first machine learning model based on the first set of weighted multipliers, the first machine learning model for predicting probabilities of purchases by the user;
These limitations holds the same scope, though the patented claims do not specifically recite the limitation “based on the one or more features by using”, such a limitation does not further limit the scope because “a first set of feature-specific weighting that distinguishes between the one or more features” means that the training is based on the one or more features.
8
train a second machine learning model, using a second regression-based algorithm, based on the one or more training signals by using a second set of weighted multipliers to predict a value of the user purchase,
8
generate a second set of weighted multipliers for the one or more training signals using a second regression-based algorithm; train a second machine learning model based on the second set of weighted multipliers,
These limitations holds the same scope, though the patented claims do not specifically recite the limitation “based on the one or more features by using”, such a limitation does not further limit the scope because “a first set of feature-specific weighting that distinguishes between the one or more features” means that the training is based on the one or more features.
8
wherein the second set of weighted multipliers is distinct from the first set of weighted multipliers and
8
Though this instant limitation isn’t specifically taught in the patented claim, it would have been obvious to one of ordinary skill in the art to modify this limitation in the patented claim with the teachings of to arrive at the instant limitations.
8
providing content related to the ROI value in real-time based on the probability of the user purchase predicted by the trained first machine learning model and the predicted value of the user purchase predicted by the trained second machine learning model.
8
generate the prediction of the ROI value for the user based on the predicted probability that the user will make the purchase and the predicted value of the purchase, wherein the predicted probability is calculated by applying the first learning model and the predicted value is calculated by applying the second machine learning model; and select a landing page for presentation to the user based on the prediction of the ROI value, wherein the first machine learning model and the second machine learning model are retrained continuously or on a scheduled basis for features from a prior conversion period to compensate for seasonal or time-specific market variations.
Though this instant limitation isn’t specifically taught in the patented claim, it would have been obvious to one of ordinary skill in the art to modify this limitation in the patented claim with the teachings of to arrive at the instant limitations.
9
The system of claim 8, wherein the at least one processor is further configured to: obtain real-time data relating to the user’s activity on the system;
9
The system of claim 8, wherein the at least one processor is further configured to: obtain real-time data relating to the user’s activity on the system;
These limitations hold the same scope, therefore, Patented claim 9 and instant claim 9 are patentably indistinct because instant Claim 9 is anticipated by patented claim 9.
9
and store the real-time data in the memory, wherein the first machine learning model is applied to (a) the aggregated user metrics and (b) the real-time data to calculate the predicted probability, and
9
and store the real-time data in the memory, wherein the first machine learning model is applied to (a) the aggregated user metrics and (b) the real-time data to calculate the predicted probability, and
These limitations hold the same scope
9
wherein the second machine learning model is applied to (a) the aggregated user metrics and (b) the real-time data to calculate the predicted value.
9
wherein the second machine learning model is applied to (a) the aggregated user metrics and (b) the real-time data to calculate the predicted value.
These limitations hold the same scope
10
The system of claim 8, wherein generating the first set of weighted multipliers comprises identifying training signals relevant to the user’s past activity on the system.
10
The system of claim 8, wherein generating the first set of weighted multipliers comprises identifying training signals relevant to the user’s past activity on the system.
Patented claim 10 and instant claim 10 are patentably indistinct because instant Claim 10 is anticipated by patented claim 10.
11
The system of claim 8, wherein generating the first set of weighted multipliers comprises identifying training signals relevant to a frequency of the user’s activity on the system.
11
The system of claim 8, wherein generating the first set of weighted multipliers comprises identifying training signals relevant to the user’s past activity on the system.
Claim 11 of the instant claim is not included in the double patenting rejection because it holds a different scope, therefore the patented claim 11 does not anticipate the instant claim 11. The differences are bolded.
12
The system of claim 8, wherein generating the second set of weighted multipliers comprises identifying training signals relevant to a purchase price of the purchase.
12
The system of claim 8, wherein generating the second set of weighted multipliers comprises identifying training signals relevant to a purchase price of the purchase.
Patented claim 10 and instant claim 10 are patentably indistinct because instant Claim 10 is anticipated by patented claim 10.
13
The system of claim 8, wherein the first regression-based algorithm is a logistic regression model, and the second regression-based algorithm is a linear regression model.
13
The system of claim 8, wherein the first regression-based algorithm is a logistic regression model, and the second regression-based algorithm is a linear regression model.
Patented claim 10 and instant claim 10 are patentably indistinct because instant Claim 10 is anticipated by patented claim 10.
14
The system of claim 8, wherein the first set of weighted multipliers weighs training signals corresponding to one or more of the following items more heavily than training signals that do not correspond to one or more of the following items: a) user account history, b) past or historical user activity, c) recent user activity, d) availability of a set of property listings viewed by the user, e) location of the user, and f) location of the set of property listings viewed by the user.
14
The system of claim 8, wherein the first set of weighted multipliers weighs training signals corresponding to one or more of the following items more heavily than at least one other training signals of the one or more training signals: a) user account history, b) past or historical user activity, c) recent user activity, d) availability of a set of property listings viewed by the user, e) location of the user, and f) location of the set of property listings viewed by the user.
Claim 14 of the instant claim is not included in the double patenting rejection because it holds a different scope, therefore the patented claim 14 does not anticipate the instant claim 14. The differences are bolded.
15
The system of claim 8, wherein the second set of weighted multipliers weighs training signals corresponding to one or more of the following items more heavily than training signals that do not correspond to one or more of the following items: a) location of a set of property listings viewed by the user, and b) median price of the set of property listings viewed by the user.
15
The system of claim 8, wherein the second set of weighted multipliers weighs training signals corresponding to one or more of the following items more heavily than at least one other training signal of the one or more training signals: a) location of a set of property listings viewed by the user, and b) median price of the set of property listings viewed by the user.
Claim 15 of the instant claim is not included in the double patenting rejection because it holds a different scope, therefore the patented claim 15 does not anticipate the instant claim 15. The differences are bolded.
The following limitations in the instant application, are not found in the patented applicant, but would have been obvious to one of ordinary skill in the art:
Regarding Claims 1 and 8:
Patent No. 11625796 does not cover the following claim limitations:
- wherein the second set of weighted multipliers is distinct from the first set of weighted multipliers and
- providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model and the expected value of the user purchase predicted by the trained second machine learning model.
However, Zeldin discloses an online system for calculating bids to display content items to users based on the value of a product and the likelihood of a viewing user purchasing a product. Zeldin teaches:
-wherein the second set of feature-specific weighting is distinct from the first set of feature-specific weighting; and (Zeldin [0045] The conversion likelihood module 250 calculates a likelihood or probability of the conversion, herein referred to as the “conversion likelihood,” of the content item by the viewing user. The conversion likelihood module 225 calculates the conversion likelihood based on user-specific information known by the online system 140. In one embodiment, the conversion likelihood module 225 receives profile information associated with the viewing user. The conversion likelihood is calculated separately for each viewing user or impression opportunity and can be specific to each viewing user or impression opportunity.) The broadest reasonable interpretation of the limitation above is that the feature-specific weights (feature values) of the first trained model and second trained model are different (despite being based on the same feature data set). Since Zeldin teaches a conversion value module that extracts feature values, which is a completely separate model from the first model as taught by Martine, then the limitation is satisfied because the models are distinct from each other, therefore, the weights are also distinct.
- providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model and the expected value of the user purchase predicted by the trained second machine learning model. (Zeldin [0046] The expected value module 255 calculates the expected value of the conversion of the content item (“expected conversion value”). The expected conversion value is the estimated conversion value (or estimated amount a particular viewing user will spend) adjusted for the likelihood of the conversion. The expected conversion value is based on both the estimated conversion value and the conversion likelihood. In some embodiments, the expected conversion value is the product of the conversion likelihood and the estimated conversion value. [0043] In one embodiment, the conversion value module 245 applies machine learning techniques to generate a model that when applied to a set of content items, can select the optimal content item or set of content items that will provide the content provider with the highest return on the content provider's investment, spend, or conversion value for presenting that content item to a particular user or group of users. FIG. 3 shows a flow diagram of model training process in accordance with various embodiments. The conversion value module 245 generates a model 315 that selects the optimal content item that will provide the third party system 130 with the highest return on investment, expect amount of user spend, or conversion value for presenting that content item to a particular user.) As seen in the citations above, the providing of content is based on “highest return on investment”, based on a combination of the probability of the user purchase(conversion likelihood), and the expected value of the user purchase(conversion value).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the present disclosure to modify the Patented claims by adding the features of Zeldin, wherein the second set of feature-specific weighting is distinct from the first set of feature-specific weighting, and the provided content is based on both the expected value of a user purchase and the likelihood of the user purchase. By adding Zeldin’s expected value module into the patented system, one would arrive at the predictable outcome of providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model and the expected value of the user purchase predicted by the trained second machine learning model. A person of ordinary skill in the art would conclude that the invention defined in the claim at issue would have been an obvious variation of the invention defined in the patented claim because the patented claim selects a landing page based on the ROI value generated by the two machine learning models. By substituting Zeldin’s “content item” instead of the patented claim’s “landing page”, and by adding the Zeldin’s teachings that the providing of content is provided in real-time (which the patented claim was original silent on), it would have been obvious to arrive at this variation through the small modification. One would have been motivated to perform this combination as it would yield the benefit of optimizing for the monetary value of conversions rather than merely the number of conversions alone (Zeldin [0006] The estimated amount the viewing user is likely to spend per conversion can then be added as a term to the bid determination equation to set the bid for the viewing user for a given content item such that the bid includes return on spend as part of the calculation. Accordingly, the online system allows third party systems to optimize for the monetary value of conversions of a content item, rather than merely the number of conversions.)
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-3, and 5-19 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1: Is the claim to a Process, Machine, Manufacture, or Composition of Matter
The independent claims 1, 8, and 16 are treated as the representative claims for the 2-step analysis. The dependent claims will be reanalyzed after the initial 2-step analysis on the independent claims. The representative claims are directed to:
Claims 1-3 and 5-7 - A method for determining a predicted value of a user purchase via a computer system...
Claim 8-15 – A system for obtaining a real-time computative prediction of a return on investment (ROI) value for a user based on user data provided by one or more servers over a network,
Claim 16-19 – A method comprising:
Claim 1 and 16 are directed to methods which are categorized as processes. Claim 8 is a system claim, which falls under apparatus or machine. Therefore, all of the claims are directed to at least potentially eligible subject matter category and are to be further analyzed under step 2.
Step 2a Prong 1: Is the claim directed to a Judicial Exception(A Law of Nature, a Natural Phenomenon (Product of Nature), or An Abstract Idea?)
The claims under the broadest reasonable interpretation in light of the specification are analyzed herein. Representative claims 1, 8, and 16 are marked up, isolating the abstract idea from additional elements, wherein the abstract idea is in bold and the additional elements have been italicized as follows:
Claim 1: A method for determining a predicted value of a user purchase via a computer system, the method comprising:
storing a first plurality of user metrics in a raw data format, the first plurality of user metrics relating to a user's activity on the computer system;
storing a second plurality of user metrics associated with the user's activity on the computer system within a window of time, the second plurality of user metrics being generated by aggregation of data in the first plurality of user metrics;
grouping the second plurality of user metrics into one or more features, each feature corresponding to a statistic of the data in the second plurality of user metrics;
training a first machine learning model, using a first regression-based algorithm, based on the one or more features by using a first set of feature-specific weighting that distinguishes between the one or more features to predict a probability of the user purchase;
training a second machine learning model, using a second regression-based algorithm, based on the one or more features by using a second set of feature-specific weighting that distinguishes between the one or more features to predict an expected value of the user purchase, wherein the second set of feature-specific weighting is distinct from the first set of feature- specific weighting; and
providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model and the expected value of the user purchase predicted by the trained second machine learning model.
Claim 8: A system for obtaining a real-time computative prediction of a return on investment (ROI) value for a user based on user data provided by one or more servers over a network, the system comprising:
a web server;
a memory configured to store a plurality of user data in a raw data format, the plurality of user data relating to a user's activity on the system, the plurality of user data being obtained from the web server; and
at least one processor configured to:
transform the plurality of user data into a set of aggregated user metrics associated with the user's activity on the system within a window of time;
store the aggregated user metrics in the memory;
categorize the aggregated user metrics into one or more training signals
train a first machine learning model, using a first regression-based algorithm, based on the one or more training signals by using a first set of weighted multipliers to predict a probability of a user purchase;
train a second machine learning model, using a second regression-based algorithm, based on the one or more training signals by using a second set of weighted multipliers to predict a value of the user purchase, wherein the second set of weighted multipliers is distinct from the first set of weighted multipliers and
providing content related to the ROI value in real-time based on the probability of the user purchase predicted by the trained first machine learning model and the predicted value of the user purchase predicted by the trained second machine learning model.
Claim 16: A method comprising:
storing, in a memory, user data relating to a user's activity on a computer system;
storing, in a memory, user metrics associated with the user's activity on the computer system within a window of time, the user metrics being generated by aggregating a set of data of the stored user data;
identifying a first set of target variables directed to optimizing user acquisition based on the user metrics;
training a first machine learning model to generate a predicted probability of a user action, using a first regression-based algorithm, based on the first set of target variables to predict a probability of a user purchase;
identifying a second set of target variables directed to optimizing revenue resulting from the user action based on the user metrics;
training a second machine learning model, using a second regression-based algorithm, based on the second set of target variables to predict an expected value of the user purchase, wherein the second set of target variables is distinct from the first set of target variables; and
providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model and the expected value of the user purchase predicted by the trained second machine learning model, wherein the first machine learning model and the second machine learning model are retrained continuously or on a scheduled basis, and the aggregated set of data of the stored user data is updated based on the retraining.
When evaluating the bolded limitations of the claims under the broadest reasonable interpretation in light of the specification, it is clear that representative claims 1, 8, and 16 recite an abstract idea under the category of “certain methods of organizing human activity.” This abstract idea grouping found in MPEP 2106.04(a)(2)(II) includes concepts related to “fundamental economic principles or practices,” “commercial or legal interactions,” and “managing personal behavior or relationships or interactions between people.” The present invention falls under “Fundamental Economic Practices or Principles” because it describes a concept related to commerce, namely forecasting a return on investment based on the actions of a user. The MPEP clarifies “the term “fundamental is not used in the sense of necessarily being “old” or “well-known,” and estimating a return on investment based on the probability of a user making a purchase and an estimate of the purchase being made is an example of a fundamental economic practices. The use of mathematical models and algorithms does not change the claims categorization as an abstract idea. MPEP 2106.04(a)(2)(II)(A) provides “Another example of a case identifying a claim as reciting a fundamental economic practice is Bancorp Services., L.L.C. v. Sun Life Assurance Co. of Canada (U.S.), 687 F.3d 1266, 103 USPQ2d 1425 (Fed. Cir. 2012)... The court described the claims as an "attempt to patent the use of the abstract idea of [managing a stable value protected life insurance policy] and then instruct the use of well-known [calculations] to help establish some of the inputs into the equation." 687 F.3d at 1278, 103 USPQ2d at 1433 (alterations in original) (citing Bilski).” Therefore, the claims recite an abstract idea directed to “predicting a return on investment based on historic data such as a user’s actions.”
The claims also fall under the subcategory “commercial or legal interactions” which includes “agreements in the form of contracts, legal obligations, advertising, marketing or sales activities or behaviors, and business relations.” Determining a return on investment through user’s actions can be considered marketing, a sales activity, or a business relation. MPEP 2106.04(a)(2)(II)(B) states, “Other examples of subject matter where the commercial or legal interaction is advertising, marketing or sales activities or behaviors include: ...ii. using an algorithm for determining the optimal number of visits by a business representative to a client, In re Maucorps, 609 F.2d 481, 485, 203 USPQ 812, 816 (CCPA 1979);” In this example, similar to the present disclosure, use of an algorithm to determine a particular number, such as a return on investment, is still an abstract idea.
Step 2A Prong 2: Does the claim recite additional elements that integrate the judicial exception into a practical application?
Claims 1, 8, and 16 recite the following additional elements:
(a)-computer system in claims 1, 8, and 16
(b)-machine learning in claims 1, 8, and 16
(c)-servers over a network in claim 8
(d)-a web server in claim 8
(e)-a memory in claim 8 and 16
(f)-processor in claim 8
(g)-training signals in claim 8
The additional elements (a) and (c) - (f) are no more than a recitation of the words “apply it” (or an equivalent) or mere instructions to implement an abstract idea or other exception on a computer on its ordinary capacity. In this case, the abstract idea of “predicting a return on investment based on historic data such as a user’s actions” is being performed on ordinary computing components such as a computer system, servers, network, a web server, a memory and processors. Please see MPEP 2106.05(f) for more information on Mere Instructions to Apply An Exception. These computing devices are operating in their ordinary capacity as evident in the disclosure, wherein the device seen in [0017], “A user device 150 may include, among other things, one or more computing devices, such as a smartphone or other hand-held device (e.g., a tablet or reader), desktop computer, laptop computer, touchscreen device, or any other appropriate device capable of receiving, processing, and outputting digital information via network 130.” This is simply a smartphone and a typical computer layout performing steps that are well within their ordinary function.
Furthermore, additional elements (b) and (g) are mere example of generally linking the abstract idea to a particular technological environment or field of use, as outlined in MPEP 2106.05(h). In this case, the abstract idea is generally linked to the field of machine learning. The present invention simply uses machine learning to perform the data functions associated with performing the prediction of the ROI. “Training signals” are still a general link to machine learning, because its broadest reasonable interpretation includes any form of data that is used for training the model. Machine learning is known to be used to make predictions, and is merely being used as a black box model in which the abstract idea is performed. Even when considering the additional limitations of claim 16, wherein the first machine learning model and the second machine learning model are retrained continuously or on a scheduled basis, and the aggregated set of data of the stored user data is updated based on the retraining, it is a still no more than a general link because updating and retraining a model is inherent to the field of machine learning, hence why it is called “machine learning.”
Therefore, the claims do not meaningfully limit the abstract idea on the technological field. Therefore, the additional elements of the claims do not integrate the abstract idea into a practical application.
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception?
Continuing the analysis, the additional elements of claim 1, 16, and 17 are reanalyzed:
(a)-computer system in claims 1, 8, and 16
(b)-machine learning in claims 1, 8, and 16
(c)-servers over a network in claim 8
(d)-a web server in claim 8
(e)-a memory in claim 8 and 16
(f)-processor in claim 8
(g)-training signals in claim 8
When analyzed individually or in combination, these additional elements have not been found to include significantly more for the same reasons set forth in the Prong 2 rejection, specifically because additional elements (a) and (c)-(f) are generic computing devices being used in their ordinary capacity to carry out the abstract idea(see MPEP 2106.05(f). Furthermore, no improvements to these generic computing devices have been purported since they are performing functions well within their ordinary capacity(A server transmitting data over a network). In addition, the abstract idea is generally applied to the technological environment of machine learning (See MPEP 2106.05(h)). No improvement in field of machine learning have been purported as well, therefore in accordance with MPEP 2106.05(a), the claims do not integrate the abstract idea into a practical application or provide significantly more.
Regarding Dependent Claims 2, 3, 5-7, 9-15, and 17-19:
Dependent claims 2, 3, 10 - 12, 18, and 19 essentially further limit the “identifying features,” “training signals,” or “target variables” to include things like user’s past activity, purchase price, or the frequency of user’s actions. These limitations combined with the independent claims are still recited to an abstract idea categorized as “fundamental economic practices” or “commercial or legal interactions.” This is simply more of the same abstract idea of “predicting a return on investment based on historic data” because it is still using historic data, and only further specifies the type, or source of data being used. Furthermore, the additional elements repeated in these dependent claims are still examples of mere instructions to perform an abstract idea on computers as outlined in MPEP 2106.05(f) or a general link to machine learning as outlined in MPEP 2106.05(h). Therefore the claims do not integrate the abstract idea into a practical application or provide significantly more.
Claims 5 and 13 simply further limit the regression-based algorithms to either a logistic regression model or a linear regression model. This is still more of the same abstract idea of “predicting a return on investment based on historic data” because specifying the type of algorithm being used to perform an abstract idea is still an abstract, especially when the algorithms recited are as general as “logistic regression” or “linear regression.” There are no additional elements to consider therefore the claims do not integrate the abstract idea into a practical application or provide significantly more.
Claims 6, 7, 14, and 15 also further limit the “identifying features,” “training signals,” or “target variables” to specifically further describe the data being used, such as “location of the user” or “location of a set of property listings viewed by the users.” Since these further limitations are still an example of limiting the type of data or the source of the data, it is still more of the same abstract idea of “predicting a return on investment based on historic data.” Furthermore, the additional elements repeated in these dependent claims are still examples of mere instructions to perform an abstract idea on computers as outlined in MPEP 2106.05(f) or a general link to machine learning as outlined in MPEP 2106.05(h). Therefore the claims do not integrate the abstract idea into a practical application or provide significantly more.
Claims 9 and 17 add the additional steps of “obtaining real time data,” applying the machine learning algorithms to the aggregated user metrics and real time data to calculate the predicted probability, and predicted value. These additional steps still describe an abstract idea reciting “certain methods of organizing human activity” because they are still a fundamental economic practice of estimating value or estimating customer conversion. They are still an “commercial or legal interaction” because it takes user metrics and real time data to inform the business of the effectiveness of their current business practices. Furthermore, the additional elements repeated in these dependent claims are still examples of mere instructions to perform an abstract idea on computers as outlined in MPEP 2106.05(f) or a general link to machine learning as outlined in MPEP 2106.05(h). Therefore the claims do not integrate the abstract idea into a practical application or provide significantly more.
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.
The factual inquiries 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 – 3, 8 – 12, & 16 – 18 are rejected under 35 U.S.C. 103 as being unpatentable over Martine et al. (US 20190065978 A1) hereinafter Martine, in view of Zeldin et al. (US 20190005575 A1) hereinafter Zeldin.
Regarding Claim 1:
Martine discloses a system that predicts the user intent to take an action to deliver content items. This prediction is done by determining a plurality of relevant features and their historic association with content items, then detecting those actions and determining a confidence score of the user performing the action. Martine teaches:
- A method for determining a predicted value of a user purchase via a computer system, the method comprising: (Martine [0007] The acquired plurality of features for the tracking pixels can be utilized to train at least one machine learning model. In other words, the acquired plurality of features for the tracking pixels can be utilized as training data to build, develop, train, improve, and/or refine the at least one machine learning model. In some instances, the machine learning model can be trained to recognize, determine, and/or predict whether or not a particular user intends to produce a conversion (e.g., make a purchase). Moreover, in some implementations, interaction data associated with a user of a social networking system can be acquired. [0026] In various embodiments, the content store 210 includes multiple campaigns, which each include one or more content items. In various embodiments, a campaign in associated with one or more characteristics that are attributed to each content item of the campaign. For example, a bid amount associated with a campaign is associated with each content item of the campaign. Similarly, an objective associated with a campaign is associated with each content item of the campaign.)
-storing a first plurality of user metrics in a raw data format, the first plurality of user metrics relating to a user’s activity on the computer system; (Martine [0005] The online system can enable tracking pixels, web beacons, and/or other portions of computer code to be included in a third party web resource, such as a third party website. When users of the online system perform certain actions at landing pages or other web pages of third party websites, the tracking pixels can be triggered (i.e., executed, initiated, fired, etc.). A triggered tracking pixel can provide to the online system various types of data, such as information associated with a third party website (e.g., information associated with a landing page of the third party website), information associated with a user utilizing the third party website, and/or information associated with an interaction or action performed by the user with respect to the third party web site, etc. As another example, data can be collected as a mobile application event from the mobile application of the third party that is configured to use a software development kit (SDK) or application programming interface (API) associated with the online system for delivering data about user interactions on the mobile app. [0007] Moreover, in some implementations, interaction data associated with a user of a social networking system can be acquired. For instance, the disclosed technology can receive, obtain, and/or otherwise acquire historical web visitation data for the user based on the firing or triggering of various tracking pixels at various landing pages over a period of time. The interaction data associated with the user (e.g., web visitation data) can be applied to the machine learning model trained based on the plurality of features for each tracking pixel in the set of tracking pixels.) Martine’s tracking of pixel’s, and all of the actions above are examples of raw data, therefore these forms of data (also referred to as interaction data) is mapped to the first plurality of user metrics.
-storing a second plurality of user metrics associated with the user’s activity on the computer system within a window of time, the second plurality of user metrics being generated by aggregation of data in the first plurality of user metrics; (Martine[0007] Moreover, in some implementations, interaction data associated with a user of a social networking system can be acquired. For instance, the disclosed technology can receive, obtain, and/or otherwise acquire historical web visitation data for the user based on the firing or triggering of various tracking pixels at various landing pages over a period of time. [0048] Continuing with FIG. 3, the interaction data module 306 can be configured to facilitate generating or acquiring interaction data associated with a user of an online system or a social networking system. Moreover, the interaction data module 306 can generate, create, identify, or otherwise acquire a plurality of features for the user based on interaction data associated with the user relating to prior interactions by the user that relate to content provided to the user that ultimately led to the user taking a previous particular action. In some instances, the interaction data module 306 can receive, obtain, or otherwise acquire interaction data associated with the user based on receiving information associated with one or more tracking pixels that have fired due to the user interacting with one or more third party web resources, such as one or more third party landing pages. For example, when a user clicks or taps on a button to make a purchase at a landing page, a tracking pixel implemented at the landing page can be instructed to fire or execute. The fired tracking pixel can cause information about the purchase event, information about the time of the user interaction (e.g., click, tap, visit), information about the duration of the user interaction with the landing page, information about one or more properties of the landing page, information about one or more properties of a content item that enabled the user to access or reach the landing page, information about the user, and/or other information etc., to be transmitted to the online system 140 (e.g., to the interaction data module 306 of the online system 140).) The Broadest Reasonable Interpretation(BRI) of this limitation is any data specific about a user activities within a set amount of time, in a format that can be directly applied to train a model. Since the plurality of features based on the interaction is mapped to the second plurality of user metrics, this limitation is anticipated by Martine.
-grouping the second plurality of user metrics into one or more features, each feature corresponding to a statistic of the data in the second plurality of user metrics; (Martine [0042] A second collection of features (e.g., attributes, characteristics, properties, metadata, etc.) associated with the set of landing pages can be identified, determined, or otherwise acquired. In this example, the plurality of features for each tracking pixel can be identified, determined, generated, or otherwise acquired from at least some of the first collection of features and/or the second collection of features. In some cases, features for the content items and landing pages can be created based on, for example, human raters analyzing the content items and landing pages to gather data and label the purpose of each (such as whether they encourage a user to install an application, sign up for a membership, to make a purchase, or otherwise). In one instance, human raters can also verify the accuracy of pixels used by third parties to detect actions by users (e.g., whether a pixel correctly reports that a user had a purchase event). Many variations are possible.) Martine’s labelling the data falls within the scope of the ”grouping” limitation, with the features corresponding to a statistic.
-training a first machine learning model, using a first regression-based algorithm, based on the one or more features by using a first set of feature-specific weighting that distinguishes between the one or more features to predict a probability of the user purchase; (Martine [0043] In some embodiments, the machine learning module 304 can facilitate training at least one machine learning model based on (i.e., based at least in part on) the generated or acquired plurality of features for each tracking pixel in the set of tracking pixels. The generated/acquired plurality of features for each tracking pixel can include, can incorporate, or can be derived from content item attributes and/or landing page attributes. The machine learning module 304 can, for instance, train a machine learning model based on the features generated about what particular action a given content item and landing page associated with each tracking pixel is directed to getting a user to take. [0052] The one or more weights applied to the one or more features for the particular tracking pixel can be based on how accurate, applicable, and/or useful, etc., the particular tracking was determined to be from the review. Moreover, the machine learning model can be trained based on the one or more features subsequent to the one or more weights being applied. As such, the training of the machine learning model can disregard or discount features of tracking pixels that are insignificant, irrelevant, inappropriate and/or otherwise unsuitable (e.g., based on lower weights applied to such tracking pixels). [0046] Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression, Martine [0035] the interaction data can be used to train another model specific to a user that predicts user intent, such as whether a user likely intends to purchase a product based on the user taking certain actions that match those taken in the past right before a user purchased a product. See [0043] above [0046] Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression,) The weights in Martine [0052] satisfy the “feature-specific” weighting limitation because they are applied to particular features based on their accuracy. Furthermore, the training of the first model is based on the one or more features. The probability of the user purchase is taught in Martine [0035].
-training a second machine learning model, using a second regression-based algorithm (Martine See [0043] above [0046] Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression,) Martine’s step of “training another model” is mapped to the limitation above. Since “logistic regression” is suggested as one of the machine learning algorithms that can be used, then we know that this training is done using regression-based algorithms
-providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchased predicted by the trained first machine learning model. (Martine [0022] The bid amount is included in a content item by a user and is used to determine an expected value, such as monetary compensation, provided by an advertiser to the online system 140 if content in the content item is presented to a user, if the content in the content item receives a user interaction when presented, or if any suitable condition is satisfied when content in the content item is presented to a user... In some embodiments, the expected value to the online system 140 of presenting the content from the content item may be determined by multiplying the bid amount by a probability of the content of the content item being accessed by a user. [0024] Example objectives include installing an application associated with a content item, indicating a preference for a content item, sharing a content item with other users, interacting with an object associated with a content item, or performing any other suitable interaction... Additionally, the online system 140 receives compensation from a user associated with content item as online system users perform interactions with a content item that satisfy the objective included in the content item. [0054] For example, the level of specificity can indicate that the user has an intention to purchase a specific product, to purchase a product(s) having a specific brand, to purchase a product(s) produced from a specific manufacturer, to purchase a product(s) offered by a specific retailer, or to purchase a product(s) within a specific category/type of products, etc.) The first machine learning model in Martine is used to determine the intent(the likelihood of a user taking an action), which is then used to calculate the probability of a user accessing the content item.
However, Martine fails to teach:
-the training a second machine learning model is based on the one or more features by using a second set of feature-specific weighting that distinguishes between the one or more features to predict an expected value of the user purchase;(The examiner agrees that Martine fails to teach that the first machine learning model and second machine learning model are trained on the same data set of features, as required in the amendment. In Martine, there is no second model that specifically calculates expected value of the user purchase.)
-wherein the second set of feature-specific weighting is distinct from the first set of feature-specific weighting; and
-that the providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model is also based on the expected value of the user purchase predicted by the trained second machine learning model.
However, Zeldin discloses an online system for calculating bids to display content items to users based on the value of a product and the likelihood of a viewing user purchasing a product. Zeldin teaches:
-the training a second machine learning model is based on the one or more features ... to predict an expected value of the user purchase; (Zeldin [0056] The online system 140 obtain 430 spending data from third party systems for users of the online system... The spending data and associated characteristics of the users are used to train a machine learning model that predicts a likelihood of a user taking a desired action with respect to the content item. In one embodiment, the desired action is the expected (or estimated) amount that a particular given user will spend on a product in response to being shown a content item describing the product. [0057] Accordingly, the online system 140 determines 440 an expected amount that a user will spend on a product in response to being shown the content item. The expected amount can be the value of the conversion associated with the value of a product or service described by the content item, the revenue generated by the conversion, the profit generated by the conversion, the impact of the conversion on a competitor of the third party system 130, or any other value. The expected amount that a user will spend in a conversion can be provided by the third party system 130 or determined by the online system 140 using a statistical formula, a machine learning algorithm, or any other relevant function or equation. [0006] How much the user is likely to spend in a conversion of the content item may be based on any number of user and content item-specific features. For example, the online system may generate and apply a machine learned module that considers both historical organic spending for a user and attributed spending. In one embodiment, the online system provides as inputs to the model features associated with organic spending (e.g., a user's top websites by total spend over number of days, a user's number of purchase events, etc.) and labels associated with attributed spending (e.g., impression occurrences, a monetary amount spent after each impression occurrence, etc.).) The broadest reasonable interpretation of the limitation above is the training of the second machine learning model (which is the model used for predicting expected value), is based on the same “one or more features” as the first model. As seen in [0056], both the model for predicting likelihood, and in [0057] the model for predicting expected amount use the same set of features which including organic spending and attributed spending. Therefore, Zeldin satisfies the limitation by using the same set of features to predict an expected value.
- by using a second set of feature-specific weighting that distinguishes between the one or more features(Zeldin [0043] FIG. 3 shows a flow diagram of model training process in accordance with various embodiments. The conversion value module 245 generates a model 315 that selects the optimal content item that will provide the third party system 130 with the highest return on investment, expect amount of user spend, or conversion value for presenting that content item to a particular user. The model 315 uses obtaining organic spending 305 for users of the online system 140 as inputs for predicting or estimating whether a user will purchase a product or how much a user will spend as a result of performing a conversion (e.g., from in-app purchases upon installing an application). As described above, the organic spending 305 information can be obtained via tracking pixels or reported from the third party system 130. The conversion value module 245 additionally uses attributed spending 310, as further described with respect to value attribution module 270. [0044] Accordingly, conversion value module 245 extracts feature values from the content items associated with the organic spending 305 and attributed spending 310 including characteristics of users making the individual purchases to determine the expect amount a particular viewing user will spend upon being presented with a given content item. An ordered list of the features for a content item is herein referred to as the feature vector for the content item. In one embodiment, the content delivery module applies dimensionality reduction (e.g., via linear discriminant analysis (LDA), principle component analysis (PCA), or the like) to reduce the amount of data in the feature vectors for content items to a smaller, more representative set of data. The model 315, when given a particular viewing user, will therefore output the expected user spend 320 by comparing the spending habits and characteristics of the particular viewing user to the characteristics and spending habits of other users of the online system 140. In one embodiment, the conversion value module 245 uses supervised machine learning to train the model with the feature vectors of the positive training set and the negative training set serving as the inputs. ) The BRI of the limitation above is that the training of the second model is based on a separate set of feature weightings. In view of the instant specification, a feature-specific weighing is a coefficient that defines the relevance of particular features of data to desired output (see [0033-0035]). In paragraph [0044] Zeldin describes the conversion value module which extracts feature values (which is mapped to feature-specific weightings), and using dimensionality reduction to reduce the amount of to more representative sets. Therefore, the model for determining the expected value is taught by Zeldin to be based on the one or more features ... to predict an expected value of the user purchase.
-wherein the second set of feature-specific weighting is distinct from the first set of feature-specific weighting; and (Zeldin [0045] The conversion likelihood module 250 calculates a likelihood or probability of the conversion, herein referred to as the “conversion likelihood,” of the content item by the viewing user. The conversion likelihood module 225 calculates the conversion likelihood based on user-specific information known by the online system 140. In one embodiment, the conversion likelihood module 225 receives profile information associated with the viewing user. The conversion likelihood is calculated separately for each viewing user or impression opportunity and can be specific to each viewing user or impression opportunity.) The broadest reasonable interpretation of the limitation above is that the feature-specific weights (feature values) of the first trained model and second trained model are different (despite being based on the same feature data set). Since Zeldin teaches a conversion value module that extracts feature values, which is a completely separate model from the first model as taught by Martine, then the limitation is satisfied because the models are distinct from each other, therefore, the weights are also distinct.
-that the providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model is also based on the expected value of the user purchase predicted by the trained second machine learning model. (Zeldin [0046] The expected value module 255 calculates the expected value of the conversion of the content item (“expected conversion value”). The expected conversion value is the estimated conversion value (or estimated amount a particular viewing user will spend) adjusted for the likelihood of the conversion. The expected conversion value is based on both the estimated conversion value and the conversion likelihood. In some embodiments, the expected conversion value is the product of the conversion likelihood and the estimated conversion value. [0043] In one embodiment, the conversion value module 245 applies machine learning techniques to generate a model that when applied to a set of content items, can select the optimal content item or set of content items that will provide the content provider with the highest return on the content provider's investment, spend, or conversion value for presenting that content item to a particular user or group of users. FIG. 3 shows a flow diagram of model training process in accordance with various embodiments. The conversion value module 245 generates a model 315 that selects the optimal content item that will provide the third party system 130 with the highest return on investment, expect amount of user spend, or conversion value for presenting that content item to a particular user.) As seen in the citations above, the providing of content is based on “highest return on investment”, based on a combination of the probability of the user purchase(conversion likelihood), and the expected value of the user purchase(conversion value).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the present disclosure to modify Martine by adding the features of Zeldin, particularly that the second machine learning model uses one or more features to predict an expected value of a user purchase, by using a second set of feature-specific weighting that distinguishes between the one or more features, wherein the set of weights is different from the first set of weights, and the provided content is based on both the expected value of a user purchase and the likelihood of the user purchase. By adding Zeldin’s expected value module into Martine’s system, one would arrive at the predictable outcome of the two models being used to generate a predicted return on investment (ROI) value in real-time based on the probability of the user purchase, and the expected value of the user purchases predicted by the trained second machine learning. Since Martine already teaches an ROI based on probability and expected bid value, the modification is simply substituting Martine’s expected bid, with the predicted expected value generated by Zeldin’s module. One would have been motivated to perform this combination as it would yield the benefit of optimizing for the monetary value of conversions rather than merely the number of conversions alone (Zeldin [0006] The estimated amount the viewing user is likely to spend per conversion can then be added as a term to the bid determination equation to set the bid for the viewing user for a given content item such that the bid includes return on spend as part of the calculation. Accordingly, the online system allows third party systems to optimize for the monetary value of conversions of a content item, rather than merely the number of conversions.)
Regarding Claim 2:
The combination of Martine and Zeldin teach the method of claim 1,
Furthermore, Martine teaches:
wherein:
-the training of the first machine learning model comprises identifying features, of the one or more features, relevant to the user’s past activity on the computer system, and (Martine [0056] At block 406, a plurality of features for the user can be generated, identified, or acquired based on interaction data associated with the user relating to prior interactions by the user that relate to content provided to the user that ultimately led to the user taking a previous particular action.)
-wherein the training of the second machine learning model comprises identifying features, of the one or more features, relevant to the price of the user purchase. (Martine [0034] Furthermore, the intent determination module 230 can be configured to facilitate determining an intent of a user based on interaction data associated with the user... For example, if the user loads a shopping cart page (or shopping cart page portion) after putting a product in a shopping cart, the tracking pixel may report to the online system a shopping cart event for the user. Similarly, if the user loads a checkout page or a purchase confirmation page, the tracking pixel can report to the online system each of these events and certain details associated with each (e.g., user data, the product purchased, price, other user actions taken, etc.). [0035] Moreover, the intent determination module 230 can facilitate applying the interaction data associated with the user to a machine learning model trained based on (i.e., based at least in part on) the plurality of features for each tracking pixel in the set of tracking pixels. For instance, the plurality of features for the tracking pixels can be inputted as training data to train the machine learning model. The intent determination module 230 can further facilitate determining, based on applying the interaction data to the machine learning model, a prediction of an intent of the user to take action in association with a particular content item provided to the user via the social networking system. For example, the intent determination module 230 can facilitate determining a confidence score representing a likelihood that a conversion will result from the user being provided or presented with the particular content item via the social networking system. As another example, the interaction data can be used to train another model specific to a user that predicts user intent, such as whether a user likely intends to purchase a product based on the user taking certain actions that match those taken in the past right before a user purchased a product.)
Regarding Claim 3:
The combination of Martine and Zeldin teach the method of claim 1,
Furthermore, Martine teaches wherein:
-the training of the first machine learning model comprises identifying features, of the one or more features, relevant to a frequency of the user’s activity on the computer system. (Martine [0021] In some embodiments, objects are received from third party applications or third party applications separate from the online system 140. In one embodiment, objects in the content store 210 represent single pieces of content, or content “items.” Hence, online system users are encouraged to communicate with each other by posting text and content items of various types of media to the online system 140 through various communication channels. This increases the amount of interaction of users with each other and increases the frequency with which users interact within the online system 140. [0035] the plurality of features for the tracking pixels can be inputted as training data to train the machine learning model.)
Regarding Claim 8:
Martine teaches
-A system for obtaining a real-time computative prediction of a return on investment (ROI) value for a user based on user data provided by one or more servers over a network, the system comprising: (Martine [0004] An online system, such as a social networking system, predicts likely intent of a user in taking certain actions and delivers content items matching the user’s intent. To make this prediction effectively, the system trains one or more machine learning models to verify the accuracy of tracking pixels in reporting actions of users including by predicting the purpose of a content item or landing page and examining pixel fire data reported, and to predict a particular user’s intent based on prior actions by that user. Features are collected for training the one or more models via human rater analysis or via machine or other analysis of data related to the content items, landing page, pixel fire, user, etc. [0005] The online system can enable tracking pixels, web beacons, and/or other portions of computer code to be included in a third party web resource, such as a third party website. When users of the online system perform certain actions at landing pages or other web pages of third party websites, the tracking pixels can be triggered (i.e., executed, initiated, fired, etc.).) Throughout Martine’s disclosure, it is evident that these systems are used in real time as the user interacts with the pages and the data is fed into the machine learning algorithm to generate changes immediately.
-a web server; (Martine [0018] and a web server 235.)
-a memory configured to store a plurality of user data in a raw data format, (Martine [0018] The online system 140 shown in FIG. 2 can include a user profile store 205, a content store 210, an action logger 215, an action log 220, an edge store 225,)
-the plurality of user data relating to a user’s activity on the system, the plurality of user data being obtained from the web server; (Martine [0005] The online system can enable tracking pixels, web beacons, and/or other portions of computer code to be included in a third party web resource, such as a third party website. When users of the online system perform certain actions at landing pages or other web pages of third party websites, the tracking pixels can be triggered (i.e., executed, initiated, fired, etc.). A triggered tracking pixel can provide to the online system various types of data, such as information associated with a third party website (e.g., information associated with a landing page of the third party website), information associated with a user utilizing the third party website, and/or information associated with an interaction or action performed by the user with respect to the third party web site, etc. As another example, data can be collected as a mobile application event from the mobile application of the third party that is configured to use a software development kit (SDK) or application programming interface (API) associated with the online system for delivering data about user interactions on the mobile app. [0007] Moreover, in some implementations, interaction data associated with a user of a social networking system can be acquired. For instance, the disclosed technology can receive, obtain, and/or otherwise acquire historical web visitation data for the user based on the firing or triggering of various tracking pixels at various landing pages over a period of time. The interaction data associated with the user (e.g., web visitation data) can be applied to the machine learning model trained based on the plurality of features for each tracking pixel in the set of tracking pixels.)
-and at least one processor configured to: transform the plurality of user data into a set of aggregated user metrics associated with the user’s activity on the system within a window of time; (Martine [0007] Moreover, in some implementations, interaction data associated with a user of a social networking system can be acquired. For instance, the disclosed technology can receive, obtain, and/or otherwise acquire historical web visitation data for the user based on the firing or triggering of various tracking pixels at various landing pages over a period of time. [0048] Continuing with FIG. 3, the interaction data module 306 can be configured to facilitate generating or acquiring interaction data associated with a user of an online system or a social networking system. Moreover, the interaction data module 306 can generate, create, identify, or otherwise acquire a plurality of features for the user based on interaction data associated with the user relating to prior interactions by the user that relate to content provided to the user that ultimately led to the user taking a previous particular action. In some instances, the interaction data module 306 can receive, obtain, or otherwise acquire interaction data associated with the user based on receiving information associated with one or more tracking pixels that have fired due to the user interacting with one or more third party web resources, such as one or more third party landing pages. For example, when a user clicks or taps on a button to make a purchase at a landing page, a tracking pixel implemented at the landing page can be instructed to fire or execute. The fired tracking pixel can cause information about the purchase event, information about the time of the user interaction (e.g., click, tap, visit), information about the duration of the user interaction with the landing page, information about one or more properties of the landing page, information about one or more properties of a content item that enabled the user to access or reach the landing page, information about the user, and/or other information etc., to be transmitted to the online system 140 (e.g., to the interaction data module 306 of the online system 140).) The Broadest Reasonable Interpretation(BRI) of this limitation is any data specific about a user activities within a set amount of time, in a format that can be directly applied to train a model. Since the plurality of features based on the interaction is mapped to the second plurality of user metrics, this limitation is anticipated by Martine.) The Broadest Reasonable Interpretation(BRI) of this limitation is any data specific about a user activities within a set amount of time, in a format that can be directly applied to train a model. Since Martine teaches this above, this limitation is anticipated by Martine.
- store the aggregated user metrics in the memory;(Martine [0019] Each user of the online system 140 is associated with a user profile, which is stored in the user profile store 205. A user profile includes declarative information about the user that was explicitly shared by the user and may also include profile information inferred by the online system 140. In one embodiment, a user profile includes multiple data fields, each describing one or more attributes of the corresponding online system user. [0028] The action logger 215 receives communications about user actions internal to and/or external to the online system 140, populating the action log 220 with information about user actions. Examples of actions include adding a connection to another user, sending a message to another user, uploading an image, reading a message from another user, viewing content associated with another user, and attending an event posted by another user. In addition, a number of actions may involve an object and one or more particular users, so these actions are associated with the particular users as well and stored in the action log 220.)
-categorize the aggregated user metrics into one or more training signals; (Martine [0035] Moreover, the intent determination module 230 can facilitate applying the interaction data associated with the user to a machine learning model trained based on (i.e., based at least in part on) the plurality of features for each tracking pixel in the set of tracking pixels. For instance, the plurality of features for the tracking pixels can be inputted as training data to train the machine learning model. [0042] A second collection of features (e.g., attributes, characteristics, properties, metadata, etc.) associated with the set of landing pages can be identified, determined, or otherwise acquired. In this example, the plurality of features for each tracking pixel can be identified, determined, generated, or otherwise acquired from at least some of the first collection of features and/or the second collection of features. In some cases, features for the content items and landing pages can be created based on, for example, human raters analyzing the content items and landing pages to gather data and label the purpose of each (such as whether they encourage a user to install an application, sign up for a membership, to make a purchase, or otherwise). In one instance, human raters can also verify the accuracy of pixels used by third parties to detect actions by users (e.g., whether a pixel correctly reports that a user had a purchase event). Many variations are possible.) The Broadest Reasonable Interpretation of “training signals” is in view of the specification [0030], “The training data330 takes the form of "features", or signals fed to the models for training and prediction.” Therefore, training signals are interpreted as any signal used to train the data, such as “features.” Martine’s labelling the data falls within the scope of the ”grouping” limitation, with the features corresponding to a statistic. Martine [0042] shows an example of categorizing the features into labels.
-train a first machine learning model, using a first regression-based algorithm, based on the one or more training signals by using a first set of weighted multipliers to predict a probability of a user purchase; (Martine [0043] In some embodiments, the machine learning module 304 can facilitate training at least one machine learning model based on (i.e., based at least in part on) the generated or acquired plurality of features for each tracking pixel in the set of tracking pixels. The generated/acquired plurality of features for each tracking pixel can include, can incorporate, or can be derived from content item attributes and/or landing page attributes. The machine learning module 304 can, for instance, train a machine learning model based on the features generated about what particular action a given content item and landing page associated with each tracking pixel is directed to getting a user to take. [0052] The one or more weights applied to the one or more features for the particular tracking pixel can be based on how accurate, applicable, and/or useful, etc., the particular tracking was determined to be from the review. Moreover, the machine learning model can be trained based on the one or more features subsequent to the one or more weights being applied. As such, the training of the machine learning model can disregard or discount features of tracking pixels that are insignificant, irrelevant, inappropriate and/or otherwise unsuitable (e.g., based on lower weights applied to such tracking pixels). [0046] Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression, Martine [0035] the interaction data can be used to train another model specific to a user that predicts user intent, such as whether a user likely intends to purchase a product based on the user taking certain actions that match those taken in the past right before a user purchased a product. See [0043] above [0046] Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression,) The weights in Martine [0052] satisfy the “feature-specific” weighting limitation because they are applied to particular features based on their accuracy. Furthermore, the training of the first model is based on the one or more features. The probability of the user purchase is taught in Martine [0035].
-train a second machine learning model based on the second set of weighted multipliers; (Martine [0043] In some cases, the same or a separate machine learning model can also be trained based on user attributes. For example, the machine learning model can be further trained based on features generated for the user to predict an intent of the user to take a future particular action based on the user having again had interactions similar to those that ultimately led to the user taking the previous particular action. The machine learning module 304 can apply or utilize one or more machine learning techniques to generate the machine learning model, such as an intent determination model. When applied with (i.e., inputted with) user interaction data, the model can output indications of whether a user has an intention to take action with respect to one or more content items presented to the user. [0046] Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression,) Martine’s step of “training another model” is mapped to the limitation above. Since “logistic regression” is suggested as one of the machine learning algorithms that can be used, then we know that this training is done using regression-based algorithms
-providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchased predicted by the trained first machine learning model. (Martine [0022] The bid amount is included in a content item by a user and is used to determine an expected value, such as monetary compensation, provided by an advertiser to the online system 140 if content in the content item is presented to a user, if the content in the content item receives a user interaction when presented, or if any suitable condition is satisfied when content in the content item is presented to a user... In some embodiments, the expected value to the online system 140 of presenting the content from the content item may be determined by multiplying the bid amount by a probability of the content of the content item being accessed by a user. [0024] Example objectives include installing an application associated with a content item, indicating a preference for a content item, sharing a content item with other users, interacting with an object associated with a content item, or performing any other suitable interaction... Additionally, the online system 140 receives compensation from a user associated with content item as online system users perform interactions with a content item that satisfy the objective included in the content item. [0054] For example, the level of specificity can indicate that the user has an intention to purchase a specific product, to purchase a product(s) having a specific brand, to purchase a product(s) produced from a specific manufacturer, to purchase a product(s) offered by a specific retailer, or to purchase a product(s) within a specific category/type of products, etc.) The first machine learning model in Martine is used to determine the intent(the likelihood of a user taking an action), which is then used to calculate the probability of a user accessing the content item.
However, Martine fails to teach:
-the “train a second machine learning model” step is trained using a second regression-based algorithm, based on the one or more training signals by using a second set of weighted multipliers to predict a value of the user purchase,
-wherein the second set of weighted multipliers is distinct from the first set of weighted multipliers; and
-that the providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model is also based on the expected value of the user purchase predicted by the trained second machine learning model.
However, Zeldin teaches:
-the “train a second machine learning model” step is trained using a second regression-based algorithm, (Zeldin [0044] In one embodiment, the conversion value module 245 uses supervised machine learning to train the model with the feature vectors of the positive training set and the negative training set serving as the inputs. Different machine learning techniques—such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression, naïve Bayes, memory-based learning, random forests, bagged trees, decision trees, boosted trees, or boosted stumps—may be used in different embodiments that make use of a machine learned model. The model, when applied to the feature vector extracted from a content item, outputs an indication of whether the content item has the property in question, such as a Boolean yes/no estimate, or a scalar value representing a probability.)
- based on the one or more training signals by using a second set of weighted multipliers to predict a value of the user purchase, (Zeldin [0043] FIG. 3 shows a flow diagram of model training process in accordance with various embodiments. The conversion value module 245 generates a model 315 that selects the optimal content item that will provide the third party system 130 with the highest return on investment, expect amount of user spend, or conversion value for presenting that content item to a particular user. The model 315 uses obtaining organic spending 305 for users of the online system 140 as inputs for predicting or estimating whether a user will purchase a product or how much a user will spend as a result of performing a conversion (e.g., from in-app purchases upon installing an application). As described above, the organic spending 305 information can be obtained via tracking pixels or reported from the third party system 130. The conversion value module 245 additionally uses attributed spending 310, as further described with respect to value attribution module 270. [0044] Accordingly, conversion value module 245 extracts feature values from the content items associated with the organic spending 305 and attributed spending 310 including characteristics of users making the individual purchases to determine the expect amount a particular viewing user will spend upon being presented with a given content item. An ordered list of the features for a content item is herein referred to as the feature vector for the content item. In one embodiment, the content delivery module applies dimensionality reduction (e.g., via linear discriminant analysis (LDA), principle component analysis (PCA), or the like) to reduce the amount of data in the feature vectors for content items to a smaller, more representative set of data. The model 315, when given a particular viewing user, will therefore output the expected user spend 320 by comparing the spending habits and characteristics of the particular viewing user to the characteristics and spending habits of other users of the online system 140. In one embodiment, the conversion value module 245 uses supervised machine learning to train the model with the feature vectors of the positive training set and the negative training set serving as the inputs. ) The BRI of the limitation above is that the training of the second model is based on a separate set of feature weightings. In view of the instant specification, a feature-specific weighing is a coefficient that defines the relevance of particular features of data to desired output (see [0033-0035]). In paragraph [0044] Zeldin describes the conversion value module which extracts feature values (which is mapped to feature-specific weightings), and using dimensionality reduction to reduce the amount of to more representative sets. Therefore, the model for determining the expected value is taught by Zeldin to be based on the one or more training signals ... to predict an expected value of the user purchase.
-wherein the second set of weighted multipliers is distinct from the first set of weighted multipliers; and (Zeldin [0045] The conversion likelihood module 250 calculates a likelihood or probability of the conversion, herein referred to as the “conversion likelihood,” of the content item by the viewing user. The conversion likelihood module 225 calculates the conversion likelihood based on user-specific information known by the online system 140. In one embodiment, the conversion likelihood module 225 receives profile information associated with the viewing user. The conversion likelihood is calculated separately for each viewing user or impression opportunity and can be specific to each viewing user or impression opportunity.) The broadest reasonable interpretation of the limitation above is that the feature-specific weights (feature values) of the first trained model and second trained model are different (despite being based on the same feature data set). Since Zeldin teaches a conversion value module that extracts feature values, which is a completely separate model from the first model as taught by Martine, then the limitation is satisfied because the models are distinct from each other, therefore, the weights are also distinct.
-that the providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model is also based on the expected value of the user purchase predicted by the trained second machine learning model. (Zeldin [0046] The expected value module 255 calculates the expected value of the conversion of the content item (“expected conversion value”). The expected conversion value is the estimated conversion value (or estimated amount a particular viewing user will spend) adjusted for the likelihood of the conversion. The expected conversion value is based on both the estimated conversion value and the conversion likelihood. In some embodiments, the expected conversion value is the product of the conversion likelihood and the estimated conversion value. [0043] In one embodiment, the conversion value module 245 applies machine learning techniques to generate a model that when applied to a set of content items, can select the optimal content item or set of content items that will provide the content provider with the highest return on the content provider's investment, spend, or conversion value for presenting that content item to a particular user or group of users. FIG. 3 shows a flow diagram of model training process in accordance with various embodiments. The conversion value module 245 generates a model 315 that selects the optimal content item that will provide the third party system 130 with the highest return on investment, expect amount of user spend, or conversion value for presenting that content item to a particular user.) As seen in the citations above, the providing of content is based on “highest return on investment”, based on a combination of the probability of the user purchase(conversion likelihood), and the expected value of the user purchase(conversion value).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the present disclosure to modify Martine by adding the features of Zeldin, particularly that the second machine learning model uses one or more features to predict an expected value of a user purchase, by using a second set of feature-specific weighting that distinguishes between the one or more features, wherein the set of weights is different from the first set of weights, and the provided content is based on both the expected value of a user purchase and the likelihood of the user purchase. By adding Zeldin’s expected value module into Martine’s system, one would arrive at the predictable outcome of the two models being used to generate a predicted return on investment (ROI) value in real-time based on the probability of the user purchase, and the expected value of the user purchases predicted by the trained second machine learning. Since Martine already teaches an ROI based on probability and expected bid value, the modification is simply substituting Martine’s expected bid, with the predicted expected value generated by Zeldin’s module. One would have been motivated to perform this combination as it would yield the benefit of optimizing for the monetary value of conversions rather than merely the number of conversions alone (Zeldin [0006] The estimated amount the viewing user is likely to spend per conversion can then be added as a term to the bid determination equation to set the bid for the viewing user for a given content item such that the bid includes return on spend as part of the calculation. Accordingly, the online system allows third party systems to optimize for the monetary value of conversions of a content item, rather than merely the number of conversions.)
Regarding Claim 9:
The combination of Martine and Zeldin teaches The system of claim 8,
Furthermore, Martine teaches wherein
-the at least one processor is further configured to: obtain real-time data relating to the user’s activity on the system; and (Martine [0048] In some instances, the interaction data module 306 can receive, obtain, or otherwise acquire interaction data associated with the user based on receiving information associated with one or more tracking pixels that have fired due to the user interacting with one or more third party web resources, such as one or more third party landing pages. For example, when a user clicks or taps on a button to make a purchase at a landing page, a tracking pixel implemented at the landing page can be instructed to fire or execute. The fired tracking pixel can cause information about the purchase event, information about the time of the user interaction (e.g., click, tap, visit), information about the duration of the user interaction with the landing page, information about one or more properties of the landing page, information about one or more properties of a content item that enabled the user to access or reach the landing page, information about the user, and/or other information etc., to be transmitted to the online system 140 (e.g., to the interaction data module 306 of the online system 140).)
-store the real-time data in the memory, (Martine [0021] The content store 210 stores objects that each represent various types of content. Examples of content represented by an object include a page post, a status update, a photograph, a video, a link, a shared content item, a gaming application achievement, a check-in event at a local business, a brand page, or any other type of content. Online system users may create objects stored by the content store 210, such as status updates, photos tagged by users to be associated with other objects in the online system 140, events, groups or applications.)
-wherein the first machine learning model is applied to (a) the aggregated user metrics and (b) the real-time data to calculate the predicted probability, and (Martine [0046] The intent determination model, when applied to a feature vector extracted or acquired from user interaction data (which can be acquired based on tracking pixels fired, triggered, or otherwise caused by the user), outputs an indication of whether the user has a particular intention, such as a Boolean yes/no estimate of whether the user has an intention to take a particular action, or a scalar value representing a probability that the user has an intention to take a particular action, etc.)
-wherein the second machine learning model is applied to (a) the aggregated user metrics and (b) the real-time data to calculate the predicted value. (Martine [0022] One or more content items included in the content store 210 include content for presentation to a user and a bid amount. The content can be text, image, audio, video, or any other suitable data presented to a user. In various embodiments, the content also specifies a page of content. For example, a content item can include a landing page specifying a network address of a page of content to which a user is directed when the content item is accessed. The bid amount is included in a content item by a user and is used to determine an expected value, such as monetary compensation, provided by an advertiser to the online system 140 if content in the content item is presented to a user, if the content in the content item receives a user interaction when presented, or if any suitable condition is satisfied when content in the content item is presented to a user. For example, the bid amount included in a content item specifies a monetary amount that the online system 140 receives from a user who provided the content item to the online system 140 if content in the content item is displayed. In some embodiments, the expected value to the online system 140 of presenting the content from the content item may be determined by multiplying the bid amount by a probability of the content of the content item being accessed by a user.)
Regarding Claim 10:
The combination of Martine and Zeldin teaches The system of claim 8,
Furthermore, Martine teaches
- wherein generating the first set of weighted multipliers comprises identifying training signals relevant to the user’s past activity on the system. (Martine [0035] As another example, the interaction data can be used to train another model specific to a user that predicts user intent, such as whether a user likely intends to purchase a product based on the user taking certain actions that match those taken in the past right before a user purchased a product. More details regarding the intent determination module 230 are provided below with reference to FIG. 3. It should also be understood that many variations are possible. For instance, it should be appreciated that, in some embodiments, one or more functions of the intent determination module 230 can be performed by other modules/components of the online system 140. Also, in some implementations, the intent determination module 230 can perform one or more functions of another component(s)/module(s) in the online system 140. [0052] The review module 310 and the feature module 302 can be configured to work in conjunction to facilitate applying, based on the feedback from the review, one or more weights to one or more features for the particular tracking pixel. The one or more weights applied to the one or more features for the particular tracking pixel can be based on how accurate, applicable, and/or useful, etc., the particular tracking was determined to be from the review. Moreover, the machine learning model can be trained based on the one or more features subsequent to the one or more weights being applied. As such, the training of the machine learning model can disregard or discount features of tracking pixels that are insignificant, irrelevant, inappropriate and/or otherwise unsuitable (e.g., based on lower weights applied to such tracking pixels).)
Regarding Claim 11:
The combination of Martine and Zeldin teaches The system of claim 8,
Furthermore, Martine teaches
-wherein generating the first set of weighted multipliers comprises identifying training signals relevant to a frequency of the user’s activity on the system. (Martine [0032] An edge may include various features each representing characteristics of interactions between users, interactions between users and objects, or interactions between objects. For example, features included in an edge describe a rate of interaction between two users, how recently two users have interacted with each other, a rate or an amount of information retrieved by one user about an object, or numbers and types of comments posted by a user about an object. The features may also represent information describing a particular object or user. For example, a feature may represent the level of interest that a user has in a particular topic, the rate at which the user logs into the online system 140, or information describing demographic information about the user.) Martine’s “rate of interactions” is an example of a training signal related to frequency of a user’s activity.
Regarding Claim 12:
The combination of Martine and Zeldin teaches The system of claim 8,
Furthermore, Martine teaches,
- wherein generating the second set of weighted multipliers comprises identifying training signals relevant to a purchase price of the user purchase. (Martine [0034] For example, tracking pixels can be implemented at various landing pages or other web pages of a third party, and content items can be provided to users to enable the users to access the landing pages, which can cause the tracking pixels to be triggered, executed, or fired. Similarly, a tracking pixel can be fired as a user loads different web pages (or web page portions) of the third party website. For example, if the user loads a shopping cart page (or shopping cart page portion) after putting a product in a shopping cart, the tracking pixel may report to the online system a shopping cart event for the user. Similarly, if the user loads a checkout page or a purchase confirmation page, the tracking pixel can report to the online system each of these events and certain details associated with each (e.g., user data, the product purchased, price, other user actions taken, etc.).)
Regarding Claim 16:
Martine teaches A method comprising:
-storing, in a memory, user data relating to a user’s activity on a computer system; (Martine [0034] The intent determination module 230 can also facilitate acquiring interaction data associated with users of the online system 140 or the social networking system. In some instances, when a user of the social networking system visits or accesses landing pages at which tracking pixels are implemented, the tracking pixels can fire or execute, thereby causing information to be transmitted to and acquired by the social networking system (e.g., transmitted to and acquired by the intent determination module 230 of the social networking system). In some cases, for example, information or data can be collected/acquired as one or more mobile application events from a mobile application of a third party that is configured to use a software development kit (SDK) or application programming interface (API) associated with the online system for delivering data about user interactions on the mobile application.)
-storing, in a memory, user metrics associated with the user’s activity on the computer system within a window of time, the user metrics being generated by aggregating a set of data of the stored user data; (Martine [0007] Moreover, in some implementations, interaction data associated with a user of a social networking system can be acquired. For instance, the disclosed technology can receive, obtain, and/or otherwise acquire historical web visitation data for the user based on the firing or triggering of various tracking pixels at various landing pages over a period of time. The interaction data associated with the user (e.g., web visitation data) can be applied to the machine learning model trained based on the plurality of features for each tracking pixel in the set of tracking pixels.) The Broadest Reasonable Interpretation(BRI) of this limitation is any data specific about a user activities within a set amount of time, in a format that can be directly applied to train a model. Since Martine teaches this above, this limitation is anticipated by Martine.
-identifying a first set of target variables directed to optimizing user acquisition based on the user metrics; (Martine[0035] Moreover, the intent determination module 230 can facilitate applying the interaction data associated with the user to a machine learning model trained based on (i.e., based at least in part on) the plurality of features for each tracking pixel in the set of tracking pixels. For instance, the plurality of features for the tracking pixels can be inputted as training data to train the machine learning model. The intent determination module 230 can further facilitate determining, based on applying the interaction data to the machine learning model, a prediction of an intent of the user to take action in association with a particular content item provided to the user via the social networking system. [0042] In some cases, features for the content items and landing pages can be created based on, for example, human raters analyzing the content items and landing pages to gather data and label the purpose of each (such as whether they encourage a user to install an application, sign up for a membership, to make a purchase, or otherwise)) Encouraging the user to install an application or sign up for a member is mapped to “optimizing user acquisition.”
-training a first machine learning model to generate a predicted probability of a user action, using a first regression-based algorithm, based on the first set of target variables to predict a probability of a user purchase; (Martine [0035] Moreover, the intent determination module 230 can facilitate applying the interaction data associated with the user to a machine learning model trained based on (i.e., based at least in part on) the plurality of features for each tracking pixel in the set of tracking pixels. For instance, the plurality of features for the tracking pixels can be inputted as training data to train the machine learning model. [0046] In some implementations, the machine learning module 304 uses supervised machine learning to train the machine learning model (e.g., the intent determination model), with the feature vectors of the positive training set (and/or the negative training set) serving as the inputs. Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression,)
-identifying a second set of target variables directed to optimizing revenue resulting from the user action based on the user metrics; (Martine [0032] Each feature may be associated with a source object or user, a target object or user, and a feature value. A feature may be specified as an expression based on values describing the source object or user, the target object or user, or interactions between the source object or user and target object or user; hence, an edge may be represented as one or more feature expressions. [0040] The online system can then use this data received about the user to serve better content to the user in the future (e.g., since the online system has further data about products purchased or browsed that might be of interest), and can also use this in retargeting of that product to the user (e.g., where the user went to the product page on the third party site by clicking on an of the third party presented to the user in the online system). The online system can also use this data in conversion tracking and reporting results of advertising campaigns to the third party. For example, if the third party has spent money at the online system to have the online system serve ads for its products, and a particular user views an ad on the online system and then purchases the product advertised (possibly at some point later, and possibly on a different device), the online system can link the purchase/conversion to the ad originally shown on the online system. Thus, the online system can include this data in its reporting to the third party system of how many conversions the ad campaign received. [0046] The intent determination model, when applied to a feature vector extracted or acquired from user interaction data (which can be acquired based on tracking pixels fired, triggered, or otherwise caused by the user), outputs an indication of whether the user has a particular intention, such as a Boolean yes/no estimate of whether the user has an intention to take a particular action, or a scalar value representing a probability that the user has an intention to take a particular action, etc.)
-training a second machine learning model, using a second regression-based algorithm, based on the second set of target variables; (Martine [0043] In some cases, the same or a separate machine learning model can also be trained based on user attributes. For example, the machine learning model can be further trained based on features generated for the user to predict an intent of the user to take a future particular action based on the user having again had interactions similar to those that ultimately led to the user taking the previous particular action. The machine learning module 304 can apply or utilize one or more machine learning techniques to generate the machine learning model, such as an intent determination model. When applied with (i.e., inputted with) user interaction data, the model can output indications of whether a user has an intention to take action with respect to one or more content items presented to the user.)
-providing content related to a predicted return on investment (ROI) value in real-time based on the probability of the user purchase predicted by the trained first machine learning model (Martine [0022] The bid amount is included in a content item by a user and is used to determine an expected value, such as monetary compensation, provided by an advertiser to the online system 140 if content in the content item is presented to a user, if the content in the content item receives a user interaction when presented, or if any suitable condition is satisfied when content in the content item is presented to a user... In some embodiments, the expected value to the online system 140 of presenting the content from the content item may be determined by multiplying the bid amount by a probability of the content of the content item being accessed by a user. [0024] Example objectives include installing an application associated with a content item, indicating a preference for a content item, sharing a content item with other users, interacting with an object associated with a content item, or performing any other suitable interaction... Additionally, the online system 140 receives compensation from a user associated with content item as online system users perform interactions with a content item that satisfy the objective included in the content item. [0054] For example, the level of specificity can indicate that the user has an intention to purchase a specific product, to purchase a product(s) having a specific brand, to purchase a product(s) produced from a specific manufacturer, to purchase a product(s) offered by a specific retailer, or to purchase a product(s) within a specific category/type of products, etc.) The first machine learning model in Martine is used to determine the intent(the likelihood of a user taking an action), which is then used to calculate the probability of a user accessing the content item.
-wherein the first machine learning model and the second machine learning model are retrained continuously or on a scheduled basis, and(Martine [0056] At block 404, a machine learning model can be trained, generated, developed, or refined based on the features generated about what particular action a given content item and landing page associated with each tracking pixel is directed to getting a user to take. At block 406, a plurality of features for the user can be generated, identified, or acquired based on interaction data associated with the user relating to prior interactions by the user that relate to content provided to the user that ultimately led to the user taking a previous particular action. At block 408, the same or a separate machine learning model can be trained, generated, developed, or refined based on the features generated for the user to predict an intent of the user to take a future particular action based on the user having again had interactions similar to those that ultimately led to the user taking the previous particular action. [0047] In one embodiment, the machine learning module 304 iteratively re-trains the machine learning model (e.g., the intent determination model) until the occurrence of a stopping condition, such as the accuracy measurement indication that the model is sufficiently accurate, or a number of training rounds having taken place, etc.) The BRI of the limitation requires the first and second models to be retrained continuously OR on a scheduled basis. Though Martine does not teach a scheduled basis, Martine does teach that the models are “refined” based on interactions relating to prior interactions by the user. Therefore, Martine satisfies “retrained continuously” because Martine’s model refines the weights based on the updating data.
-the aggregated set of data of the stored user data is updated based on the retraining. (Martine [0047] In some embodiments, a validation set is formed from additional interaction data and/or tracking pixel data, other than those in the training set(s), which have already been determined to have, or to lack, the property(ies) in question. The machine learning module 304 can apply the trained intent determination model to the validation set to quantify the accuracy of the intent determination model. [0048] Continuing with FIG. 3, the interaction data module 306 can be configured to facilitate generating or acquiring interaction data associated with a user of an online system or a social networking system. Moreover, the interaction data module 306 can generate, create, identify, or otherwise acquire a plurality of features for the user based on interaction data associated with the user relating to prior interactions by the user that relate to content provided to the user that ultimately led to the user taking a previous particular action.) Martine’s generating or acquiring additional data (interaction data), is an example of “updating based on the retraining” because the scope of “based on the retraining” is broad enough such that Martine updating the data set in response to generating features satisfies the limitation.
However, Martine fails to teach:
-the training a second machine learning model step is done to predict an expected value of the user purchase, wherein the second set of target variables is distinct from the first set of target variables; and
-that the providing content step is also based on the expected value of the user purchase predicted by the trained second machine learning model,
However, Zeldin teaches:
-the training a second machine learning model step is done to predict an expected value of the user purchase, (Zeldin [0043] FIG. 3 shows a flow diagram of model training process in accordance with various embodiments. The conversion value module 245 generates a model 315 that selects the optimal content item that will provide the third party system 130 with the highest return on investment, expect amount of user spend, or conversion value for presenting that content item to a particular user. The model 315 uses obtaining organic spending 305 for users of the online system 140 as inputs for predicting or estimating whether a user will purchase a product or how much a user will spend as a result of performing a conversion (e.g., from in-app purchases upon installing an application). As described above, the organic spending 305 information can be obtained via tracking pixels or reported from the third party system 130. The conversion value module 245 additionally uses attributed spending 310, as further described with respect to value attribution module 270. [0044] Accordingly, conversion value module 245 extracts feature values from the content items associated with the organic spending 305 and attributed spending 310 including characteristics of users making the individual purchases to determine the expect amount a particular viewing user will spend upon being presented with a given content item. An ordered list of the features for a content item is herein referred to as the feature vector for the content item. In one embodiment, the content delivery module applies dimensionality reduction (e.g., via linear discriminant analysis (LDA), principle component analysis (PCA), or the like) to reduce the amount of data in the feature vectors for content items to a smaller, more representative set of data. The model 315, when given a particular viewing user, will therefore output the expected user spend 320 by comparing the spending habits and characteristics of the particular viewing user to the characteristics and spending habits of other users of the online system 140. In one embodiment, the conversion value module 245 uses supervised machine learning to train the model with the feature vectors of the positive training set and the negative training set serving as the inputs. ) The BRI of the limitation above is that the training of the second model is based on a separate set of feature weightings. In view of the instant specification, a feature-specific weighing is a coefficient that defines the relevance of particular features of data to desired output (see [0033-0035]). In paragraph [0044] Zeldin describes the conversion value module which extracts feature values (which is mapped to feature-specific weightings), and using dimensionality reduction to reduce the amount of to more representative sets. Therefore, the model for determining the expected value is taught by Zeldin to be based on the one or more training signals ... to predict an expected value of the user purchase.
-wherein the second set of target variables is distinct from the first set of target variables; and(Zeldin [0045] The conversion likelihood module 250 calculates a likelihood or probability of the conversion, herein referred to as the “conversion likelihood,” of the content item by the viewing user. The conversion likelihood module 225 calculates the conversion likelihood based on user-specific information known by the online system 140. In one embodiment, the conversion likelihood module 225 receives profile information associated with the viewing user. The conversion likelihood is calculated separately for each viewing user or impression opportunity and can be specific to each viewing user or impression opportunity.) The broadest reasonable interpretation of the limitation above is that the feature-specific weights (feature values) of the first trained model and second trained model are different (despite being based on the same feature data set). Since Zeldin teaches a conversion value module that extracts feature values, which is a completely separate model from the first model as taught by Martine, then the limitation is satisfied because the models are distinct from each other, therefore, the weights are also distinct.
-that the providing content step is also based on the expected value of the user purchase predicted by the trained second machine learning model, (Zeldin [0046] The expected value module 255 calculates the expected value of the conversion of the content item (“expected conversion value”). The expected conversion value is the estimated conversion value (or estimated amount a particular viewing user will spend) adjusted for the likelihood of the conversion. The expected conversion value is based on both the estimated conversion value and the conversion likelihood. In some embodiments, the expected conversion value is the product of the conversion likelihood and the estimated conversion value. [0043] In one embodiment, the conversion value module 245 applies machine learning techniques to generate a model that when applied to a set of content items, can select the optimal content item or set of content items that will provide the content provider with the highest return on the content provider's investment, spend, or conversion value for presenting that content item to a particular user or group of users. FIG. 3 shows a flow diagram of model training process in accordance with various embodiments. The conversion value module 245 generates a model 315 that selects the optimal content item that will provide the third party system 130 with the highest return on investment, expect amount of user spend, or conversion value for presenting that content item to a particular user.) As seen in the citations above, the providing of content is based on “highest return on investment”, based on a combination of the probability of the user purchase(conversion likelihood), and the expected value of the user purchase(conversion value).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the present disclosure to modify Martine by adding the features of Zeldin, particularly that the second machine learning model uses one or more features to predict an expected value of a user purchase, by using a second set of feature-specific weighting that distinguishes between the one or more features, wherein the set of weights is different from the first set of weights, and the provided content is based on both the expected value of a user purchase and the likelihood of the user purchase. By adding Zeldin’s expected value module into Martine’s system, one would arrive at the predictable outcome of the two models being used to generate a predicted return on investment (ROI) value in real-time based on the probability of the user purchase, and the expected value of the user purchases predicted by the trained second machine learning. Since Martine already teaches an ROI based on probability and expected bid value, the modification is simply substituting Martine’s expected bid, with the predicted expected value generated by Zeldin’s module. One would have been motivated to perform this combination as it would yield the benefit of optimizing for the monetary value of conversions rather than merely the number of conversions alone (Zeldin [0006] The estimated amount the viewing user is likely to spend per conversion can then be added as a term to the bid determination equation to set the bid for the viewing user for a given content item such that the bid includes return on spend as part of the calculation. Accordingly, the online system allows third party systems to optimize for the monetary value of conversions of a content item, rather than merely the number of conversions.)
Regarding Claim 17:
The combination of Martine and Zeldin teach The method of claim 16,
Furthermore, Martine teaches further comprising:
-obtaining real-time data relating to the user’s activity on the computer system, (Martine [0041] In some embodiments, an online system 140 (e.g., a social networking system) can provide users with one or more content items, such as posts, shares, and/or advertisements, etc. In some cases, when users access or interact with content items, the users can be directed to landing pages, such as landing pages of third party web resources (e.g., third party websites). The landing pages can include or can have implemented one or more tracking pixels provided via the online system 140. As discussed, when the users perform certain operations or take certain actions at the landing pages, the tracking pixels can execute or fire and can transmit information to the online system 140. For instance, when an event occurs (e.g., a user click or a user interaction) that causes a tracking pixel to fire, the tracking pixel can transmit data, such as a uniform resource locator (URL), a timestamp, and/or event data, etc., to the online system 140.)
-wherein the predicted probability of the user action is generated based on application of the first machine learning model to (a) the user metrics and (b) the real-time data, and (Martine [0046] In some implementations, the machine learning module 304 uses supervised machine learning to train the machine learning model (e.g., the intent determination model), with the feature vectors of the positive training set (and/or the negative training set) serving as the inputs. Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression, naive Bayes, memory-based learning, random forests, bagged trees, decision trees, boosted trees, and/or boosted stumps, may be used alone or in combination in different embodiments. The intent determination model, when applied to a feature vector extracted or acquired from user interaction data (which can be acquired based on tracking pixels fired, triggered, or otherwise caused by the user), outputs an indication of whether the user has a particular intention, such as a Boolean yes/no estimate of whether the user has an intention to take a particular action, or a scalar value representing a probability that the user has an intention to take a particular action, etc.)
-wherein the predicted ROI value is generated based on application of the second machine learning model to (a) the user metrics and (b) the real-time data. (Martine [0022] One or more content items included in the content store 210 include content for presentation to a user and a bid amount. The content can be text, image, audio, video, or any other suitable data presented to a user. In various embodiments, the content also specifies a page of content. For example, a content item can include a landing page specifying a network address of a page of content to which a user is directed when the content item is accessed. The bid amount is included in a content item by a user and is used to determine an expected value, such as monetary compensation, provided by an advertiser to the online system 140 if content in the content item is presented to a user, if the content in the content item receives a user interaction when presented, or if any suitable condition is satisfied when content in the content item is presented to a user. For example, the bid amount included in a content item specifies a monetary amount that the online system 140 receives from a user who provided the content item to the online system 140 if content in the content item is displayed. In some embodiments, the expected value to the online system 140 of presenting the content from the content item may be determined by multiplying the bid amount by a probability of the content of the content item being accessed by a user.)
Regarding Claim 18:
The combination of Martine and Zeldin teach The method of claim 16,
Furthermore, Martine teaches:
-wherein the first set of target variables directed to optimizing user acquisition relate to a frequency of the user’s activity on the computer system. (Martine [0032] An edge may include various features each representing characteristics of interactions between users, interactions between users and objects, or interactions between objects. For example, features included in an edge describe a rate of interaction between two users, how recently two users have interacted with each other, a rate or an amount of information retrieved by one user about an object, or numbers and types of comments posted by a user about an object. The features may also represent information describing a particular object or user. For example, a feature may represent the level of interest that a user has in a particular topic, the rate at which the user logs into the online system 140, or information describing demographic information about the user. Each feature may be associated with a source object or user, a target object or user, and a feature value. A feature may be specified as an expression based on values describing the source object or user, the target object or user, or interactions between the source object or user and target object or user; hence, an edge may be represented as one or more feature expressions.)
Claims 5 & 13 are rejected under 35 U.S.C. 103 as being unpatentable over Martine(US 20190065978 A1), in view of Zeldin (US 20190005575 A1), further in view of Takamatusu et al. (US 20180082388 A1) hereinafter Takamatsu.
Regarding Claims 5 and 13:
The combination of Martine and Zeldin teaches The method of claim 1, and The system of claim 8:
Furthermore, Martine teaches:
-wherein the first regression-based algorithm is a logistic regression model, and (Martine [0046] In some implementations, the machine learning module 304 uses supervised machine learning to train the machine learning model (e.g., the intent determination model), with the feature vectors of the positive training set (and/or the negative training set) serving as the inputs. Different machine learning techniques, such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression, naive Bayes, memory-based learning, random forests, bagged trees, decision trees, boosted trees, and/or boosted stumps, may be used alone or in combination in different embodiments.)
However, Martine and Zeldin fail to teach:
-the second regression-based algorithm is a linear regression model.
Alternatively, Takamatsu discloses a system which generates features to train a machine learning algorithm to output probability data related to completing a sale within a predetermined period of time which teaches:
-the second regression-based algorithm is a linear regression model. (Takamatsu [0097] The learning unit 3303 performs machine learning by using the feature value data 3113, and functions as a generation unit that calculates (generates) various types of parameters. For example, the learning unit 3303 calculates, by machine learning, various types of parameters that are used in a contract probability prediction model used in a contract probability prediction process by the predicting unit 3306. In the following, learning of the contract probability prediction model by the learning unit 3303 will be described specifically. Note that the learning method described below is an example, and is not necessarily limited thereto. [0098] First, the learning unit 3303 modelizes the decision method of contract period y as illustrated in the below formula 1. In the below formula 1, the contract period y indicates the number of days from the sales start day of the property to the contract, and x indicates a feature value vector of the property, and f(x) indicates a function that returns a real number value, and epsilon indicates noise.[Math.1] y=f(x)+ε formula 1 ...[0100] F(x) uses a linear regression function which is expressed as f(x)=w.sup.tx+w.sub.0.) Takamatsu’s learning unit is a second model that follows the first machine learning model and generates a “real number value” using linear regression.
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date to further modify Martine by substituting the algorithms used in Martine’s second machine learning algorithm with a linear regression algorithm as taught by Takamatsu. This combination would have the expected result of generating an expected value that results in a real number value in order to simplify the output data. One would be motivated to perform this combination as it would provide the benefit of simplifying the output data and increasing the accuracy of the prediction. (Takamatsu [0101])
Claims 6, 7, 14, 15, & 19 are rejected under 35 U.S.C. 103 as being unpatentable over Martine(US 20180082388 A1), in view of Zeldin (US 20190005575 A1), further in view of Xu et al. (US 20170178036 A1) hereinafter Xu.
Regarding Claims 6 and 14:
The combination of Martine and Zeldin teaches The combination of Martine and Zeldin teach The method of claim 16,
Furthermore, Martine teaches The method of claim 1, or The system of claim 8:
-wherein the first set of feature-specific weightings weighs features corresponding to one or more of the following items more heavily than features that do not correspond to one or more of the following items: a) user account history, b) past or historical user activity, c) recent user activity,(Martine [0007] For instance, the disclosed technology can receive, obtain, and/or otherwise acquire historical web visitation data for the user based on the firing or triggering of various tracking pixels at various landing pages over a period of time.)
However, Martine and Zeldin does not teach or suggest:
- wherein the user purchase relates to a booking of a property listing viewed by the user via the computer system; and
- d) availability of a set of property listings viewed by the user, e) location of the user, and f) location of the set of property listings viewed by the user. (Martine does not need to teach these variables, since only “one of more of the following items” is required by the limitation. However, for compact prosecution, it will be shown that Xu teaches these remaining items.)
Alternatively, Xu discloses a machine learning system of providing search results that optimizes the probability that a booking will result in a conversion which teaches:
- wherein the user purchase relates to a booking of a property listing viewed by the user via the computer system; and (Xu [0059] For a given listing 305, patterns may emerge with regard to the types of reservation requests 307 that are accepted by the host 303 and then booked by the guest 301 as well as the types of reservation requests 307 that are rejected by the host 303 associated with the listing 305 or otherwise are not booked after a guest inquiry. The booking conversion module 229 models the booking conversion of a host 303 of a particular listing 305 based on the acceptance patterns and/or booking patterns of reservation requests for the listing 305, and is one means for performing this function. The conversion model may be listing specific. Therefore, a different booking conversion model may be generated for each listing associated with a given host in the online booking system 111.)
- d) availability of a set of property listings viewed by the user (Xu [0048] The availability module 223 is configured to gather the listing availability form those other sites and to provide that information to the listing store 205 and/or the master calendar 211 for use in modeling the booking probability of the listing.)
-e) location of the user, and (Xu [0030] The guest store 201 persistently stores data describing users (i.e., guests) that inquire about listings for accommodation in the online booking system 111, and is one means for performing this function. Each guest is represented by a guest object 301, which may also be called a guest profile. The guest object 301 stores a unique identifier associated with a given guest and information about the guest. The information may include personal information such as name, user name, email address, location, phone number, gender, date of birth, personal description, education, work, reviews from other users, pictures, preferred language, and the like.)
-f) location of the set of property listings viewed by the user.(Xu [0041] The listing store 205 stores information about the accommodations offered by hosts through listings, and is one means for performing this function. Each offering of a given accommodation is represented by listing object 305. Information about a listing includes the location 351, price 353, unit type 355, amenities 357, and calendar 359. The listing store 205 may contain additional information such as a short description of the accommodation, a list of house rules, photographs, etc. Each listing 305 is assigned a unique listing ID. Each listing 305 is associated with a single host object 303.)
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date to modify Martine by applying the algorithms to data points generated by Xu relating to the booking of a property listing including property availability, user location, and property location. The combined invention would have the expected outcome of predicting the return on investment of property rental bookings. One would be motivated to perform this combination as it would provide the benefit of improving user experience and increasing conversion rates by predicting the user’s intent using data about their previous online interactions. (Xu [0020])
Regarding Claims 7:
The combination of Martine and Zeldin teach The method of claim 1:
Furthermore, Martine teaches:
-wherein the second set of feature-specific weightings weighs features (Martine [0052] The review module 310 and the feature module 302 can be configured to work in conjunction to facilitate applying, based on the feedback from the review, one or more weights to one or more features for the particular tracking pixel. The one or more weights applied to the one or more features for the particular tracking pixel can be based on how accurate, applicable, and/or useful, etc., the particular tracking was determined to be from the review. Moreover, the machine learning model can be trained based on the one or more features subsequent to the one or more weights being applied. As such, the training of the machine learning model can disregard or discount features of tracking pixels that are insignificant, irrelevant, inappropriate and/or otherwise unsuitable (e.g., based on lower weights applied to such tracking pixels).)
However, Martine and Zeldin does not teach or suggest:
- wherein the user purchase relates to a booking of a property listing viewed by the user via the computer system; and features corresponding to one or more of following items more heavily than features that do not correspond to one or more of the following items: a) location of a set of property listings viewed by the user, and b) a median price of the set of property listings viewed by the user.
Alternatively, Xu teaches:
- wherein the user purchase relates to a booking of a property listing viewed by the user via the computer system; and (Xu [0059] For a given listing 305, patterns may emerge with regard to the types of reservation requests 307 that are accepted by the host 303 and then booked by the guest 301 as well as the types of reservation requests 307 that are rejected by the host 303 associated with the listing 305 or otherwise are not booked after a guest inquiry. The booking conversion module 229 models the booking conversion of a host 303 of a particular listing 305 based on the acceptance patterns and/or booking patterns of reservation requests for the listing 305, and is one means for performing this function. The conversion model may be listing specific. Therefore, a different booking conversion model may be generated for each listing associated with a given host in the online booking system 111.)
- features corresponding to one or more of the following items more heavily than features that do not correspond to one or more of the following items:
-a) location of a set of property listings viewed by the user, and (Xu [0056] In some embodiments, the search module 217 ranks the returned search results based on a ranking score. The ranking score is a function of a number of factors, such as price, host rating, distance from preferred location, listing, or a combination thereof... Typically, location and date are highly weighted, and amenities are lesser weighted, but the particular weights are a design decision for the system administrator. In one embodiment, the ranking factors include information provided by the availability module 223 and the acceptance module 221, as further described below.)
-b) a median price of the set of property listings viewed by the user. (Xu [0043] Price 353 is the amount of money a guest needs to pay in order to obtain the listed accommodation. The price 353 may be specified as an amount of money per day, per week, per day, per month, and/or per season, or other period of time specified by the host. Additionally, price 353 may include additional charges such as cleaning fee, pet fee, and service fees.)
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date to further modify Martine by applying the algorithms to data points generated by Xu relating to the booking of a property listing including property availability, user location, and property location. The combined invention would have the expected outcome of predicting the return on investment of property rental bookings. One would be motivated to perform this combination as it would provide the benefit of improving user experience and increasing conversion rates by predicting the user’s intent using data about their previous online interactions. (Xu [0020])
Regarding Claim 15:
The combination of Martine and Zeldin teach or suggest The system of claim 8,
Furthermore, Martine teaches
-the second set of weighted multipliers weighs training signals (Martine [0052] The review module 310 and the feature module 302 can be configured to work in conjunction to facilitate applying, based on the feedback from the review, one or more weights to one or more features for the particular tracking pixel. The one or more weights applied to the one or more features for the particular tracking pixel can be based on how accurate, applicable, and/or useful, etc., the particular tracking was determined to be from the review. Moreover, the machine learning model can be trained based on the one or more features subsequent to the one or more weights being applied. As such, the training of the machine learning model can disregard or discount features of tracking pixels that are insignificant, irrelevant, inappropriate and/or otherwise unsuitable (e.g., based on lower weights applied to such tracking pixels).)
However, Martine and Zeldin fails to teach or suggest:
-wherein the second set of weighted multipliers weighs training signals corresponding to one or more of the following items more heavily than training signals that do not correspond to one or more of the following items: a) location of a set of property listings viewed by the user, and b) median price of the set of property listings viewed by the user.
Alternatively, Xu teaches:
- features corresponding to one or more of the following items more heavily than features that do not correspond to one or more of the following items:
-a) location of a set of property listings viewed by the user, and (Xu [0056] In some embodiments, the search module 217 ranks the returned search results based on a ranking score. The ranking score is a function of a number of factors, such as price, host rating, distance from preferred location, listing, or a combination thereof... Typically, location and date are highly weighted, and amenities are lesser weighted, but the particular weights are a design decision for the system administrator. In one embodiment, the ranking factors include information provided by the availability module 223 and the acceptance module 221, as further described below.)
-b) a median price of the set of property listings viewed by the user. (Xu [0043] Price 353 is the amount of money a guest needs to pay in order to obtain the listed accommodation. The price 353 may be specified as an amount of money per day, per week, per day, per month, and/or per season, or other period of time specified by the host. Additionally, price 353 may include additional charges such as cleaning fee, pet fee, and service fees.)
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date to modify Martine by applying the algorithms to data points generated by Xu relating to the booking of a property listing including property availability, user location, and property location. The combined invention would have the expected outcome of predicting the return on investment of property rental bookings. One would be motivated to perform this combination as it would provide the benefit of improving user experience and increasing conversion rates by predicting the user’s intent using data about their previous online interactions. (Xu [0020])
Regarding Claim 19:
The combination of Martine and Zeldin teaches The method of claim 16,
Furthermore, Martine teaches:
-user actions (Martine [0049] In some cases, the machine learning model can be applied or utilized to predict the intent of the user to take a future particular action and/or to select content items directed to getting the user to take the future particular action.)
-wherein the target variables directed to optimizing revenue (Martine [0045] As discussed, the machine learning module 304 can extract or acquire features (including feature values) from the training data, the features being variables deemed potentially relevant to whether or not the data has the associated property or properties.)
However, Martine and Zeldin fails to teach or suggest:
-wherein the user action is a booking of a property rental via the computer system, and
-wherein the target variables directed to optimizing revenue relate to a price of the property rental.
Alternatively, Xu teaches:
-wherein the user action is a booking of a property rental via the computer system, and (Xu [0058] The booking module 215 allows guests 301 to reserve an accommodation offered through a listing 305, and is one means for performing this function. In operation, the booking module 215 receives a reservation request 307 from a guest 301 to reserve an accommodation offered by a particular listing 305.)
-wherein the target variables directed to optimizing revenue relate to a price of the property rental. (Xu [0056] In some embodiments, the search module 217 ranks the returned search results based on a ranking score. The ranking score is a function of a number of factors, such as price, host rating, distance from preferred location, listing, or a combination thereof.)
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date to further modify Martine by applying the algorithms to data points generated by Xu relating to the booking of a property listing including property availability, user location, and property location. The combined invention would have the expected outcome of predicting the return on investment of property rental bookings. One would be motivated to perform this combination as it would provide the benefit of improving user experience and increasing conversion rates by predicting the user’s intent using data about their previous online interactions. (Xu [0020])
Response to Arguments
Applicant's arguments filed 10/03/2025 have been fully considered but they are not persuasive.
In regards to the double patenting rejection, the applicant’s arguments have been fully considered, but are not persuasive. The applicant argues that the feature “wherein the second set of feature-specific weighting is distinct from the first set of feature-specific weighting.” While the examiner agrees that the patented claims do not explicitly teach this limitation, the double patenting rejection has been updated above to reflect that the claims are now rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-15 of U.S. Patent No. 11625796 in view of Zeldin et al. (US 20190005575 A1) hereinafter Zeldin. This obviousness-type double patenting rejection shows that the feature above, and unaddressed features would have been an obvious variation of the patented claim in view of the teachings of Zeldin. Therefore, the double patenting rejection stands.
In regards to the remarks over eligibility of claims under 35 U.S.C. 101, the applicant’s arguments have been fully considered but are not persuasive for the following reasons. Regarding step 2a, Prong 1, the applicant alleges that the present claims do not cover an abstract idea because they do not recite any method of organizing human activity such as fundamental economic concepts or managing interactions between people. However, the examiner respectfully disagrees. MPEP 2106.04(a)(2)(II) states,
“Finally, the sub-groupings encompass both activity of a single person (for example, a person following a set of instructions or a person signing a contract online) and activity that involves multiple people (such as a commercial interaction), and thus, certain activity between a person and a computer (for example a method of anonymous loan shopping that a person conducts using a mobile phone) may fall within the "certain methods of organizing human activity" grouping. It is noted that the number of people involved in the activity is not dispositive as to whether a claim limitation falls within this grouping. Instead, the determination should be based on whether the activity itself falls within one of the sub-groupings.”
Therefore, as stated in the rejection above, the claims recite an abstract idea under at least one of the categories of “certain methods of organizing human activity,” because the claims themselves fall under at least one of the groupings, and the certain activity between a person and a computer, such as providing content based on a return on investment value in real time, falls under fundamental economic practices and commercial or legal interactions. Therefore, the applicant’s arguments are not persuasive.
Regarding Step 2A, Prong 2, the applicant argues that in claim 3 of Example 47 of the July 2024 Subject Matter Eligibility Examples, the result of using an artificial neural network (ANN) reflects an improvement in the technical field of network intrusion detection. However, this argument is not persuasive because the reasons for eligibility in Example 47 do not apply to the present claims. More specifically, the applicant argues that the amended features including but not limited to “training a first machine learning model...”, “training a second machine learning model...”, and “providing content...” provides a technical solution to a technical problem in the field of machine-learning based digital marketing system. However, the examiner respectfully disagrees. This alleged improvement is not relevant to Example 47 because in Example 47, claim 3 was found eligible for reciting steps that reflect the improvement in the technical field of network intrusion detection because the steps directly detect network intrusions and take real-time remedial actions, including dropping suspicious packets and blocking traffic from suspicious source addresses. However, these reasons do not apply to the present claims, which allegedly provide an improvement to “machine-learning based digital marketing.” However, providing an improvement to “marketing” is not eligible because marketing falls under at least “commercial or legal interactions” as stated in MPEP 2106.04(a)(2)(II)(B). As stated in MPEP 2106.05(a), “However, it is important to keep in mind that an improvement in the abstract idea itself (e.g. a recited fundamental economic concept) is not an improvement in technology.” Furthermore, the fact that it is “machine-learning based” or “digital marketing” does not make it a technological improvement, especially when considering that in Example 47, that “using the trained ANN to generate anomaly data” merely confines the use of the abstract idea to a particular technological environment and thus fails to add an inventive concept to the claims. Similarly, the present claims merely limit the calculations of probability of user purchase and expected value of user purchase to be performed using machine learning. Thus it is merely confining the abstract idea(fundamental economic concept of ROI, and marketing), to a particular technological environment (machine learning). Furthermore, the applicant also cites to MPEP 2106.05(a), “the extent to which the claim covers a particular solution to a problem or a particular way to achieve a desired outcome, as opposed to merely claiming the idea of a solution or outcome.” Furthermore, the applicant cites to DDR holdings LLC. V. Hotels.com, L.P., stating, “that dynamically generating a composite webpage from multiple sources amounts to a technological solution to a technological problem and is therefore patent eligible.” However, none of the citations above apply to the present claims because the present claims are merely reciting an abstract idea being performed on a generic computer or being generally linked to the technical environment of neural networks. The claims do not reflect an improvement stated in the specification, as required by MPEP 2106.05(a),
“If it is asserted that the invention improves upon conventional functioning of a computer, or upon conventional technology or technological processes, a technical explanation as to how to implement the invention should be present in the specification. That is, the disclosure must provide sufficient details such that one of ordinary skill in the art would recognize the claimed invention as providing an improvement. The specification need not explicitly set forth the improvement, but it must describe the invention such that the improvement would be apparent to one of ordinary skill in the art.”
Therefore, it is not clear that there are any technical improvements described in the specification that would be apparent to a person of ordinary skill in the art. Therefore, none of the applicant’s arguments regarding Step 2A Prong 2 are persuasive.
Regarding Step 2B, the applicant alleges that the claims recite significantly more than the abstract idea by reciting a specific and complex approach to a real-time, ROI-related content mechanism by training first and second machine learning models based on the same training data set to predict different outputs to obtain ROI value which is not taught in the prior art. However, the applicant’s arguments are not persuasive because having two machine learning models, which merely produce outputs of probability of user purchase and expected value are merely using machine learning as a black box to carry out an abstract idea. Furthermore, the alleged novelty of the claims is not a relevant consideration in determining eligibility, especially when the claims have not distinguished over the prior art. Therefore, none of the applicant’s arguments over step 2B are persuasive, and the claims stand rejected under 35 U.S.C. 101 for being directed to an abstract idea without significantly more.
In regards to the applicant’s arguments over the prior art, the applicant’s arguments have been fully considered but are moot in view of the updated rejection which is now based on a combination of Martine and Zeldin. Zeldin remedies the alleged deficiencies of Martine, in pages 12-13 of the applicant’s remarks, particularly that, in Martine, “the systems generates two distinct training data sets and trains two different machine learning models separately based on two distinct training data sets. There is no description in Martine that two different machine learning models are trained based on the same training data set to predict different outputs” This argument is moot because Zeldin does teach training two models based on the same set of input data (a likelihood module and a expected value module), which are both machine learning models based on the same set of data. Therefore, the limitations in their broadest reasonable interpretation have been satisfied. This argument also applies to claims 8 and 16. Furthermore, the applicant argues that in claim 16, Martine is silent as to retraining the first machine learning models and the second machine learning model and updating the aggregated set of data of the stored user data based on the retraining. However, as stated in the updated rejection above, Martine teaches “re-training” in at least Martine [0047]. Furthermore, the plain language of “updating the aggregated set of data of the stored user data based on the retraining” is so broad that it encapsulates any updating of the training set of data, which does occur in Martine in at least [0048]. Therefore, the applicant’s arguments are not persuasive.
In view of the applicant’s arguments that the “claims are not obvious,” the applicant’s remarks have been fully considered but are not persuasive because the claims are now rejected under the combination including Zeldin, which remedies the deficiencies. For example, the applicant argues that in claims 5-7, and 13-15, Takamatsu is not relied upon for teaching training machine learning models, and Xu merely teaches training local model using listing-specific data and global model using aggregated data across all listings. However, this argument is not persuasive because Takamatsu and Xu are not relied upon for teaching that the training set of data is a singular set of data. Since Zeldin teaches a singular source of data, thus satisfying the limitation, it is not necessary for Takamatsu and Xu to also teach the same, when the rejection is based on the combination of references. Furthermore, the applicant argues in claim 19, that is Xu is silent as to retraining...and updating..., however, this argument is not persuasive because Martine teaches these limitations and the rejection does not require Xu to also teach such limitations, when the rejection is based on the combination of references. Therefore, the claims remain rejected under 35 U.S.C. 103 for being obvious over the prior art.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to NICO LAUREN PADUA whose telephone number is (703)756-1978. The examiner can normally be reached Mon to Fri: 8:30 to 5:00pm.
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, Jessica Lemieux can be reached at (571) 270-3445. 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.
/NICO L PADUA/ Junior Patent Examiner, Art Unit 3626
/JESSICA LEMIEUX/ Supervisory Patent Examiner, Art Unit 3626