IP Library Granted Patent US 12,505,470
Granted Patent B2
US 12,505,470 · App. 18/509,585 · Granted Dec 23, 2025

Systems, methods, and storage media for training a machine learning model

Inventors: Elham Saraee (Jamaica Plain, MA); Jehan Hamedi (South Boston, MA); Zachary Halloran (Braintree, MA)
G06Q30/0269G06F18/214G06N3/08G06V10/764G06V10/776G06V10/82
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,505,470
App. No.
18/509,585
Granted
Dec 23, 2025
Kind
B2
Abstract

Systems, methods, and storage media for training a machine learning model are disclosed. Exemplary implementations may select a set of training images for a machine learning model, extract object features from each training image to generate an object tensor for each training image, extract stylistic features from each training image to generate a stylistic feature tensor for each training image, determine an engagement metric for each training image, and train a neural network comprising a plurality of nodes arranged in a plurality of sequential layers.

Claims (77)

1 . A system comprising:

one or more hardware processors coupled with memory and configured by machine-readable instructions to:

obtain a content item; and

execute a neural network using the content item as input to obtain a performance score for the content item, the neural network including an input layer, one or more sequential layers subsequent to the input layer, a classification layer subsequent to the one or more sequential layers, and a regression layer subsequent to the classification layer,

wherein the classification layer is configured to generate a single output comprising a different probability for each of a plurality of performance score ranges for the same content item in one execution of the neural network, the plurality of performance score ranges each comprising a plurality of performance scores, and

wherein the machine-readable instructions cause the one or more processors to execute the neural network by:

causing the neural network to output a probability for each of the plurality of performance score ranges based on the input content item, each probability indicating a likelihood that the performance score for the content item is one of the plurality of performance scores of the performance score range corresponding to the output probability for the performance score range; and

generating the performance score for the content item at the regression layer as a function of each of the plurality of probabilities for the performance score ranges, wherein the neural network implements both a classification loss function and a regression loss function, and wherein the classification loss function guides the neural network through the plurality of performance score ranges while the regression loss function identifies specific scores based on the probabilities for the plurality of performance score ranges from the classification layer.

2 . The system of claim 1 , wherein the one or more hardware processors are further configured by machine-readable instructions to:

obtain first engagement feedback comprising first interactions with a set of first training images by a first target audience, each first training image of the set of first training images added to the set of first training images responsive to a determination that a member of the first target audience viewed the first training image; and

for each first training image of the first set of training images:

calculate a first engagement metric for the first training image based on one or more first interactions with the first training image by the first target audience; and

train the neural network based on the first engagement metric.

3 . The system of claim 2 , wherein the one or more hardware processors are further configured by machine-readable instructions to:

obtain second engagement feedback comprising second interactions with a set of second training images by a second target audience, each second training image of the set of second training images added to the set of second training images responsive to a determination that a member of the second target audience viewed the second training image; and

for each second training image of the second set of training images:

execute a second machine learning model using the second training image to obtain a second performance score;

calculate a second engagement metric for the second training image based on one or more second interactions with the second training image by the second target audience; and

train the second machine learning model based on the second performance score and the second engagement metric.

4 . The system of claim 3 , wherein the one or more hardware processors are further configured by machine-readable instructions to:

using a first image, execute the neural network to obtain a third performance score and the trained second machine learning model to obtain a fourth performance score different from the third performance score.

5 . The system of claim 2 , wherein the machine-readable instructions that cause the one or more hardware processors to calculate the first engagement metric for the first training image based on a ratio of a number of views of the first training image to a number of first interactions the first training image received by members of the first target audience.

6 . The system of claim 1 , wherein the machine-readable instructions further comprise instructions to train the neural network according to a loss function.

7 . The system of claim 1 , wherein the machine-readable instructions further cause the one or more hardware processors to:

train the neural network according to a first loss function; and

train the neural network according to a second loss function.

8 . The system of claim 7 , wherein the machine-readable instructions cause the one or more hardware processors to:

train the neural network according to the first loss function based on predictions of the classification layer and not any predictions of the regression layer; and

train the neural network according to the second loss function based on predictions by the regression layer.

9 . The system of claim 1 , wherein the one or more hardware processors are further configured by machine-readable instructions to:

extract features from the content item to generate a tensor for the content item; and

wherein the machine-readable instructions that cause the one or more hardware processors to execute the neural network using the content item further comprise instructions to execute the neural network using the tensor as an input.

10 . The system of claim 1 , wherein the one or more hardware processors are further configured by machine-readable instructions to:

receive a selection of a first target audience;

identify a candidate image;

identify the neural network based on the selected first target audience; and

