Notice of Pre-AIA or AIA Status
This Final communication is in response to Application No. 17/589,552 filed 1/31/2022. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment
The amendment filed 11/21/2025 which provides amendments to claims 1, 9-11 and 19 has been entered. Claims 1-20 are pending.
Response to Arguments
Applicant’s arguments with respect to 35 U.S.C § 101 filed 11/21/2025 have been fully considered but they are not persuasive.
Applicant argues the claim invention does not recite an abstract idea (applicant’s arguments page 10). The examiner respectfully disagrees. Executing an algorithm to determine feature/positional encoding is a mental process. An algorithm is a series of steps and/or mathematical calculations to be performed. It has already been established, even though it is being processed by a computer, to be a mental process (MPEP 2106.04(a)). The claims also recites “determining the time-based feature encoding based at least in part on the feature encoding, the positional encoding, and a decay function” and “determining,…, a user intent for the user based on the time-based feature encoding”. Both of these given their broadest reasonable interpretation represent a mental process.
Applicant further argues that the claimed invention is a technical improvement (page 11). Applicant describes that using a non-time-series-based machine learning model is faster than conventional methods. It is unclear how using a non-time-series-based machine learning model (a generic computer element) relates to being faster than conventional methods.
Applicant finally argues that the claims integrate the judicial exception into a practical application because it is an improvement to a technology or technical field. As stated above it is unclear how using a non-time-series-based machine learning model (a generic computer element) relates to being faster than conventional methods.
Thus, the 101 rejection is maintained.
Applicant’s arguments with respect to 35 U.S.C § 103 filed 11/21/2025 have been fully considered but they are not persuasive.
Applicant argues that Malhotra (US 2020/0081815 A1) does not teach the “lookback period”. Applicant cites paragraph 51 of Malhotra which states: “As described with various examples, the learning sub-system 150 can utilize the encoded event streams 121 for a given subject (e.g., end user) that extends over a window of time, from present moment (e.g., real-time or near real-time) to a selected moment in the past.” They are clearly selecting a specific moment in the past to the present moment.
Applicant also argues that Malhotra does not teach “time-based feature encoding” as is required by claim 1. Examiner agrees that Malhotra alone does not but the combination of Malhotra in view of Qiu and Kosir does. Given the broadest reasonable interpretation of “time-based feature encoding” combining the encoding of Malhotra with the positional encoding of Qiu and the decay function of Kosir would result in a time-based feature encoding.
Applicant finally cites that none of the cited prior art references teach a “non-time-series based machine learning model”. Examiner disagrees as Malhotra does: [0056] “In such examples, the learned models can utilize one of multiple possible machine learning algorithms, such as a random forest algorithm or a neural network, to predict a particular outcome to a sequence of events detected from user activity.”)
Thus, the 103 rejection is maintained.
Claim Objections
Claim 11 is objected to because of the following informalities:
Claim 11 recites “executing a feature encoding algorithm to determine a positional encoding for the one or more events”. Examiner is assuming it meant to state “executing a position encoding algorithm…”
Appropriate correction is required.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
101 Subject Matter Eligibility Analysis
Step 1: Claims 1-20 are within the four statutory categories (a process, machine, manufacture or composition of matter.) Claims 1-10 describe a machine, and claims 11-20 describe a process.
With respect to claim 1:
Step 2A Prong 1: The claim recites an abstract idea enumerated in the 2019 PEG.
Executing a feature encoding algorithm to determine a feature encoding for the one or more events; (This is an abstract idea of a "Mental Process." The "algorithm" step under its broadest reasonable interpretation, covers concepts that can be practically performed in the human mind. The algorithm could be performed manually by an individual.)
Executing a position encoding algorithm to determine a positional encoding for the one or more events, wherein: the positional encoding comprises one or more positional vectors associated with a temporal sequence of the one or more events; and (This is an abstract idea of a "Mental Process." The "algorithm" step under its broadest reasonable interpretation, covers concepts that can be practically performed in the human mind. The algorithm could be performed manually by an individual.)
determining the time-based feature encoding based at least in part on the feature encoding, the positional encoding, and a decay function; and (This is an abstract idea of a "Mental Process." The "determining" step under its broadest reasonable interpretation, covers concepts that can be practically performed in the human mind. The determination could be made manually by an individual.)
determining,…, a user intent for the user based on the time-based feature encoding. (This is an abstract idea of a "Mental Process." The "determining" step under its broadest reasonable interpretation, covers concepts that can be practically performed in the human mind. The determination could be made manually by an individual.)
Step 2a Prong 2: The judicial exception is not integrated into a practical application
Additional elements:
receiving, via a computer network, an intent prediction request from a frontend system; (this limitation amounts to adding insignificant extra-solution activity to the judicial exception).
obtaining, from a database, one or more events in a lookback period associated with one or more items ordered by a user for the intent prediction request; (this limitation amounts to adding insignificant extra-solution activity to the judicial exception).
Iteratively training, in real-time, a non-time-series-based machine learning model with historical time-based feature encodings for historical events for one or more users and historical output intent data including the one or more events in the lookback period; and (This amounts to no more than mere instructions to “apply” the exception using a generic computer component.)
In real time via the non-time-series-based machine learning model (This amounts to no more than mere instructions to “apply” the exception using a generic computer component.)
Step 2B: the claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
The additional elements “receiving…” and “obtaining…” add insignificant extra-solution activity to the judicial exception and cannot provide an inventive concept. Storing and retrieving information in memory is directed to a well understood routine conventional activity of data transmission (MPEP 2106.05(d)(II)(iv)).
The additional elements “iteratively training…” and “in real time via the non-time-series-based machine learning model” are recited in a generic level and they represent generic computer components to apply the abstract idea. Mere instructions to apply an exception cannot provide an inventive concept (MPEP 2106.05(f)).
When considered in combination, these additional elements represent insignificant extra-solution activity and mere instructions to apply an expectation, which do not provide an inventive concept.
Therefore, claim 1 is ineligible.
With respect to claim 2:
Step 2A Prong 1: claim 2, which incorporates the rejection of claim 1, does not recite an abstract idea.
Step 2a Prong 2: The judicial exception is not integrated into a practical application.
the feature encoding comprises one or more multi-dimensional feature vectors for the one or more events. (this limitation merely limits the judicial exception to a particular field of use.)
Step 2B: the claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception
The additional element merely limits the judicial exception to a particular field of use and cannot provide an inventive concept (MPEP 2106.05(h)).
Therefore, claim 2 is ineligible.
With respect to claim 3:
Step 2A Prong 1: claim 3, which incorporates the rejection of claim 2, does not recite an abstract idea.
Step 2a Prong 2: The judicial exception is not integrated into a practical application.
each of the one or more multi-dimensional feature vectors comprises one or more of: an embedding for a respective event of the one or more events; an item quantity of a respective order for the respective event; an amount of the respective order; or a time difference between the respective event and a current time; (this limitation merely limits the judicial exception to a particular field of use.)
Step 2B: the claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception
The additional element merely limits the judicial exception to a particular field of use and cannot provide an inventive concept (MPEP 2106.05(h)).
Therefore, claim 3 is ineligible.
With respect to claim 4:
Step 2A Prong 1: claim 4, which incorporates the rejection of claim 1, recites an additional abstract idea:
the positional encoding is sinusoidal. (this is an abstract idea of a “mathematical concept”. The recited “sinusoidal” represents a mathematical function that would fall under the “mathematical concepts” grouping.)
Step 2a Prong 2: claim 4 does not recite any additional elements and thus cannot be integrated into a practical application.
Step 2B: claim 4 does not recite an additional element.
Therefore, claim 4 is ineligible.
With respect to claim 5:
Step 2A Prong 1: claim 5, which incorporates the rejection of claim 4, recites an additional abstract idea:
the positional encoding comprises:
v
(
0
)
⋮
v
(
k
-
1
)
, wherein:
k
is a quantity of the one or more events;
n
is a length of each of one or more feature vectors of the feature encoding;
v
(
i
)
is a positional vector of the one or more positional vectors for an
i
t
h
event of the one or more events,
0
≤
i
<
k
;
v
i
q
,
a
q
t
h
element of
v
(
i
)
,
0
≤
q
<
n
,
is one of: if
q
mod
2
=
0
,
then
cos
ω
q
x
i
,
else
sin
ω
q
x
i
;
or if
q
mod
2
=
1
,
then
cos
ω
q
x
i
,
else
sin
ω
q
x
i
;
ω
j
is a frequency for a
j
t
h
element of each positional vector of the one or more positional vectors,
0
≤
j
<
n
;
and
x
j
is a position of the
j
t
h
element of each positional vector of the one or more positional vectors; (this is an abstract idea of a “mathematical concept”. The recited “vectors” would fall under the “mathematical concepts” grouping.)
Step 2a Prong 2: claim 5 does not recite any additional elements and thus cannot be integrated into a practical application.
Step 2B: claim 5 does not recite an additional element.
Therefore, claim 5 is ineligible.
With respect to claim 6:
Step 2A Prong 1: claim 6, which incorporates the rejection of claim 1, recites an additional abstract idea:
the decay function is configured to determine a respective weightage for each event of the one or more events in the time-based feature encoding; and (this is an abstract idea of a “mathematical concept”. The recited “decay function” represents a mathematical function that would fall under the “mathematical concepts” grouping.)
the respective weightage for a first event of the one or more events, as determined by the decay function, is greater than the respective weightage for a second event of the one or more events, as determined by the decay function, when the first event is closer in time to a current time than the second event; (this is an abstract idea of a “mathematical concept”. The recited “decay function” represents a mathematical function that would fall under the “mathematical concepts” grouping.)
Step 2a Prong 2: claim 6 does not recite any additional elements and thus cannot be integrated into a practical application.
Step 2B: claim 6 does not recite an additional element.
Therefore, claim 6 is ineligible.
With respect to claim 7:
Step 2A Prong 1: claim 7, which incorporates the rejection of claim 6, recites an additional abstract idea:
the decay function comprises:
λ
T
-
Δ
t
i
T
, wherein:
λ
is a domain-specific constant,
0
<
λ
≤
1
;
T
is a time period of the lookback period; and
Δ
t
i
is a respective time difference between an
i
t
h
event of the one or more events and the current time; (this is an abstract idea of a “mathematical concept”. The recited “decay function” represents a mathematical function that would fall under the “mathematical concepts” grouping.)
Step 2a Prong 2: claim 7 does not recite any additional elements and thus cannot be integrated into a practical application.
Step 2B: claim 7 does not recite an additional element.
Therefore, claim 7 is ineligible.
With respect to claim 8:
Step 2A Prong 1: claim 8, which incorporates the rejection of claim 1, recites an additional abstract idea:
the time-based feature encoding comprises one or more time-based feature vectors for the one or more events; and (this is an abstract idea of a “mathematical concept”. The recited vectors would fall under the “mathematical concepts” grouping.)
each of the one or more time-based feature vectors is determined based on:
v
f
e
a
t
u
r
e
i
+
v
p
o
s
i
t
i
o
n
i
*
f
d
i
,
wherein:
v
f
e
a
t
u
r
e
i
is a feature vector of one or more feature vectors of the feature encoding for an
i
t
h
event of the one or more events;
v
p
o
s
i
t
i
o
n
i
is a positional vector of the one or more positional vectors of the positional encoding for the
i
t
h
event;
f
d
i
is a decay function for the
i
t
h
event; and
0
≤
i
<
a quantity of the one or more events; (this is an abstract idea of a “mathematical concept”. The recited vectors and computations would fall under the “mathematical concepts” grouping.)
Step 2a Prong 2: claim 8 does not recite any additional elements and thus cannot be integrated into a practical application.
Step 2B: claim 8 does not recite an additional element.
Therefore, claim 8 is ineligible.
With respect to claim 9:
Step 2A Prong 1: claim 9, which incorporates the rejection of claim 1, does not recite an abstract idea.
Step 2a Prong 2: The judicial exception is not integrated into a practical application.
the one or more users comprise the user; (this limitation amounts to adding insignificant extra-solution activity to the judicial exception).
Step 2B: the claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception
The additional element adds insignificant extra-solution activity to the judicial exception and cannot provide an inventive concept. Storing and retrieving information in memory is directed to a well understood routine conventional activity of data transmission (MPEP 2106.05(d)(II)(iv)).
Therefore, claim 9 is ineligible.
With respect to claim 10:
Step 2A Prong 1: claim 10, which incorporates the rejection of claim 1, recites an additional abstract idea:
the non-time-series-based machine learning model comprises a classification algorithm (This is an abstract idea of a "Mental Process." The "algorithm" step under its broadest reasonable interpretation, covers concepts that can be practically performed by a human using a pen and paper.)
Step 2a Prong 2: claim 10 does not recite any additional elements and thus cannot be integrated into a practical application.
Step 2B: claim 10 does not recite an additional element.
Therefore, claim 10 is ineligible.
With respect to claim 11:
The claim recites similar limitations as corresponding to claim 1. Therefore, the same subject matter analysis that was utilized for claim 1, as described above, is equally applicable to claim 1. Therefore, claim 11 is ineligible.
With respect to claim 12:
The claim recites similar limitations as corresponding to claim 2. Therefore, the same subject matter analysis that was utilized for claim 2, as described above, is equally applicable to claim 12. Therefore, claim 12 is ineligible.
With respect to claim 13:
The claim recites similar limitations as corresponding to claim 3. Therefore, the same subject matter analysis that was utilized for claim 3, as described above, is equally applicable to claim 13. Therefore, claim 13 is ineligible.
With respect to claim 14:
The claim recites similar limitations as corresponding to claim 4. Therefore, the same subject matter analysis that was utilized for claim 4, as described above, is equally applicable to claim 14. Therefore, claim 14 is ineligible.
With respect to claim 15:
The claim recites similar limitations as corresponding to claim 5. Therefore, the same subject matter analysis that was utilized for claim 5, as described above, is equally applicable to claim 15. Therefore, claim 15 is ineligible.
With respect to claim 16:
The claim recites similar limitations as corresponding to claim 6. Therefore, the same subject matter analysis that was utilized for claim 6, as described above, is equally applicable to claim 16. Therefore, claim 16 is ineligible.
With respect to claim 17:
The claim recites similar limitations as corresponding to claim 6. Therefore, the same subject matter analysis that was utilized for claim 6, as described above, is equally applicable to claim 17. Therefore, claim 17 is ineligible.
With respect to claim 18:
The claim recites similar limitations as corresponding to claim 8. Therefore, the same subject matter analysis that was utilized for claim 8, as described above, is equally applicable to claim 18. Therefore, claim 18 is ineligible.
With respect to claim 19:
The claim recites similar limitations as corresponding to claim 9. Therefore, the same subject matter analysis that was utilized for claim 9, as described above, is equally applicable to claim 19. Therefore, claim 19 is ineligible.
With respect to claim 20:
The claim recites similar limitations as corresponding to claim 10. Therefore, the same subject matter analysis that was utilized for claim 10, as described above, is equally applicable to claim 20. Therefore, claim 20 is ineligible.
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 (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-4, 6, 9-14, 16, and 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Malhotra (US 20200081815 A1) in view of Qiu (“Exploiting positional information for Session-based Recommendation” (Published 2021)) and Kosir (“Web user profiles with time-decay and prototyping (Published 2014)).
Regarding claim 1, Malhotra teaches:
one or more processors; and one or more non-transitory computer-readable media storing computing instructions that, when executed on the one or more processors, cause the one or more processors to perform: (Claim 1 and claim 20)
receiving, via a computer network, an intent prediction request from a frontend system; (0017] “In examples, a network computing system (or method thereof) is implemented to generate an encoded sequence of user events, and to analyze the encoded sequence for a user intent.”)
obtaining, from a database, one or more events in a lookback period associated with one or more items ordered by a user for the intent prediction request; ([0027] “computer system operates to receive a data set that defines a plurality of events, and detects multiple activities that define a corresponding set of events from the plurality of events. The set of events are recorded in sequence to reflect an order in time in which each of the multiple activities that define the set of events took place.” And [0051] “As described with various examples, the learning sub-system 150 can utilize the encoded event streams 121 for a given subject (e.g., end user) that extends over a window of time, from present moment (e.g., real-time or near real-time) to a selected moment in the past.”)
executing a feature encoding algorithm to determine a feature encoding for the one or more events; ([0045] “An event encoding component 120 can encode the event records 113 of the real-time data store 134.”)
iteratively training, in real-time, a non-time-series-based machine learning model with historical time-based feature encodings for historical events for one or more users and historical output intent data including the one or more events in the lookback period; and ([0125] “The event library 648 can periodically, or in response to changes, be used by the training process 614 to retrain or update the machine-learning module 616. In some examples, the training process 614 can utilize a supervised and iterative process, where events are fielded to groups of users, with samples of end user devices returning outcome information 659 that identifies the predictive value of an event. The training process 614 can tune the model(s) of the machine learning module 616 to accommodate new events 616. Additionally, the training process can, over time, segment outcome information 659 by user or user category, so as to tune the machine learning models for specific users, or categories of users. The resulting decision logic 630 can thus incorporate user- or class-specific logic and potential outcomes.” And [0056] “In such examples, the learned models can utilize one of multiple possible machine learning algorithms, such as a random forest algorithm or a neural network, to predict a particular outcome to a sequence of events detected from user activity.”)
determining, in real-time via the non-time-series-based machine learning model, a user intent for the user based on the time-based feature encoding. ([0023] “The computer system determines at least one of a user intent or interest, based on an analysis of the relevant portion of the sequence of events.” And [0056] “In such examples, the learned models can utilize one of multiple possible machine learning algorithms, such as a random forest algorithm or a neural network, to predict a particular outcome to a sequence of events detected from user activity.”)
Malhotra does not teach the positional encoding or the decay function. Qiu does teach the positional encoding:
executing a position encoding algorithm to determine a positional encoding for the one or more events wherein: the positional encoding comprises one or more positional vectors associated with a temporal sequence of the one or more events (Section 2.2 Positional Encoding describes multiple types of positional encoding. “assigns a fixed vector to each position in a sequence. The vector is computed either in a sinusoidal way or a learned style”).
Malhotra and Qiu are considered analogous art to the claimed invention because they are in the same field of endeavor being determining user intention. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the user intent system and feature encoding of Malhotra with positional encoding of Qiu. One would want to do this because the positional of an event and help understand a user’s intention (Qiu Introduction 2nd paragraph).
Qiu does not the decay function. However, Kosir does teach the decay function (Section 3 Method: “The time-based decay function is used to calculate the importance of the user’s past actions. Recent actions are considered to give better clues than older actions as to what the user is interested in. We therefore assign a higher degree of importance to recent actions when building the user’s profile. This enables us to better model changes in the user’s interests over time”).
Malhotra, Qiu and Kosir are considered analogous art to the claimed invention because they are in the same field of endeavor being determining user intention. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the user intent system and feature encoding of Malhotra with positional encoding of Qiu and the decay function of Kosir to obtain the time-based feature encoding. One would want to a decay function to give weights to different events depending on the timeline (Kosir abstract).
Regarding claim 2, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Malhotra further teaches:
the feature encoding comprises one or more multi-dimensional feature vectors for the one or more events. (0050] “the vectorization logic 128 can also generate the vector representations for encoded data streams which may be stored with the real-time activity data store”).
Regarding claim 3, Malhotra in view of Qiu and Kosir teaches claim 2 as outlined above. Malhotra further teaches:
each of the one or more multi-dimensional feature vectors comprises one or more of: an embedding for a respective event of the one or more events; an item quantity of a respective order for the respective event; an amount of the respective order; or a time difference between the respective event and a current time. ([0112] “When the activity monitor 654 detects a relevant activity, the activity monitor 654 can also determine information that is relevant to the activity. For example, when a user purchases an item online, the relevant information can include, for example, (i) the number of page views that were detected from the user in the network session, before the user made the purchase, (ii) the number of products the user viewed, (iii) an identifier of the product (e.g., SKU), (iv) a price the user paid for the product, and/or (v) information about any promotion the user used when making the purchase. The activity monitor 654 can communicate detected activity, including predefined relevant information about such events, to the event processing component 656.”)
Regarding claim 4, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Qiu further teaches:
the positional encoding is sinusoidal. (Section 2.2 Positional Encoding describes multiple types of positional encoding. “assigns a fixed vector to each position in a sequence. The vector is computed either in a sinusoidal way or a learned style”)
Regarding claim 6, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Kosir further teaches:
the decay function is configured to determine a respective weightage for each event of the one or more events in the time-based feature encoding; and (page 2 first column: ” The ontological profiles model the user’s interests as an instance of an ontology with interest weights assigned to the concepts in the ontology. A decay function is used to calculate the importance of the user’s past actions which enables the profile to quickly adapt to possible changes in the user’s interests. In the final step we enrich the user’s profile using profile correction with prototype profiles. We search the set of prototype profiles to find the one most similar to the user’s profile and shift the interest weights in the user’s profile toward the weights in the most similar prototype profile, i.e., the interests of similar users”).
the respective weightage for a first event of the one or more events, as determined by the decay function, is greater than the respective weightage for a second event of the one or more events, as determined by the decay function, when the first event is closer in time to a current time than the second event (Section 3 Method: “The time-based decay function is used to calculate the importance of the user’s past actions. Recent actions are considered to give better clues than older actions as to what the user is interested in. We therefore assign a higher degree of importance to recent actions when building the user’s profile. This enables us to better model changes in the user’s interests over time” ).
Regarding claim 9, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Malhotra further teaches:
the one or more users comprise the user ([0068 “The immediately relevant context can correspond to, for example, online shopping activity of the end user (e.g., what online retail site and products the end user viewed, what item the end user placed in online cart, etc.), as well as historical activity (e.g., end user's loyalty award program for a given retailer) and real-world activity (e.g., end user walking into store, end user walking into store for a particular purpose).”)
Regarding claim 10, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Malhotra further teaches:
the non-time-series based machine learning model comprises a classification algorithm. ([0056] In such examples, the learned models can utilize one of multiple possible machine learning algorithms, such as a random forest algorithm or a neural network, to predict a particular outcome to a sequence of events detected from user activity.)
Regarding claim 11, Malhotra teaches:
A method being implemented via execution of computing instructions configured to run at one or more processors and stored at one or more non-transitory computer-readable media, the method comprising: ([0017] “In examples, a network computing system (or method thereof) is implemented to generate an encoded sequence of user events, and to analyze the encoded sequence for a user intent.”)
receiving, via a computer network, an intent prediction request from a frontend system; (0017] “In examples, a network computing system (or method thereof) is implemented to generate an encoded sequence of user events, and to analyze the encoded sequence for a user intent.”)
obtaining, from a database, one or more events in a lookback period associated with one or more items ordered by a user for the intent prediction request; ([0027] “computer system operates to receive a data set that defines a plurality of events, and detects multiple activities that define a corresponding set of events from the plurality of events. The set of events are recorded in sequence to reflect an order in time in which each of the multiple activities that define the set of events took place.”)
executing a feature encoding algorithm to determine a feature encoding for the one or more events; ([0045] “An event encoding component 120 can encode the event records 113 of the real-time data store 134.”)
iteratively training, in real-time, a non-time-series-based machine learning model with historical time-based feature encodings for historical events for one or more users and historical output intent data including the one or more events in the lookback period; and ([0125] “The event library 648 can periodically, or in response to changes, be used by the training process 614 to retrain or update the machine-learning module 616. In some examples, the training process 614 can utilize a supervised and iterative process, where events are fielded to groups of users, with samples of end user devices returning outcome information 659 that identifies the predictive value of an event. The training process 614 can tune the model(s) of the machine learning module 616 to accommodate new events 616. Additionally, the training process can, over time, segment outcome information 659 by user or user category, so as to tune the machine learning models for specific users, or categories of users. The resulting decision logic 630 can thus incorporate user- or class-specific logic and potential outcomes.” And [0056] “In such examples, the learned models can utilize one of multiple possible machine learning algorithms, such as a random forest algorithm or a neural network, to predict a particular outcome to a sequence of events detected from user activity.”)
determining, in real-time via the non-time-series-based machine learning model, a user intent for the user based on the time-based feature encoding. ([0023] “The computer system determines at least one of a user intent or interest, based on an analysis of the relevant portion of the sequence of events.” And [0056] “In such examples, the learned models can utilize one of multiple possible machine learning algorithms, such as a random forest algorithm or a neural network, to predict a particular outcome to a sequence of events detected from user activity.”)
Malhotra does not teach the positional encoding or the decay function. Qiu does teach the positional encoding:
executing a position encoding algorithm to determine a positional encoding for the one or more events wherein: the positional encoding comprises one or more positional vectors associated with a temporal sequence of the one or more events (Qiu Section 2.2 Positional Encoding describes multiple types of positional encoding. “assigns a fixed vector to each position in a sequence. The vector is computed either in a sinusoidal way or a learned style”).
Malhotra and Qiu are considered analogous art to the claimed invention because they are in the same field of endeavor being determining user intention. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the user intent system and feature encoding of Malhotra with positional encoding of Qiu. One would want to do this because the positional of an event and help understand a user’s intention (Qiu Introduction 2nd paragraph).
Qiu does not the decay function. However, Kosir does teach the decay function (Section 3 Method: “The time-based decay function is used to calculate the importance of the user’s past actions. Recent actions are considered to give better clues than older actions as to what the user is interested in. We therefore assign a higher degree of importance to recent actions when building the user’s profile. This enables us to better model changes in the user’s interests over time”).
Malhotra, Qiu and Kosir are considered analogous art to the claimed invention because they are in the same field of endeavor being determining user intention. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the user intent system and feature encoding of Malhotra with positional encoding of Qiu and the decay function of Kosir to obtain the time-based feature encoding. One would want to a decay function to give weights to different events depending on the timeline (Kosir abstract).
Regarding claim 12, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Malhotra further teaches:
the feature encoding comprises one or more multi-dimensional feature vectors for the one or more events. (0050] “the vectorization logic 128 can also generate the vector representations for encoded data streams which may be stored with the real-time activity data store”).
Regarding claim 13, Malhotra in view of Qiu and Kosir teaches claim 2 as outlined above. Malhotra further teaches:
each of the one or more multi-dimensional feature vectors comprises one or more of: an embedding for a respective event of the one or more events; an item quantity of a respective order for the respective event; an amount of the respective order; or a time difference between the respective event and a current time. ([0112] “When the activity monitor 654 detects a relevant activity, the activity monitor 654 can also determine information that is relevant to the activity. For example, when a user purchases an item online, the relevant information can include, for example, (i) the number of page views that were detected from the user in the network session, before the user made the purchase, (ii) the number of products the user viewed, (iii) an identifier of the product (e.g., SKU), (iv) a price the user paid for the product, and/or (v) information about any promotion the user used when making the purchase. The activity monitor 654 can communicate detected activity, including predefined relevant information about such events, to the event processing component 656.”)
Regarding claim 14, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Qiu further teaches:
the positional encoding is sinusoidal. (Section 2.2 Positional Encoding describes multiple types of positional encoding. “assigns a fixed vector to each position in a sequence. The vector is computed either in a sinusoidal way or a learned style”)
Regarding claim 16, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Kosir further teaches:
the decay function is configured to determine a respective weightage for each event of the one or more events in the time-based feature encoding; and (page 2 first column: ” The ontological profiles model the user’s interests as an instance of an ontology with interest weights assigned to the concepts in the ontology. A decay function is used to calculate the importance of the user’s past actions which enables the profile to quickly adapt to possible changes in the user’s interests. In the final step we enrich the user’s profile using profile correction with prototype profiles. We search the set of prototype profiles to find the one most similar to the user’s profile and shift the interest weights in the user’s profile toward the weights in the most similar prototype profile, i.e., the interests of similar users”).
the respective weightage for a first event of the one or more events, as determined by the decay function, is greater than the respective weightage for a second event of the one or more events, as determined by the decay function, when the first event is closer in time to a current time than the second event (Section 3 Method: “The time-based decay function is used to calculate the importance of the user’s past actions. Recent actions are considered to give better clues than older actions as to what the user is interested in. We therefore assign a higher degree of importance to recent actions when building the user’s profile. This enables us to better model changes in the user’s interests over time” ).
Regarding claim 19, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Malhotra further teaches:
the one or more users comprise the user ([0068 “The immediately relevant context can correspond to, for example, online shopping activity of the end user (e.g., what online retail site and products the end user viewed, what item the end user placed in online cart, etc.), as well as historical activity (e.g., end user's loyalty award program for a given retailer) and real-world activity (e.g., end user walking into store, end user walking into store for a particular purpose).”)
Regarding claim 20, Malhotra in view of Qiu and Kosir teaches claim 1 as outlined above. Malhotra further teaches:
the machine learning model comprises a classification algorithm. ([0056] In such examples, the learned models can utilize one of multiple possible machine learning algorithms, such as a random forest algorithm or a neural network, to predict a particular outcome to a sequence of events detected from user activity.)
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 DANIEL PATRICK GRUSZKA whose telephone number is (571)272-5259. The examiner can normally be reached M-F 9:00 AM - 6:00 PM ET.
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, Li Zhen can be reached at (571) 272-3768. 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.
/DANIEL GRUSZKA/Examiner, Art Unit 2121
/Li B. Zhen/Supervisory Patent Examiner, Art Unit 2121