IP Library Granted Patent US 12,354,029
Granted Patent B2
US 12,354,029 · App. 15/879,351 · Granted Jul 8, 2025

Dynamic website content optimization

Inventor: Ning Ma (New York, NY)
Assignee: Zeta Global Corp.
G06N7/01G06F16/951G06F16/9577G06F40/134G06F40/197H04L67/535
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,354,029
App. No.
15/879,351
Granted
Jul 8, 2025
Kind
B2
Abstract

A system presents content to a website user based on a predicted future intent of the user. Hidden Markov models (HMMs) are developed based on a hierarchical and relational graph of a website. Given a sequence of observed actions performed by a user on the website, a HMM can be used to predict a likely intent the user has most recently acted on. Using a deterministic algorithm or a Monte Carlo Tree Search algorithm, the system can then predict likelihoods that each possible user intent associated with the website is a future intent of the particular user. Website content and formatting can be adjusted based on predictions about a user's future intents.

Claims (68)

1. A computer-implemented method comprising:

creating a content graph of a website of an online system using a crawler module, the content graph comprising a plurality of nodes representing a hierarchical relationship of a plurality of hyperlinks of the website, the crawler module traversing each page of the website via the plurality of hyperlinks to collect one or more observable actions a user can take within each webpage of the website, the one or more observable actions comprising at least one of a hovering, a clicking, or a conversion associated with the plurality of hyperlinks;

tracking the one or more observable actions using a tracking pixel, the tracking pixel being embedded in code of each webpage configured to log the one or more observable actions within each webpage;

determining, using the crawler module, an intent categorization for each of the one or more observable actions, the intent categorization relating to possible intents associated with each of the one or more observable actions;

training, based on the content graph that comprises the plurality of nodes representing the hierarchical relationship of the plurality of hyperlinks of the website and the intent categorization for the one or more observable actions, a Hidden Markov model, the Hidden Markov model corresponding to a state graph that comprises a plurality of nodes connected by a plurality of edges, each node corresponding to a hidden state that represents a possible user intent, each edge corresponding to a probability of transition from a possible user intent of a first connecting node to another possible user intent of a second connecting node;

selecting values for a set of probability distributions based on user attributes stored in a user profile associated with the user;

determining, using the trained Hidden Markov model, a current intent of a user based on values of a plurality of transition probabilities associated with the state graph, the selected values and based on a sequence of actions performed by the user while interacting with the website;

identifying a hidden state associated with the trained Hidden Markov model, the hidden state being associated with the current intent of the user;

determining a future intent of the user by applying a Monte Carlo tree search algorithm to the state graph corresponding to the trained Hidden Markov model starting from the hidden state;

identifying a first webpage of the website based on the future intent of the user; and

presenting a hyperlink to the first webpage of the website within one or more dynamic graphical interface elements to allow the user to perform an action to accomplish the future intent.

2. The computer-implemented method of claim 1 , wherein the sequence of actions is a first sequence of actions, wherein the hyperlink to the first webpage of the website is first content of the website, the method further comprising:

identifying, using the tracking pixel, a second sequence of actions performed by the user while interacting with the website, the second sequence of actions corresponding to one or more interactions with the website;

updating the trained Hidden Markov model by adjusting one or more weights of the set of probability distributions based on the second sequence of actions;

determining, using the updated Hidden Markov model, a sequence of future intents of the user based on the second sequence of actions;

identifying second content of the website based on the sequence of future intents of the user; and

causing display of the second content of the website on a device associated with the user.

3. The computer-implemented method of claim 1 , the selecting values for the set of probability distributions comprising:

loading the values for the set of probability distributions into the trained Hidden Markov model.

4. The computer-implemented method of claim 1 further comprising:

generating the one or more dynamic graphical interface elements within a second webpage of the website; and

causing display of the hyperlink to the first website within the one or more dynamic graphical interface elements on a device associated with the user.

5. A non-transitory computer-readable storage medium storing computer program instructions executable by one or more processors of a system to perform steps comprising:

