IP Library Granted Patent US 12,579,555
Granted Patent B2
US 12,579,555 · App. 17/364,835 · Granted Mar 17, 2026

Systems and methods of audience expansion using deep autoencoders

Inventors: Zachary D Jones (Atlata, GA); Danny Portman (Atlanta, GA)
Assignee: Zeta Global Corp.
G06Q30/0269G06N3/04G06Q30/0205G06Q30/0256
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,579,555
App. No.
17/364,835
Granted
Mar 17, 2026
Kind
B2
Abstract

A system for selecting an expanded audience comprising: a seed audience; an elastic profile store comprising a plurality of consumer profiles each of the consumer profiles comprising a consumer identifier and consumer characteristics wherein the seed audience is matched in the elastic profile store to select a plurality of seed profiles and at least one candidate profile; at least one encoder engine to encode the seed profiles and the candidate profile to output a plurality of encoded seed profiles and an encoded candidate profile; an aggregator engine to receive the encoded seed profiles to determine similar characteristics; a matching engine to match characteristics from the encoded candidate profile with the characteristics from the encoded seed profiles; a threshold engine to determine whether the encoded candidate profile has sufficient similarity to the encoded seed profiles; and in response to a determination by the threshold engine to keep the candidate profile, inclusion of the candidate user id in an expanded audience.

Claims (66)

1 . A system for selecting an expanded audience comprising:

one or more hardware processors;

at least one machine-storage medium for storing instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors to perform operations comprising:

matching a seed audience in an elastic profile store to select a plurality of seed profiles and a plurality of candidate profiles, the elastic profile store comprising a consumer identifier and consumer characteristics;

training an autoencoder that comprises a neural network, the neural network comprising multiple neural units and multiple Restricted Boltzmann Machine (RBM) instances, each RBM instance generating weights between one or more of the multiple neural units, the training comprises:

performing contrast divergence iteration on a first RBM instance by determining hidden unit states in a positive phase and visible unit states in a negative phase for a set of training vectors, the visible unit states being determined based on the hidden unit states and a weight matrix of the first RBM instance,

determining a final state of hidden units based on the visible unit states,

using the final state of hidden units as inputs to train a next RBM instance, and

upon completion of training the multiple RBM instances, fine-tuning the autoencoder by performing gradient descent using backpropagation;

encoding, using the trained autoencoder, the plurality of seed profiles to generate a plurality of encoded seed vectors, each encoded seed vector representing a characteristic of a seed profile in a vector space, the encoding of the plurality of seed profiles reducing dimensionality of the plurality of seed profiles;

aggregating the plurality of encoded seed vectors that are encoded by the trained autoencoder to generate one or more aggregated seed representative vectors in the vector space that store a representation of a number of characteristics of the plurality of seed profiles;

encoding, using the trained autoencoder, a plurality of candidate profiles to generate a plurality of encoded candidate vectors, each encoded candidate vector representing a characteristic of a candidate profile in the plurality of candidate profiles;

matching, using a threshold engine, the plurality of encoded candidate vectors with the one or more aggregated seed representative vectors to determine one or more matched encoded candidate vectors, each matched encoded candidate vector having a degree of similarity with an aggregated seed representative vector above a threshold, the threshold for the matching being determined based on a present audience expansion rate, each matched encoded candidate vector corresponds to a low-dimensional representation at a last encoded layer of the trained autoencoder;

in response to determining the one or more matched encoded candidate vectors, identifying one or more candidate profiles associated with the one or more matched encoded candidate vectors as one or more expanded audience profiles;

aggregating the seed profiles and the one or more expanded audience profiles as the expanded audience;

determining an effective consumer characteristic that is above a similarity threshold, among the consumer characteristics, for a targeted communication to the expanded audience; and

transmitting data, including the targeted communication, to the expanded audience.

2 . The system of claim 1 , wherein the characteristic of the seed profile corresponds to one of: demographic information, purchase history information, browsing history information, geographic location information, and employment information.

