IP Library Granted Patent US 11,636,166
Granted Patent B1
US 11,636,166 · App. 16/919,083 · Granted Apr 25, 2023

Systems and methods for event tracking using time-windowed counters

Inventors: Bhalchandra Suresh Agashe (Sunnyvale, CA); Gil Shklarski (New York, NY); Christopher Alexander Stein (Los Angeles, CA); Nickolay Vladimirov Tchervenski (Bothell, WA)
Assignee: Meta Platforms, Inc.
G06F16/9535G06F16/24578G06F16/35G06N5/02G06N20/00G06Q50/01
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 11,636,166
App. No.
16/919,083
Granted
Apr 25, 2023
Kind
B1
Abstract

Some embodiments include tracking events and classifying assets within a computer system. A time series of occurrences of an event type associated with at least one asset is generated. A first signal value and a second signal value is determined based on the time series. The at least one asset can be classified based on comparison of the first signal value and the second signal value. The time series can be based on at least one time window including time intervals. Counters to determine a number of occurrences of an event type can be associated with the time intervals. Each of the counters can be incremented upon occurrence of the event type associated with the at least one asset during an associated time interval.

Claims (71)

1. A computer-implemented method, comprising:

generating a time series of occurrence counts of an event type associated with one or more assets within a social networking system;

selecting an asset of the one or more assets for classification;

incrementing at least one of the occurrence counts when:

an instance of the event type occurs within a predetermined time interval; and

the instance of the event type is associated with a unique user that was previously unaccounted for in the time series;

computing a first signal value for a classifier based on a first subset of the time series;

computing a second signal value for the classifier based on a second subset of the time series;

classifying the selected asset into a category based on a comparison of the first signal value and the second signal value; and

modifying, based on the category, a policy in the social networking system to interact with the selected asset.

2. The method of claim 1 , wherein:

the selected asset comprises a Uniform Resource Locator (URL); and

the URL is classified into a spam category.

3. The method of claim 1 , wherein the classification comprises at least one of:

a spam category;

a popularity category; or

a ranking category.

4. The method of claim 1 , wherein the selected asset comprises at least one of:

a content item;

an IP address;

a Uniform Resource Locator (URL); or

a message.

5. The method of claim 1 , wherein generating the time series comprises representing the time series as a curve function capable of integration.

6. The method of claim 5 , wherein:

computing the first signal value comprises integrating an area under the curve function over the first subset of the time series; and

computing the second signal value comprises integrating an area under the curve function over the second subset of the time series.

7. The method of claim 1 , wherein the event type is associated with content interaction by the unique user.

8. The method of claim 7 , wherein the content interaction comprises at least one of:

clicking a Uniform Resource Locator (URL) link;

sharing the URL link; or

hiding the URL link.

9. The method of claim 1 , wherein modifying the policy comprises at least one of:

requiring an additional step when a user interacts with the selected asset;

blocking an interaction involving the selected asset;

terminating an interaction involving the selected asset;

changing a popularity associated with the selected asset; or

changing a ranking associated with the selected asset.

10. The method of claim 2 , wherein:

the selected asset comprises a Uniform Resource Locator (URL); and

the additional step comprises requiring every n th user who shares the URL to complete a verification test before the share is submitted to the social networking system.

11. The method of claim 1 , wherein generating the time series includes updating the time series in real-time as a new instance of the event type occurs and is recorded.

12. The method of claim 1 , wherein generating the time series comprises:

storing the time series in a circular buffer; and

resetting at least one of the occurrence counts at an edge of the circular buffer.

13. The method of claim 1 , wherein the time series spans a time window that is divided into time intervals.

14. The method of claim 13 , wherein the occurrence counts track numeric counts of one or more events of the event type in an event log respectively during the time intervals.

15. The method of claim 13 , further comprising adjusting a number of the time intervals within the time window based on a degree of precision parameter for classification of the selected asset.

16. The method of claim 13 , further comprising adjusting a number of the time intervals within the time window based on an amount of available data storage in the social networking system.

17. The method of claim 13 , wherein the first subset is a time period encompassing one or more of the time intervals.

18. The method of claim 1 , wherein the time series spans a time window that is divided into exponentially decaying time intervals.

19. A system, comprising:

at least one processor programmed to:

generate a time series of occurrence counts of an event type associated with one or more assets within a social networking system;

select an asset of the one or more assets for classification;

increment at least one of the occurrence counts when:

an instance of the event type occurs within an associated time interval; and

the instance of the event type is associated with a unique user that was previously unaccounted for in the time series;

compute a first signal value for a classifier based on a first subset of the time series;

compute a second signal value for the classifier based on a second subset of the time series;

classify the selected asset into a category based on a comparison of the first signal value and the second signal value; and

modify, based on the category, a policy in the social networking system to interact with the selected asset.

20. A non-transitory computer-readable medium encoded with a plurality of instructions that, when executed by at least one computer processor, causes the at least computer processor to perform a method comprising:

generating a time series of occurrence counts of an event type associated with one or more assets within a social networking system;

selecting an asset of the one or more assets for classification;

incrementing at least one of the occurrence counts when:

an instance of the event type occurs within an associated time interval; and

the instance of the event type is associated with a unique user that was previously unaccounted for in the time series;

computing a first signal value for a classifier based on a first subset of the time series;

computing a second signal value for the classifier based on a second subset of the time series;

classifying the selected asset into a category based on a comparison of the first signal value and the second signal value; and

modifying, based on the category, a policy in the social networking system to interact with the selected asset.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2022
From: AGASHE, BHALCHANDRA SURESH; SHKLARSKI, GIL; STEIN, CHRISTOPHER ALEXANDER; TCHERVENSKI, NICKOLAY VLADIMIROV
To: FACEBOOK, INC.
Reel/Frame 059910/0993 →
CHANGE OF NAME Recorded May 16, 2022
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 060072/0298 →
Continuity (3)
Continuation 15387571 · Dec 21, 2016
Continuation 14668030 · Mar 25, 2015
Continuation 13631523 · Sep 28, 2012