最适合分析 Google Analytics 数据的 ML 模型

人工智能 机器学习 深度学习 强化学习
2021-10-25 23:24:57

谷歌分析允许我收集关于每个网络会话的数据。为简单起见,我们假设对于每个用户,我们收集每个会话的页面数和在站点上花费的时间:

user_id visit_id page_views time_spent result
1       1        10         100        0
1       2        31         510        0
1       3        1          10         1

您将如何对这些数据建模?我希望ML 算法做什么

  1. 尽可能多地提取信息
  2. 具有灵活数量的输入(例如会话数可以达到无穷大)

我能想到的

  1. 聚合每个用户的数据,例如平均 page_views 或总 page_views 并将其输入通用算法,例如随机 forrest(但我会丢失聚合信息)
  2. 使用 LSTM 并最多提供最后 3 次访问(也会丢失信息,但这会比聚合更好吗?)

目标: 建立一个预测模型来分析所有用户会话并预测该人是否会转换。

2个回答

我了解在您的示例中,您对建模“结果”列的结果感兴趣。

我建议的一个简单模型是使用具有成功概率p的伯努利分布 ( https://en.wikipedia.org/wiki/Bernoulli_distribution ) 对其进行建模。

然后你可以用这样的东西对 p建模

x = a + b * log(page_views) + c * log(time_spent) + e

p = exp(x) / (1+exp(x))

其中e是正态分布的,e ~ N(0, sigma^2) (或简单地以零为中心)。

a、b 和 c 是您可以估计的参数。

即成功(转换)的概率被建模为取决于page_views 和time_spend 的某个变量的sigma 函数。您还可以在x的方程中添加 page_views 和 time_spend 的平方(和更高的幂) (即达到某个阈值 page_views 可以对转换产生积极影响,然后是消极影响,然后又是积极影响)。

还阅读有关逻辑回归的内容应该会让您走上正确的轨道:https ://en.wikipedia.org/wiki/Logistic_regression

我会将这些数据建模为输入数据的 3d 张量(用户、时间步长、特征)[组织取决于您使用的 DL 框架]。对于输出数据,还有一个合适的 3d 张量(用户、时间步长、结果)。

下一步将训练 LSTM 或 CNN 模型来预测结果(需要大量数据)(这将是我的首选)。如果您的数据较少,请按照其他答案的假设尝试逻辑回归。

祝你好运!