3 . The system of claim 1 , wherein the autoencoder comprises a plurality of instances of neural networks Restricted Boltzmann Machine (RBM).

4 . The system of claim 3 , wherein the RBM is trained using a contrast divergence algorithm.

5 . The system of claim 1 , wherein the threshold engine is associated with a plurality of pre-defined threshold rules, and wherein the operations comprise:

adjusting the plurality of pre-defined threshold rules based on a number of matched encoded candidate vectors in accordance with a target size of audience expansion.

6 . The system of claim 5 , wherein the threshold engine uses one or more machine learning models to adjust a plurality of pre-defined threshold rules.

7 . The system of claim 1 , wherein the operations comprise:

tuning the threshold engine to determine one or more characteristics of the plurality of seed profiles for expanded audience profile selection.

8 . The system of claim 7 , wherein the one or more characteristics are used in a bidding strategy for available inventory.

9 . A computer-readable medium for storing instructions that, when executed by one or more hardware processors, cause the one or more hardware processors to perform operations comprising:

matching a seed audience in an elastic profile store to select a plurality of seed profiles and a plurality of candidate profiles, the elastic profile store comprising a consumer identifier and consumer characteristics;

training an autoencoder that comprises a neural network, the neural network comprising multiple neural units and multiple Restricted Boltzmann Machine (RBM) instances, each RBM instance generating weights between one or more of the multiple neural units, the training comprises:

performing contrast divergence iteration on a first RBM instance by determining hidden unit states in a positive phase and visible unit states in a negative phase for a set of training vectors, the visible unit states being determined based on the hidden unit states and a weight matrix of the first RBM instance,

determining a final state of hidden units based on the visible unit states,

using the final state of hidden units as inputs to train a next RBM instance, and

upon completion of training the multiple RBM instances, fine-tuning the autoencoder by performing gradient descent using backpropagation;

encoding, using the trained autoencoder, the plurality of seed profiles to generate a plurality of encoded seed vectors, each encoded seed vector representing a characteristic of a seed profile in a vector space, the encoding of the plurality of seed profiles reducing dimensionality of the plurality of seed profiles;

aggregating the plurality of encoded seed vectors that are encoded by the trained autoencoder to generate one or more aggregated seed representative vectors in the vector space that store a representation of a number of characteristics of the plurality of seed profiles;

encoding, using the trained autoencoder, a plurality of candidate profiles to generate a plurality of encoded candidate vectors, each encoded candidate vector representing a characteristic of a candidate profile in the plurality of candidate profiles;

matching, using a threshold engine, the plurality of encoded candidate vectors with the one or more aggregated seed representative vectors to determine one or more matched encoded candidate vectors, each matched encoded candidate vector having a degree of similarity with an aggregated seed representative vector above a threshold, the threshold for the matching being determined based on a present audience expansion rate, each matched encoded candidate vector corresponds to a low-dimensional representation at a last encoded layer of the trained autoencoder;

in response to determining the one or more matched encoded candidate vectors, identifying one or more candidate profiles associated with the one or more matched encoded candidate vectors as one or more expanded audience profiles;

aggregating the seed profiles and the one or more expanded audience profiles as the expanded audience;

determining an effective consumer characteristic that is above a similarity threshold, among the consumer characteristics, for a targeted communication to the expanded audience; and

transmitting data, including the targeted communication, to the expanded audience.

10 . A method comprising:

matching a seed audience in an elastic profile store to select a plurality of seed profiles and a plurality of candidate profiles, the elastic profile store comprising a consumer identifier and consumer characteristics;

training an autoencoder that comprises a neural network, the neural network comprising multiple neural units and multiple Restricted Boltzmann Machine (RBM) instances, each RBM instance generating weights between one or more of the multiple neural units, the training comprises:

performing contrast divergence iteration on a first RBM instance by determining hidden unit states in a positive phase and visible unit states in a negative phase for a set of training vectors, the visible unit states being determined based on the hidden unit states and a weight matrix of the first RBM instance,