creating a content graph of a website of an online system using a crawler module, the content graph comprising a plurality of nodes representing a hierarchical relationship of a plurality of hyperlinks of the website, the crawler module traversing each page of the website via the plurality of hyperlinks to collect one or more observable actions a user can take within each webpage of the website, the one or more observable actions comprising at least one of a hovering, a clicking, or a conversion associated with the plurality of hyperlinks;

tracking the one or more observable actions using a tracking pixel, the tracking pixel being embedded in code of each webpage configured to log the one or more observable actions within each webpage;

determining, using the crawler module, an intent categorization for each of the one or more observable actions, the intent categorization relating to possible intents associated with each of the one or more observable actions;

training, based on the content graph that comprises the plurality of nodes representing the hierarchical relationship of the plurality of hyperlinks of the website and the intent categorization for the one or more observable actions, a Hidden Markov model, the Hidden Markov model corresponding to a state graph that comprises a plurality of nodes connected by a plurality of edges, each node corresponding to a hidden state that represents a possible user intent, each edge corresponding to a probability of transition from a possible user intent of a first connecting node to another possible user intent of a second connecting node;

selecting values for a set of probability distributions based on user attributes stored in a user profile associated with the user;

determining, using the trained Hidden Markov model, a current intent of a user based on values of a plurality of transition probabilities associated with the state graph, the selected values and based on a sequence of actions performed by the user while interacting with the website;

identifying a hidden state associated with the trained Hidden Markov model, the hidden state being associated with the current intent of the user;

determining a future intent of the user by applying a Monte Carlo tree search algorithm to the state graph corresponding to the trained Hidden Markov model starting from the hidden state;

identifying a first webpage of the website based on the future intent of the user; and

presenting a hyperlink to the first webpage of the website within one or more dynamic graphical interface elements to allow the user to perform an action to accomplish the future intent.

6. The non-transitory computer-readable storage medium of claim 5 , wherein the sequence of actions is a first sequence of actions, wherein the hyperlink to the first webpage of the website is first content of the website, and wherein the steps further comprise:

identifying, using the tracking pixel, a second sequence of actions performed by the user while interacting with the website, the second sequence of actions corresponding to one or more interactions with the website;

updating the trained Hidden Markov model by adjusting one or more weights of the set of probability distributions based on the second sequence of actions;

determining, using the updated Hidden Markov model, a sequence of future intents of the user based on the second sequence of actions;

identifying second content of the website based on the sequence of future intents of the user; and

causing display of the second content of the website on a device associated with the user.

7. The non-transitory computer-readable storage medium of claim 5 , the selecting values for the set of probability distributions comprising:

loading the values for the set of probability distributions into the trained Hidden Markov model.

8. The non-transitory computer-readable storage medium of claim 5 , wherein the steps further comprise:

generating the one or more dynamic graphical interface elements within a second webpage of the website; and

causing display of the hyperlink to the first website within the one or more dynamic graphical interface elements on a device associated with the user.

9. A computer system comprising:

one or more computer processors for executing computer program instructions; and

a non-transitory computer-readable storage medium storing instructions executable by the one or more computer processors to perform steps comprising:

creating a content graph of a website of an online system using a crawler module, the content graph comprising a plurality of nodes representing a hierarchical relationship of a plurality of hyperlinks of the website, the crawler module traversing each page of the website via the plurality of hyperlinks to collect one or more observable actions a user can take within each webpage of the website, the one or more observable actions comprising at least one of a hovering, a clicking, or a conversion associated with the plurality of hyperlinks;

tracking the one or more observable actions using a tracking pixel, the tracking pixel being embedded in code of each webpage configured to log the one or more observable actions within each webpage;

determining, using the crawler module, an intent categorization for each of the one or more observable actions, the intent categorization relating to possible intents associated with each of the one or more observable actions;

training, based on the content graph that comprises the plurality of nodes representing the hierarchical relationship of the plurality of hyperlinks of the website and the intent categorization for the one or more observable actions, a Hidden Markov model, the Hidden Markov model corresponding to a state graph that comprises a plurality of nodes connected by a plurality of edges, each node corresponding to a hidden state that represents a possible user intent, each edge corresponding to a probability of transition from a possible user intent of a first connecting node to another possible user intent of a second connecting node;

