US 11,960,980 B2
Machine learning system to predict causal treatment effects of actions performed on websites or applications
Scott Kramer, New York City, NY (US); Cynthia Rogers, Palo Alto, CA (US); Eric Pollmann, Los Altos, CA (US); and Muhammad Bilal Mahmood, San Francisco, CA (US)
Assigned to AMPLITUDE, INC., San Francisco, CA (US)
Filed by AMPLITUDE, INC., San Francisco, CA (US)
Filed on Oct. 17, 2022, as Appl. No. 17/967,617.
Application 17/967,617 is a continuation of application No. 16/525,457, filed on Jul. 29, 2019, granted, now 11,475,357.
Prior Publication US 2023/0252346 A1, Aug. 10, 2023
Int. Cl. G06N 20/00 (2019.01); G06F 9/451 (2018.01); G06F 11/34 (2006.01); G06F 17/16 (2006.01); G06F 17/18 (2006.01); G06Q 30/02 (2023.01); H04L 67/50 (2022.01)
CPC G06N 20/00 (2019.01) [G06F 9/451 (2018.02); G06F 11/3438 (2013.01); G06F 11/3466 (2013.01); G06F 17/16 (2013.01); G06F 17/18 (2013.01); G06Q 30/02 (2013.01); H04L 67/535 (2022.05)] 20 Claims
OG exemplary drawing
 
1. A computing system comprising:
one or more processors; and
a non-transitory memory storing instructions that, when executed by the one or more processors, cause performance of:
receiving, for a particular interface, interaction data for a particular period of time which identifies a plurality of users and a plurality of actions performed by the plurality of users through the particular interface during the particular period of time;
identifying a particular action, from the plurality of actions, as an output variable;
generating a feature matrix comprising a plurality of rows corresponding to the plurality of users, and a plurality of columns corresponding to the plurality of actions, excluding the output variable;
receiving user data describing a plurality of attributes of the plurality of users;
using principal component analysis computing one or more confounding variables comprising a linear combination of a subset of the plurality of attributes using previous interaction data from a previous period of time prior to the particular period of time;
generating a covariate matrix for the one or more confounding variables, the covariate matrix comprising a plurality of rows corresponding to the plurality of users and a plurality of columns respectively corresponding to each covariate;
appending the feature matrix with the covariate matrix; and
training a machine learning model to predict the output variable using the appended feature matrix as inputs and a vector corresponding to performing or not-performing the particular action as an output.