DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claims 1-20 have been examined in this application. This communication is the first action on the merits.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
Step 1. When considering subject matter eligibility under 35 U.S.C. 101, it must be determined whether the claim is directed to one of the four statutory categories of invention, i.e., process, machine, manufacture, or composition of matter.
Step 2A – Prong One. If the claims fall within one of the statutory categories, it must then be determined whether the claims recite an abstract idea, law of nature, or natural phenomenon.
Step 2A – Prong Two. If the claims recite an abstract idea, law of nature, or natural phenomenon, it must then be determined whether the claims recite additional elements that integrate the judicial exception into a practical application. If the claims do not recite additional elements that integrate the judicial exception into a practical application, then the claims are directed to a judicial exception.
Step 2B. If the claims are directed to a judicial exception, it must be evaluated whether the claims recite additional elements that amount to an inventive concept (i.e. “significantly more”) than the recited judicial exception.
In the instant case, claims 1-10 are directed to a machine; claims 11-18 are directed to a process; and claims 19 and 20 are directed to a manufacture.
A claim “recites” an abstract idea if there are identifiable limitations that fall within at least one of the groupings of abstract ideas enumerated in MPEP 2106. In the instant case, claim 1, and similarly claims 11 and 20, recite the steps of: receiving user session information for a current session for a user; generating, using a ranking model, a first listing of items based on the user session information; generating, using a query model, a query intent measurement based on the user session information; generating, using a cart context model, a cart context measurement based on the user session information; generating a second listing of items based on the first listing of items, the query intent measurement, and the cart context measurement; and displaying the second listing of items to the user -- these claim limitations set forth certain methods of organizing human activity, particularly commercial interactions including advertising, marketing, and sales activities/behaviors.
Additionally, these steps set forth mental processes, particularly concepts performed in the human mind or by a human using a pen and paper, including, inter alia, the observation and evaluation of information.
Further, the limitations of the claims are not indicative of integration into a practical application. Taking the independent claim elements separately, the additional elements of performing the steps via a processor and a non-transitory computer-readable medium storing computing instructions that, when executed on the processor, cause the processor to perform operations, and in a graphical user interface merely implement the abstract idea on a computer environment. Additionally, taking the dependent claim elements separately, the additional elements of performing the steps online and via GBDT and BERT also merely implement the abstract idea on a computer environment. Considered in combination, the steps of Applicant’s method add nothing that is not already present when the steps are considered separately.
Thus, claims 1-20 are directed to an abstract idea.
Regarding the independent claims, the technical elements of performing the steps via a processor and a non-transitory computer-readable medium storing computing instructions that, when executed on the processor, cause the processor to perform operations, and in a graphical user interface merely implement the abstract idea on a computer environment. Additionally, regarding the dependent claims, the technical elements of performing the steps online also merely implement the abstract idea on a computer environment. While the claims recite performing the steps via GBDT and BERT, these limitations are recited at a high level of generality and thus does not amount to significantly more.
When considering the elements and combinations of elements, the claim(s) as a whole, do not amount to significantly more than the abstract idea itself. This is because the claims do not amount to an improvement to another technology or technical field; the claims do not amount to an improvement to the functioning of a computer itself; the claims do not move beyond a general link of the use of an abstract idea to a particular technological environment; the claims merely amounts to the application or instructions to apply the abstract idea on a computer; or the claims amounts to nothing more than requiring a generic computer to perform generic computer functions that are well-understood, routine and conventional activities previously known to the industry.
The analysis above applies to all statutory categories of invention. Accordingly, claims 1-20 are rejected as ineligible for patenting under 35 USC 101 based upon the same rationale.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1, 2, 9-12, 19, and 20 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by Arora (US PGP 2022/0222706).
As per claim 1, Arora teaches [a] system comprising a processor and a non-transitory computer-readable medium storing computing instructions that, when executed on the processor, cause the processor to perform operations comprising:
receiving user session information for a current session for a user; (Arora: Fig. 6; [0082] (Beginning at step 602, real-time user session data for a user is received. For example, item recommendation computing device 102 may receive user session data 320 for a user from web server 104. At step 604, historical user data for the user is received. For example, item recommendation computing device 102 may obtain the historical user session data and/or historical user transaction data for the user from database 116, which stores historical user session data and historical user transaction data for a plurality of users.))
generating, using a ranking model, a first listing of items based on the user session information; (Arora: [0082]-[0084] (At step 606, a first set of ranked items for recommendation are determined based on the historical user data. For example, favorites engine 404 may generate a first set of ranked items based on historical user data received from database 116.); [0040] (In some examples, item recommendation computing device 102 may determine first set of items (e.g., user favorites) based on historical user data, including user transaction data, and/or user engagement data. Any known ranking model may be used to generate the first set of items based on the historical user data. A learning to rank framework may be used to optimize the ranking of the items. Ranking model may optimize the likelihood of the user buying an item in the first set compared to another item in the first set of items.))
generating, using a query model, a query intent measurement based on the user session information; (Arora: [0046]-[0051] (In some examples, item recommendation computing device 102 may determine a second set of ranked items based on the current user session. For example, user's selections (e.g., add to carts) and/or interactions with items during the current user session in real-time may be used to determine one or more user intents for the user session. For example, a user's selection of items may be associated with multiple user intents. As an example, user's intent for the current user session may be buying baking hoods and house cleaning supplies. For examples, a user's selection of sugar, egg, flour, and bread during a user session may indicate a user intent to bake a cake. As such, in that example, milk may be an item to recommend in the second set of items that may be based on the current user session. The second set of items may be ranked based on a corresponding likelihood of the user buying the item given other items selected by the user during the current user session. . . . Among other advantages, the embodiments allow for real-time inferencing of multiple models to generate item recommendations for a particular customer based on perceived user intent from current user session (e.g., user engagement data, interaction data, add to carts, clicks, search queries) and historical user data (e.g., purchase data, transaction data, engagement data)); [0028] (In some examples, web server 104 transmits a search request to item recommendation computing device 102. The search request may identify a search query provided by the customer (e.g., via a search bar of the web browser), or a recommendation query provided by a processing unit in response to user adding one or more items to cart or interacting (e.g., engaging) with one or more items. In response to receiving the request, item recommendation computing device 102 may execute the one or more processors to determine search results to display to the customer (i.e., item recommendations).); [0061]-[0063] (In this example, user session data 320 may include item engagement data 360 and/or search query data 330. . . . Search query data 330 may identify one or more searches conducted by a user during a browsing session (e.g., a current browsing session). For example, item recommendation computing device 102 may receive a search request 310 from web server 104, where the search request 310 identifies one or more search terms provided by the user. Item recommendation computing device 102 may store the search terms as provided by the user as search query data 330. In this example, search query data 330 includes first query 380, second query 382, and Nth query 384.); [0074] (In this example, web server 104 transmits a search request 310 to item recommendation computing device 102. Search request 310 may include a request for item recommendations for presentation to a particular user using the user device 112. In some examples, search request 310 further identifies a user (e.g., customer) for whom the item recommendations are requested at web server 104. Personalization unified service engine 402 receives search request 310, and receives and parses the user session data 320 (e.g., user session data associated with a current user session of the user in real-time). Personalization unified service engine 402 provides to the favorites engine 404 the user session data 320, and other data, which may include the user transaction data 340, and user session data 320 (e.g., user session data from historical user sessions) extracted from database 116.))
generating, using a cart context model, a cart context measurement based on the user session information; (Arora: [0062] (In this example, user session data 320 may include item engagement data 360 and/or search query data 330. Item engagement data 360 may include one or more of a session ID 322 (i.e., a website browsing session identifier), item clicks 324 identifying items which the user clicked (e.g., images of items for purchase, keywords to filter reviews for an item), items added-to-cart 326 identifying items added to the user's online shopping cart, advertisements viewed 328 identifying advertisements the user viewed during the browsing session, advertisements clicked 331 identifying advertisements the user clicked on, and user ID 334 (e.g., a customer ID, retailer website login ID, a cookie ID, etc.)); [0076] (Cart aware model engine 406 can determine final ranking of items for recommendation based on user intent determined from the user session data 320 for the current user session. Cart aware model engine 406 may take as input items interacted or engaged with (e.g., items clicked on, items added to cart) by the user during the current user session. Cart aware model engine 406 can determine a second set of ranked items based on pre-trained embedding vectors and the user session data 320 for the current user session. Cart aware model engine 406 may also re-rank the first set of ranked items based on the user session data 320 of the current user session and the pre-trained embedding vectors. The re-ranked first set of items may then be ranked higher than the second set of ranked items. The second set of ranked items may be ranked in sequence after the re-ranked first set of items, and as such added to a queue for presentation in positions after the predetermined threshold number of items determined for the first set of ranked items. Cart aware model engine 406 may output final ranking 408 including re-ranked first set of items and the second set of ranked items ranked sequentially with the re-ranked first set of items ranked higher than the second set of ranked items.))
generating a second listing of items based on the first listing of items, the query intent measurement, and the cart context measurement; and (Arora: [0046]-[0051] (In some examples, item recommendation computing device 102 may determine a second set of ranked items based on the current user session. For example, user's selections (e.g., add to carts) and/or interactions with items during the current user session in real-time may be used to determine one or more user intents for the user session. For example, a user's selection of items may be associated with multiple user intents. As an example, user's intent for the current user session may be buying baking hoods and house cleaning supplies. For examples, a user's selection of sugar, egg, flour, and bread during a user session may indicate a user intent to bake a cake. As such, in that example, milk may be an item to recommend in the second set of items that may be based on the current user session. The second set of items may be ranked based on a corresponding likelihood of the user buying the item given other items selected by the user during the current user session. . . . Among other advantages, the embodiments allow for real-time inferencing of multiple models to generate item recommendations for a particular customer based on perceived user intent from current user session (e.g., user engagement data, interaction data, add to carts, clicks, search queries) and historical user data (e.g., purchase data, transaction data, engagement data)); Fig. 6; [0083]-[0086] (The method then proceeds to steps 608, and 610 which may be performed simultaneously (or nearly simultaneously, as allowed by CPU and GPU processing). At step 608, the first set of ranked items are re-ranked based on the real-time user session data. For example, cart aware model engine 406 may re-rank the first set of ranked items based on the current user session (e.g., based on perceived user intent(s)). At step 610, a second set of ranked items is determined by selecting a portion of the first set of ranked items based on a predetermined threshold. For example, favorites engine 404 may select a portion of the first set of ranked items based on a predetermined threshold selected such that presenting any more of the items in the first set of ranked items provides a diminishing return. From steps 606, 608, and 610, the method proceed to step 612, where a third set of ranked items including third items ranked based on the real-time user session are determined. For example, cart aware model engine 406 may determine a second set of ranked items based on embedding vectors of user and items, and the current user session 320, for example, based on the perceived user intent(s).); [0074]-[0077])
displaying the second listing of items in a graphical user interface to the user. (Arora: [0074]-[0078] (Cart aware model engine 406 can determine a second set of ranked items based on pre-trained embedding vectors and the user session data 320 for the current user session. Cart aware model engine 406 may also re-rank the first set of ranked items based on the user session data 320 of the current user session and the pre-trained embedding vectors. . . . Final ranking 408 can determine an ordered list of the item recommendations 312 based on the final rankings received from the cart aware model engine 406. Final ranking 408 may generate data that identifies the order of item recommendations 312 associated with the particular user to optimize user interactions with and user purchases of items in the recommendations. Personalization unified service engine 402 may receive the item recommendations 312 from the final ranking 408 in a data format (e.g., message) acceptable by web server 104. Personalization unified service engine 402 transmits the item recommendations 312 to web server 104. Web server 104 may then update or generate item recommendations for presentation to the user via the user device 112 based on the final ranking 408.))
As per claim 2, Arora teaches wherein the user session information comprises a search query, a unique identifier, and one or more items in an online cart corresponding to the unique identifier. (Arora: [0046]-[0051] (Among other advantages, the embodiments allow for real-time inferencing of multiple models to generate item recommendations for a particular customer based on perceived user intent from current user session (e.g., user engagement data, interaction data, add to carts, clicks, search queries) . . . ); [0028] (In some examples, web server 104 transmits a search request to item recommendation computing device 102. The search request may identify a search query provided by the customer (e.g., via a search bar of the web browser), or a recommendation query provided by a processing unit in response to user adding one or more items to cart or interacting (e.g., engaging) with one or more items.).); [0061]-[0063] (In this example, user session data 320 may include item engagement data 360 and/or search query data 330. Item engagement data 360 may include one or more of a session ID 322 (i.e., a website browsing session identifier), item clicks 324 identifying items which the user clicked (e.g., images of items for purchase, keywords to filter reviews for an item), items added-to-cart 326 identifying items added to the user's online shopping cart, advertisements viewed 328 identifying advertisements the user viewed during the browsing session, advertisements clicked 331 identifying advertisements the user clicked on, and user ID 334 (e.g., a customer ID, retailer website login ID, a cookie ID, etc.). Search query data 330 may identify one or more searches conducted by a user during a browsing session (e.g., a current browsing session).); [0074] (In this example, web server 104 transmits a search request 310 to item recommendation computing device 102. Search request 310 may include a request for item recommendations for presentation to a particular user using the user device 112.); [0074] (Search request 310 may include a request for item recommendations for presentation to a particular user using the user device 112. In some examples, search request 310 further identifies a user (e.g., customer) for whom the item recommendations are requested at web server 104. Personalization unified service engine 402 receives search request 310, and receives and parses the user session data 320 (e.g., user session data associated with a current user session of the user in real-time). Personalization unified service engine 402 provides to the favorites engine 404 the user session data 320, and other data, which may include the user transaction data 340, and user session data 320 (e.g., user session data from historical user sessions) extracted from database 116.); [0032] (In some examples, the initial ranked list of items may include items ranked based on the historical user data with the items already added to the cart by the user during the current user session.)).
As per claim 9, Arora teaches wherein:
the query intent measurement corresponds to a probability of an item having a first fulfillment status; and (Arora: [0037]-[0039] (In some examples, item recommendation computing device 102 may rank items for recommendation based the expected gross value of each of the items. For example, gross value of an item may be dependent on relevancy of the item to the user, the user session, and the position that the item is shown in the recommendations. A highly relevant item shown at a position that the user is unlikely to scroll to may not result in sale of the item. The gross value may indicate a probability of the user purchasing and/or interacting with the item at a given position and given the one or more perceived user intents based on the current user session. In some examples, optimizing the gross value of the recommended item, items for recommendation may be selected from a first set of ranked items based on the historical user data and a second set of ranked items based on the current user session. In some examples, optimizing the gross value of the recommended item, items for recommendation may be selected from a first set of ranked items based on the historical user data and a second set of ranked items based on the current user session. . . . In some examples, item recommendation computing device 102 may assume that recommending items based on historical user data (e.g., first set of items) leads to higher overall gross value than recommending items purely based on current user session (e.g., second set of items). As such, relevant items from the first set of items may be shown in favorable positions prior to the items in the second set of items.))
the cart context measurement corresponds to a probability of an item having a second fulfillment status. (Arora: [0037]-[0039] (In some examples, item recommendation computing device 102 may rank items for recommendation based the expected gross value of each of the items. For example, gross value of an item may be dependent on relevancy of the item to the user, the user session, and the position that the item is shown in the recommendations. A highly relevant item shown at a position that the user is unlikely to scroll to may not result in sale of the item. The gross value may indicate a probability of the user purchasing and/or interacting with the item at a given position and given the one or more perceived user intents based on the current user session. In some examples, optimizing the gross value of the recommended item, items for recommendation may be selected from a first set of ranked items based on the historical user data and a second set of ranked items based on the current user session. In some examples, optimizing the gross value of the recommended item, items for recommendation may be selected from a first set of ranked items based on the historical user data and a second set of ranked items based on the current user session. . . . In some examples, item recommendation computing device 102 may assume that recommending items based on historical user data (e.g., first set of items) leads to higher overall gross value than recommending items purely based on current user session (e.g., second set of items). As such, relevant items from the first set of items may be shown in favorable positions prior to the items in the second set of items.))
As per claim 10, Arora teaches wherein generating the second listing of items based on the first listing of items, the query intent measurement, and the cart context measurement further comprises modifying the first listing of items to move items of the first listing of items having a probability of an item having respective first fulfillment statuses to a higher position. (Arora: [0046]-[0049] (In some examples, the first set of ranked items may be re-ranked using the content model to generate third set of ranked items. For example, for a list of n items selected by the user, C={c1, c2, . . . , cn}, and the first set of ranked items denoted by F={f1, f2, . . . , fm} (e.g., for m items after thresholding), it may be determined that the items in the first set of ranked items with the highest cohesion score according to equation 16 may be the re-ranked as the highest ranked items. . . . The re-ranked first set of items may be presented to the user as item recommendations in the position s 1 to k, and the top ranked second set of ranked items may be presented as recommendations from positions k+1 to the total number of possible positions for recommendations.); [0076]-[0077] (Cart aware model engine 406 can determine a second set of ranked items based on pre-trained embedding vectors and the user session data 320 for the current user session. Cart aware model engine 406 may also re-rank the first set of ranked items based on the user session data 320 of the current user session and the pre-trained embedding vectors. The re-ranked first set of items may then be ranked higher than the second set of ranked items. The second set of ranked items may be ranked in sequence after the re-ranked first set of items, and as such added to a queue for presentation in positions after the predetermined threshold number of items determined for the first set of ranked items. Cart aware model engine 406 may output final ranking 408 including re-ranked first set of items and the second set of ranked items ranked sequentially with the re-ranked first set of items ranked higher than the second set of ranked items. . . . Final ranking 408 can determine an ordered list of the item recommendations 312 based on the final rankings received from the cart aware model engine 406. Final ranking 408 may generate data that identifies the order of item recommendations 312 associated with the particular user to optimize user interactions with and user purchases of items in the recommendations.); [0037]-[0039])
As per claims 11 and 12, these claims are substantially similar to claims 1 and 2, respectively, and are therefore rejected in the same manner as these claims, as set forth above.
As per claims 19 and 20, these claims are substantially similar to claims 1 and 2, respectively, and are therefore rejected in the same manner as these claims, as set forth above.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 3, 4, 13, and 14 are rejected under 35 U.S.C. 103 as being unpatentable over Arora in view of Tian (WO 2023142520 A1).
As per claim 3, Arora teaches the invention of claim 1 as set forth above. Additionally, Arora further teaches wherein the ranking model comprises a baseline ranking model . . . (Arora: [0082]-[0084] (At step 606, a first set of ranked items for recommendation are determined based on the historical user data. For example, favorites engine 404 may generate a first set of ranked items based on historical user data received from database 116.); [0040] (In some examples, item recommendation computing device 102 may determine first set of items (e.g., user favorites) based on historical user data, including user transaction data, and/or user engagement data. Any known ranking model may be used to generate the first set of items based on the historical user data. A learning to rank framework may be used to optimize the ranking of the items. Ranking model may optimize the likelihood of the user buying an item in the first set compared to another item in the first set of items.))
Arora does not explicitly disclose the following known techniques which are taught by Tian:
wherein the ranking model comprises . . . and a gradient boosted decision tree (GBDT) model. (Tian: Page 3, Lns. 13-15 (In one or more embodiments of the present application, the ranking model is trained based on LR algorithm, GBDT algorithm, Xgboost algorithm, LightGBM algorithm, xDeepFM algorithm, DeepFM algorithm and AutoInt algorithm.))
This known technique is applicable to the method of Arora as they both share characteristics and capabilities, namely, they are directed to ranking models.
One of ordinary skill in the art at the time of filing would have recognized that applying the known technique of Tian would have yielded predictable results and resulted in an improved method. It would have been recognized that applying the technique of Tian to the teachings of Arora would have yielded predictable results because the level of ordinary skill in the art demonstrated by the references applied shows the ability to incorporate such gradient boosted decision tree (GBDT) model features into similar methods. Further, applying a gradient boosted decision tree (GBDT) model to the ranking model of Arora would have been recognized by those of ordinary skill in the art as resulting in an improved method that would allow for the content of interest to the user to be accurately recommended to the user, the improved effectiveness and efficiency of information recommendation, and improved user experience. (Tian: Page 1, Lns. 22-28)
As per claim 4, Arora/Tian teaches the invention of claim 3 as set forth above. Additionally, Arora/Tian further teach wherein generating the first listing of items based on the user session information further comprises:
generating, using the baseline ranking model, a baseline listing of items based on the user session information, the baseline listing of items including one or more items ranked based on query context information; (Arora: [0082]-[0084] (At step 606, a first set of ranked items for recommendation are determined based on the historical user data. For example, favorites engine 404 may generate a first set of ranked items based on historical user data received from database 116.); [0040] (In some examples, item recommendation computing device 102 may determine first set of items (e.g., user favorites) based on historical user data, including user transaction data, and/or user engagement data. Any known ranking model may be used to generate the first set of items based on the historical user data. A learning to rank framework may be used to optimize the ranking of the items. Ranking model may optimize the likelihood of the user buying an item in the first set compared to another item in the first set of items.); [0046]-[0051]; [0028]; [0061]-[0063]; [0074])
processing, . . . , the baseline listing of items to generate a revised listing of the baseline listing of items; and (Arora: [0041]-[0045] (In some examples, item recommendation computing device 102 may determine a threshold number of items to be recommended from the first set of ranked items. The threshold number of items, k, from the first set of items may be determined such that the opportunity cost of showing another item from the first set of items after the threshold number provides diminishing returns on gross values. . . . Item recommendation computing device 102 may optimize the likelihood of a user buying an item at position k compared to position 1 and the items in the first set of ranked items may then be filtered based on probabilities of items in the first set being below a predetermined threshold . . . . Item recommendation computing device 102 may sequentially go through the first set of ranked items till the condition in equation 13 holds. For items in the first set of ranked items after the position k where the condition 13 stops holding, item recommendation computing device 102 may remove those items from the first set of ranked items to generate the remaining first set of ranked items post thresholding.));
modifying the revised listing based on one or more ranking criteria to generate the first listing of items. (Arora: [0041]-[0045] (In some examples, item recommendation computing device 102 may determine a threshold number of items to be recommended from the first set of ranked items. The threshold number of items, k, from the first set of items may be determined such that the opportunity cost of showing another item from the first set of items after the threshold number provides diminishing returns on gross values. . . . Item recommendation computing device 102 may optimize the likelihood of a user buying an item at position k compared to position 1 and the items in the first set of ranked items may then be filtered based on probabilities of items in the first set being below a predetermined threshold . . . . Item recommendation computing device 102 may sequentially go through the first set of ranked items till the condition in equation 13 holds. For items in the first set of ranked items after the position k where the condition 13 stops holding, item recommendation computing device 102 may remove those items from the first set of ranked items to generate the remaining first set of ranked items post thresholding.));
. . . using the GBDT model . . . (Tian: Page 3, Lns. 13-15 (In one or more embodiments of the present application, the ranking model is trained based on LR algorithm, GBDT algorithm, Xgboost algorithm, LightGBM algorithm, xDeepFM algorithm, DeepFM algorithm and AutoInt algorithm.))
The motivation for applying the known techniques of Tian to the teachings of Arora is the same as that set forth above, in the rejection of Claim 3.
As per claims 13 and 14, these claims are substantially similar to claims 3 and 4, respectively, and are therefore rejected in the same manner as these claims, as set forth above.
Claims 5 and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Arora in view of Kaplan (US PGP 2014/0351078).
As per claim 5, Arora/Tian teaches the invention of claim 4 as set forth above. Additionally, Arora/Tian further teach wherein the one or more ranking criteria are based on a . . . and a respective fulfillment status for each item in the revised listing. (Arora: [0041]-[0045] (In some examples, item recommendation computing device 102 may determine a threshold number of items to be recommended from the first set of ranked items. The threshold number of items, k, from the first set of items may be determined such that the opportunity cost of showing another item from the first set of items after the threshold number provides diminishing returns on gross values. . . . Item recommendation computing device 102 may optimize the likelihood of a user buying an item at position k compared to position 1 and the items in the first set of ranked items may then be filtered based on probabilities of items in the first set being below a predetermined threshold.));
Arora/Tian do not explicitly disclose the following known techniques which are taught by Kaplan:
wherein the one or more ranking criteria are based on a respective out-of-stock status . . . (Kaplan: [0031] (In exemplary embodiments, the systems and methods of the present disclosure may generate one or more lists of recommended products meeting the designated budget constraints for sets of product types implicated by each of the designated one or more product categories. User input and/or data mining information regarding desired, required, or optimal product characteristics may also be used to limit which products are included as recommended products and or rank/compare different recommended product lists. . . . Time constraints may also be considered, for example, to exclude from the recommended products items that are out of stock or unavailable prior to a certain date.))
This known technique is applicable to the method of Arora/Tian as they share characteristics and capabilities, namely, they are directed to ranking products.
One of ordinary skill in the art at the time of filing would have recognized that applying the known technique of Kaplan would have yielded predictable results and resulted in an improved method. It would have been recognized that applying the technique of Kaplan to the teachings of Arora/Tian would have yielded predictable results because the level of ordinary skill in the art demonstrated by the references applied shows the ability to incorporate such out-of-stock status features into similar methods. Further, applying respective out-of-stock status to the one or more ranking criteria of Arora/Tian would have been recognized by those of ordinary skill in the art as resulting in an improved method that would allow excluding recommended products that would be unavailable prior to a certain date. (Kaplan: [0031])
As per claim 15, this claim is substantially similar to claim 5 and is therefore rejected in the same manner as this claim, as set forth above.
Claims 6 and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Arora in view of
Roberts (US PGP 2024/0265427).
As per claim 6, Arora teaches the invention of claim 1 as set forth above. Arora does not explicitly disclose the following known techniques which are taught by Roberts:
wherein the query model is a Bidirectional Encoder Representations from Transformers (BERT) model. (Roberts: [0147] (At query time, a predetermined number of listings, such as 1000 or more or less, may be batch together based on title, tag matching, and with budget remaining. A ranking score may be calculated. For instance, listings may also be boosted in the rankings (e.g., a higher ranking score) by a taxonomy matching prediction score, obtained from a separately trained and batch inferenced Bidirectional Encoder Representations from Transformers (BERT) model, as well as additional business logic which may be specific to the particular use case and users of the website.))
This known technique is applicable to the method of Arora as they both share characteristics and capabilities, namely, they are directed to ranking items.
One of ordinary skill in the art at the time of filing would have recognized that applying the known technique of Roberts would have yielded predictable results and resulted in an improved method. It would have been recognized that applying the technique of Roberts to the teachings of Arora would have yielded predictable results because the level of ordinary skill in the art demonstrated by the references applied shows the ability to incorporate such BERT features into similar methods. Further, applying a Bidirectional Encoder Representations from Transformers (BERT) mode to the query model of Arora would have been recognized by those of ordinary skill in the art as resulting in an improved method that would allow for accurate real-time predictions of the probability that a user of the marketplace will click through. (Roberts: [0002], [0147])
As per claim 16, this claim is substantially similar to claim 6 and is therefore rejected in the same manner as this claim, as set forth above.
Claims 7, 8, 17, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Arora in view of Eletreby (US PGP 2022/0351239).
As per claim 7, Arora teaches the invention of claim 1 as set forth above. Additionally, Arora further teaches wherein the operations further comprise generating training data by:
removing each . . . that does not satisfy an order threshold . . . ; (Arora: [0041]-[0042] (In some examples, item recommendation computing device 102 may determine a threshold number of items to be recommended from the first set of ranked items. The threshold number of items, k, from the first set of items may be determined such that the opportunity cost of showing another item from the first set of items after the threshold number provides diminishing returns on gross values. . . . Item recommendation computing device 102 may optimize the likelihood of a user buying an item at position k compared to position 1 and the items in the first set of ranked items may then be filtered based on probabilities of items in the first set being below a predetermined threshold. . . . For items in the first set of ranked items after the position k where the condition 13 stops holding, item recommendation computing device 102 may remove those items from the first set of ranked items to generate the remaining first set of ranked items post thresholding.))
Arora does not explicitly disclose the following known techniques which are taught by Eletreby:
receiving query item pairs for a period of time; (Eletreby: [0066]-[0067] (First temporal period aggregation engine 404 may aggregate the session-level engagement data and the item examination data packaged within examination messages 403 within a data repository, such as within database 116. First temporal period aggregation engine 404 may, for example, aggregate the data for each day, week, etc. First temporal period aggregation engine 404 may generate first temporal period query-item pair data 405 characterizing each search query and corresponding item engagement data (e.g., examines, clicks, add-to-cart counts, order counts, etc.) for each corresponding item for the first temporal period, and may provide the first temporal period query-item pair data 405 to second temporal period aggregation engine 406. Second temporal period aggregation engine 406 may further aggregate the first temporal period query-item pair data 405 for another temporal period, such as a month, quarter, or year, and may generate second temporal period query-item pair data 407 based on the aggregation.))
normalizing the query item pairs to determine a fulfilment status for each query of the query item pairs; (Eletreby: [0068] (Normalization engine 408 may obtain the second temporal period query-item pair data 407 from second temporal period aggregation engine 406, and may normalize the engagement data based on the corresponding number of examines. . . For example, normalization engine 408 may perform a normalization using Beta random variables. As an example of using Beta random variables, assume that, for a given query-item pair, historical data aggregated over a month indicates that the item has received 1000 examines and was ordered 30 times in the context of the particular query (e.g., the item appeared in a search result to the query, and was purchased from the search result). . . . Using Beta random variables, however, a Beta distribution B(a,b) is generated parametrized by a=30 and b=1000−30, i.e., number of orders as the first parameter a, and number of examines minus the number of orders as the second parameter b. Interestingly, for a Beta random variable that is constructed in this way, the expectation of the random variable is precisely 30/1000. Now, instead of taking the expectation of the random variable as an estimate of the OTR, the 5-percentile point of the distribution is selected, i.e., the point below which lies 5% of the distribution. The value at that point is selected as the value for the OTR. Thus, in this example, the 5-percentile point is selected to be the estimated OTR.)
. . . each query . . . to generate the training data; (Eletreby: [0068]-[0070] (Training label generations engine 410 generates training labels 411 based on the initial ranking data 409, and provides the training labels 411 to machine learning model training engine 412 to train a machine learning model.)
labeling a first portion of the training data as a training sample; and (Eletreby: [0068]-[0070] (Training label generations engine 410 generates training labels 411 based on the initial ranking data 409, and provides the training labels 411 to machine learning model training engine 412 to train a machine learning model)
labeling a second portion of the training data as a test sample. (Eletreby: [0070] (Machine learning model training engine 412 further generates training features based on user session data 401 stored in database 116. For example, training label generations engine 410 may generate feature vectors based on item features corresponding to each ranked item identified by initial ranking data 409, and query features based on the corresponding search query for which the initial ranking data 409 was generated.))
This known technique is applicable to the method of Arora as they both share characteristics and capabilities, namely, they are directed to ranking items.
One of ordinary skill in the art at the time of filing would have recognized that applying the known technique of Eletreby would have yielded predictable results and resulted in an improved method. It would have been recognized that applying the technique of Eletreby to the teachings of Arora would have yielded predictable results because the level of ordinary skill in the art demonstrated by the references applied shows the ability to incorporate such BERT features into similar methods. Further, applying generating training data by: receiving query item pairs for a period of time; normalizing the query item pairs to determine a fulfilment status for each query of the query item pairs; . . . each query . . . to generate the training data; labeling a first portion of the training data as a training sample; and labeling a second portion of the training data as a test sample. to the teachings of Arora would have been recognized by those of ordinary skill in the art as resulting in an improved method that would allow improved search results, such as those in response to a search query, provided to website visitors. (Eletreby: [0002])
As per claim 8, Arora/Eletreby teach the invention of claim 7 as set forth above. Additionally, Arora/Eletreby further teach wherein the operations further comprise training the query model based on the training sample and the test sample. (Eletreby: [0070] (Training label generations engine 410 generates training labels 411 based on the initial ranking data 409, and provides the training labels 411 to machine learning model training engine 412 to train a machine learning model. Machine learning model training engine 412 further generates training features based on user session data 401 stored in database 116. For example, training label generations engine 410 may generate feature vectors based on item features corresponding to each ranked item identified by initial ranking data 409, and query features based on the corresponding search query for which the initial ranking data 409 was generated. Based on the training labels 411 and the generated training features, machine learning model training engine 412 trains the machine learning model, and provides trained machine learning model 415.))
The motivation for applying the known techniques of Eletreby to the teachings of Arora is the same as that set forth above, in the rejection of Claim 7.
As per claims 17 and 18, these claims are substantially similar to claims 7 and 8, respectively, and are therefore rejected in the same manner as these claims, as set forth above.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
Michaelson (US 20210090154) -- general product category and the one or more supporting product details of the item (query and cart addition) are used as parameters in a query executed against a database to determine ranked list of products for recommendation
Tavernier (US Pat No 10,706,450) -- determined intent can then be used to filter recommendations and/or pre-select attribute-value input fields
Rao (US PGP 2024/0354556) -- recommendation model can be configured as any other appropriate architecture including BERT
Manchanda, Saurav, Mohit Sharma, and George Karypis. "Intent term selection and refinement in e-commerce queries." arXiv preprint arXiv:1908.08564 (2019). -- identifying intent terms in a query for products
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JENNIFER V LEE whose telephone number is (571)272-4778. The examiner can normally be reached Monday - Friday 9AM - 5PM EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, JEFFREY A. SMITH can be reached at (571)272-6763. 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.
/JENNIFER V LEE/Examiner, Art Unit 3688
/Jeffrey A. Smith/Supervisory Patent Examiner, Art Unit 3688