determining a final state of hidden units based on the visible unit states,

using the final state of hidden units as inputs to train a next RBM instance, and

upon completion of training the multiple RBM instances, fine-tuning the autoencoder by performing gradient descent using backpropagation;

encoding, using the trained autoencoder, the plurality of seed profiles to generate a plurality of encoded seed vectors, each encoded seed vector representing a characteristic of a seed profile in a vector space, the encoding of the plurality of seed profiles reducing dimensionality of the plurality of seed profiles;

aggregating the plurality of encoded seed vectors that are encoded by the trained autoencoder to generate one or more aggregated seed representative vectors in the vector space that store a representation of a number of characteristics of the plurality of seed profiles;

encoding, using the trained autoencoder, a plurality of candidate profiles to generate a plurality of encoded candidate vectors, each encoded candidate vector representing a characteristic of a candidate profile in the plurality of candidate profiles;

matching, using a threshold engine, the plurality of encoded candidate vectors with the one or more aggregated seed representative vectors to determine one or more matched encoded candidate vectors, each matched encoded candidate vector having a degree of similarity with an aggregated seed representative vector above a threshold, the threshold for the matching being determined based on a present audience expansion rate, each matched encoded candidate vector corresponds to a low-dimensional representation at a last encoded layer of the trained autoencoder;

in response to determining the one or more matched encoded candidate vectors, identifying one or more candidate profiles associated with the one or more matched encoded candidate vectors as one or more expanded audience profiles;

aggregating the seed profiles and the one or more expanded audience profiles as the expanded audience;

determining an effective consumer characteristic that is above a similarity threshold, among the consumer characteristics, for a targeted communication to the expanded audience; and

transmitting data, including the targeted communication, to the expanded audience.

11 . The method of claim 10 , wherein the threshold engine uses one or more machine learning models to adjust a plurality of pre-defined threshold rules associated with the threshold engine.

12 . The method of claim 10 , wherein the characteristic of the seed profile corresponds to one of:

demographic information, purchase history information, browsing history information, geographic location information, and employment information.

13 . The method of claim 10 , wherein the autoencoder comprises a plurality of instances of neural networks Restricted Boltzmann Machine (RBM).

14 . The method of claim 13 , wherein the RBM is trained using a contrast divergence algorithm.

15 . The method of claim 10 , wherein the threshold engine is associated with a plurality of pre-defined threshold rules, comprising:

adjusting the plurality of pre-defined threshold rules based on a number of matched encoded candidate vectors in accordance with a target size of audience expansion.

16 . The method of claim 10 , comprising:

tuning the threshold engine to determine one or more characteristics of the plurality of seed profiles for expanded audience profile selection.

17 . The method of claim 16 , wherein the one or more characteristics are used in a bidding strategy for available inventory.

Assignments (2)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2022
From: JONES, ZACHARY D; PORTMAN, DANNY
To: ZETA GLOBAL CORP.
Reel/Frame 058623/0056 →
Continuity (2)
Provisional Application 63046682 · Jun 30, 2020
Related Publication 20220027953A1 · Jan 27, 2022
References Cited (7)
US 20120054040A1 · Bagherjeiran · 2012 [cited by examiner]
US 20120150626A1 · Zhang · 2012 [cited by examiner]
US 20140278973A1 · Lowe · 2014 [cited by examiner]
US 20200184515A1 · deWet · 2020 [cited by examiner]
US 20200329258A1 · Wang · 2020 [cited by examiner]
US 20220156257A1 · Bhatia · 2022 [cited by examiner]
J. Song and C. Yuan, “Learning Boltzmann machine with EM-like method,” 2016 International Joint Conference on Neural Networks (IJCNN), Vancouver, BC, Canada, 2016, pp. 2282-2289, doi: 10.1109/IJCNN.2016.7727482. (Year: … [cited by examiner]