selecting values for a set of probability distributions based on user attributes stored in a user profile associated with the user;

determining, using the trained Hidden Markov model, a current intent of a user based on values of a plurality of transition probabilities associated with the state graph, the selected values and based on a sequence of actions performed by the user while interacting with the website;

identifying a hidden state associated with the trained Hidden Markov model, the hidden state being associated with the current intent of the user;

determining a future intent of the user by applying a Monte Carlo tree search algorithm to the state graph corresponding to the trained Hidden Markov model starting from the hidden state;

identifying a first webpage of the website based on the future intent of the user; and

presenting a hyperlink to the first webpage of the website within one or more dynamic graphical interface elements to allow the user to perform an action to accomplish the future intent.

10. The computer system of claim 9 , wherein the sequence of actions is a first sequence of actions, wherein the hyperlink to the first webpage of the website is first content of the website, and wherein the steps further comprise:

identifying, using the tracking pixel, a second sequence of actions performed by the user while interacting with the website, the second sequence of actions corresponding to one or more interactions with the website;

updating the trained Hidden Markov model by adjusting one or more weights of the set of probability distributions based on the second sequence of actions;

determining, using the updated Hidden Markov model, a sequence of future intents of the user based on the second sequence of actions;

identifying second content of the website based on the sequence of future intents of the user; and

causing display of the second content of the website on a device associated with the user.

11. The computer system of claim 9 , the selecting values for the set of probability distributions comprising:

loading the values for the set of probability distributions into the trained Hidden Markov model.

12. The computer system of claim 9 , wherein the steps further comprise:

generating the one or more dynamic graphical interface elements within a second webpage of the website; and

causing display of the hyperlink to the first website within the one or more dynamic graphical interface elements on a device associated with the user.

Assignments (10)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 055212, FRAME 0964 Recorded Aug 30, 2024
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: ZETA GLOBAL CORP.
Reel/Frame 068822/0167 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Aug 30, 2024
From: ZETA GLOBAL CORP.; ZSTREAM ACQUISITION LLC
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 068822/0154 →
RELEASE OF SECURITY INTEREST Recorded Feb 11, 2021
From: FIRST EAGLE PRIVATE CREDIT, LLC, AS SUCCESSOR TO NEWSTAR FINANCIAL, INC
To: ZBT ACQUISITION CORP.; ZETA GLOBAL CORP.; 935 KOP ASSOCIATES, LLC
Reel/Frame 055282/0276 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2021
From: ZETA GLOBAL CORP.
To: BANK OF AMERICA, N.A.
Reel/Frame 055212/0964 →
SECURITY INTEREST Recorded Dec 3, 2020
From: ZETA GLOBAL CORP.
To: FIRST EAGLE PRIVATE CREDIT, LLC
Reel/Frame 054585/0770 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2019
From: SIZMEK DSP, INC.
To: ZETA GLOBAL CORP.
Reel/Frame 050397/0102 →
CHANGE OF NAME Recorded May 10, 2019
From: ROCKET FUEL INC.
To: SIZMEK DSP, INC.
Reel/Frame 049150/0299 →
SECURITY INTEREST Recorded Aug 7, 2018
From: SIZMEK TECHNOLOGIES, INC.; X PLUS ONE SOLUTIONS, INC.; ROCKET FUEL INC.
To: CERBERUS BUSINESS FINANCE, LLC
Reel/Frame 046730/0579 →
SECURITY INTEREST Recorded Aug 7, 2018
From: SIZMEK TECHNOLOGIES, INC.; X PLUS ONE SOLUTIONS, INC.; ROCKET FUEL INC.
To: CERBERUS BUSINESS FINANCE, LLC
Reel/Frame 046566/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2018
From: MA, NING
To: ROCKET FUEL INC.
Reel/Frame 044789/0458 →
Cited By (1)
US 12,671,727