propagate data corresponding to the candidate image through the neural network to determine a second performance score for the candidate image.

11 . A method comprising:

obtaining, by one or more processors, a content item; and

executing, by the one or more processors, a neural network using the content item as input to obtain a performance score for the content item, the neural network including an input layer, one or more sequential layers subsequent to the input layer, a classification layer subsequent to the one or more sequential layers, and a regression layer subsequent to the classification layer,

wherein the classification layer is configured to generate a single output comprising a different probability for each of a plurality of performance score ranges for the same content item in one execution of the neural network, the plurality of performance score ranges each comprising a plurality of performance scores, and

wherein executing the neural network comprises:

causing, by the one or more processors, the neural network to generate a single output comprising a probability for each of the plurality of performance score ranges based on the input content item, each probability indicating a likelihood that the performance score for the content item is one of the plurality of performance scores of the performance score range corresponding to the output probability for the performance score range; and

generating, by the one or more processors, the performance score for the content item at the regression layer as a function of each of the plurality of probabilities for the performance score ranges, wherein the neural network implements both a classification loss function and a regression loss function, and wherein the classification loss function guides the neural network through the plurality of performance score ranges while the regression loss function identifies specific scores based on the probabilities for the plurality of performance score ranges from the classification layer.

12 . The method of claim 11 , further comprising:

obtaining, by the one or more processors, first engagement feedback comprising first interactions with a set of first training images by a first target audience, each first training image of the set of first training images added to the set of first training images responsive to a determination that a member of the first target audience viewed the first training image; and

for each first training image of the first set of training images:

calculating, by the one or more processors, a first engagement metric for the first training image based on one or more first interactions with the first training image by the first target audience; and

training, by the one or more processors, the neural network based on the first engagement metric.

13 . The method of claim 12 , further comprising:

obtaining, by the one or more processors, second engagement feedback comprising second interactions with a set of second training images by a second target audience, each second training image of the set of second training images added to the set of second training images responsive to a determination that a member of the second target audience viewed the second training image; and

for each second training image of the second set of training images:

executing, by the one or more processors, a second machine learning model using the second training image to obtain a second performance score;

calculating, by the one or more processors, a second engagement metric for the second training image based on one or more second interactions with the second training image by the second target audience; and

training, by the one or more processors, the second machine learning model based on the second performance score and the second engagement metric.

14 . The method of claim 13 , further comprising:

executing, by the one or more processors using a first image, the neural network to obtain a third performance score and the trained second machine learning model to obtain a fourth performance score different from the third performance score.

15 . The method of claim 12 , wherein calculating the first engagement metric for the first training image comprises calculating, by the one or more processors, the first engagement metric based on a ratio of a number of views of the first training image to a number of first interactions the first training image received by members of the first target audience.

16 . The method of claim 11 , further comprising training, by the one or more processors, the neural network according to a loss function.

17 . The method of claim 11 , further comprising:

training, by the one or more processors, the neural network according to a first loss function; and

training, by the one or more processors, the neural network according to a second loss function.

18 . The method of claim 17 , comprising:

training, by the one or more processors, the neural network according to the first loss function based on predictions of the classification layer and not any predictions of the regression layer; and

training, by the one or more processors, the neural network according to the second loss function based on predictions by the regression layer.

19 . A non-transitory computer-readable medium comprising instructions that, when executed by one or more processors, cause the one or more processors to:

obtain a content item; and

execute a neural network using the content item as input to obtain a performance score for the content item, the neural network including an input layer, one or more sequential layers subsequent to the input layer, a classification layer subsequent to the one or more sequential layers, and a regression layer subsequent to the classification layer,

wherein the classification layer is configured to generate a single output comprising a different probability for each of a plurality of performance score ranges for the same content item in one execution of the neural network, the plurality of performance score ranges each comprising a plurality of performance scores, and

wherein the instructions cause the one or more processors to execute the neural network by:

causing the neural network to output a probability for each of the plurality of performance score ranges based on the input content item, each probability indicating a likelihood that the performance score for the content item is one of the plurality of performance scores of the corresponding performance score range corresponding to the output probability for the performance score range; and

generating the performance score for the content item at the regression layer as a function of each of the plurality of probabilities for the performance score ranges, wherein the neural network implements both a classification loss function and a regression loss function, and wherein the classification loss function guides the neural network through the plurality of performance score ranges while the regression loss function identifies specific scores based on the probabilities for the plurality of performance score ranges from the classification layer.

20 . The non-transitory computer-readable medium of claim 19 , wherein executing the instructions cause the one or more processors to:

obtain first engagement feedback comprising first interactions with a set of first training images by a first target audience, each first training image of the set of first training images added to the set of first training images responsive to a determination that a member of the first target audience viewed the first training image; and

for each first training image of the first set of training images:

calculate a first engagement metric for the first training image based on one or more first interactions with the first training image by the first target audience; and

train the neural network based on the first engagement metric.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2023
From: HAMEDI, JEHAN; HALLORAN, ZACHARY; SARAEE, ELHAM
To: ADHARK, INC.
Reel/Frame 065569/0223 →
CHANGE OF NAME Recorded Nov 15, 2023
From: ADHARK, INC.
To: VIZIT LABS, INC.
Reel/Frame 065583/0030 →
Continuity (3)
Continuation 17489530 · Sep 29, 2021
Continuation 16236298 · Dec 28, 2018
Related Publication 20240086971A1 · Mar 14, 2024
References Cited (50)
US 8494897B1 · Dawson · 2013 [cited by applicant]
US 8909563B1 · Jing et al. · 2014 [cited by applicant]
US 9996890B1 · Cinnamon et al. · 2018 [cited by applicant]
US 10176198B1 · Dhua · 2019 [cited by examiner]
US 10176396B2 · Smyth et al. · 2019 [cited by applicant]
US 10410108B2 · Shaji et al. · 2019 [cited by applicant]
US 10637826B1 · Luo · 2020 [cited by examiner]
US 10861077B1 · Liu et al. · 2020 [cited by applicant]
US 10872228B1 · Zhou · 2020 [cited by examiner]
US 11087273B1 · Bergamo · 2021 [cited by applicant]
US 20120030711A1 · Rae et al. · 2012 [cited by applicant]
US 20140086487A1 · Hao et al. · 2014 [cited by applicant]
US 20160098844A1 · Shaji et al. · 2016 [cited by applicant]
US 20160132749A1 · Smyth et al. · 2016 [cited by applicant]
US 20160335120A1 · Gupta et al. · 2016 [cited by applicant]
US 20170024761A1 · Ruiz et al. · 2017 [cited by applicant]
US 20170069327A1 · Heigold et al. · 2017 [cited by applicant]
US 20170098165A1 · Yang et al. · 2017 [cited by applicant]
US 20170221075A1 · Wang · 2017 [cited by examiner]
US 20170337687A1 · Wang et al. · 2017 [cited by applicant]
US 20180011876A1 · Li · 2018 [cited by examiner]
US 20180040019A1 · Gavlovski et al. · 2018 [cited by applicant]
US 20180108440A1 · Stevens · 2018 [cited by examiner]
US 20180174190A1 · Ferreira et al. · 2018 [cited by applicant]
US 20180211333A1 · Lackman et al. · 2018 [cited by applicant]
US 20190007425A1 · Butler et al. · 2019 [cited by applicant]
US 20190026609A1 · Shen et al. · 2019 [cited by applicant]
US 20190026786A1 · Khoury et al. · 2019 [cited by applicant]
US 20190043241A1 · Scheff et al. · 2019 [cited by applicant]
US 20190080176A1 · Lan et al. · 2019 [cited by applicant]
US 20190080456A1 · Song et al. · 2019 [cited by applicant]
US 20190108399A1 · Escorcia et al. · 2019 [cited by applicant]
US 20190132414A1 · Bongaarts · 2019 [cited by examiner]
US 20190147340A1 · Zhang et al. · 2019 [cited by applicant]
US 20190156204A1 · Bresch · 2019 [cited by examiner]
US 20190200797A1 · Diao · 2019 [cited by examiner]
US 20190205620A1 · Yi et al. · 2019 [cited by applicant]
US 20190245925A1 · Yamamoto · 2019 [cited by applicant]
US 20190251446A1 · Fang · 2019 [cited by examiner]
US 20190294729A1 · Jiang et al. · 2019 [cited by applicant]
US 20190355008A1 · Sewak · 2019 [cited by applicant]
US 20200107070A1 · Lopatecki · 2020 [cited by examiner]
US 20200126533A1 · Doyle et al. · 2020 [cited by applicant]
US 20200143204A1 · Nakano et al. · 2020 [cited by applicant]
US 20210082136A1 · Nikitidis et al. · 2021 [cited by applicant]
US 20210117948A1 · Voss · 2021 [cited by applicant]
US 20220051020A1 · Jha et al. · 2022 [cited by applicant]
US 20220198258A1 · Doggett et al. · 2022 [cited by applicant]
Lu et al., “RAPID: Rating Pictorial Aesthetics using Deep Learning,” (2014), Proceedings of the 22nd ACM international conference on Mulitmedia. [cited by applicant]
Selvaraju, et al. “Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization,” (2017), 2017 IEEE International Conference on Computer Vision pp. 618-626. [cited by applicant]