如何在我的案例中生成数据特征,以便我可以使用 LinearRegression 等工具进行预测?

Posted

技术标签:

【中文标题】如何在我的案例中生成数据特征,以便我可以使用 LinearRegression 等工具进行预测?【英文标题】:How to generate features of data in my case so that I can use some tools like LinearRegression to predict? 【发布时间】:2017-03-07 00:23:25 【问题描述】:

我是这个领域的新手。作为零售商,我想分析一下,在我的促销活动中,哪位顾客购买了我的商品会成为忠实顾客。我有一个促销期间的用户操作列表和用户信息,还有一个客户和商家对的列表,其客户被称为忠诚于商家。我还有另一个客户和商家配对列表,我需要预测他们是否会有忠诚的关系。数据量很大,我这里放几行。

user_id item_id cat_id  merchant_id brand_id    time_stamp  action_type
168006  348194  544     692         517         625         0
168006  768080  984     706         1060        1016        1
168006  810877  284     692         517         625         2

user_id#merchant_id prob
7562#3571           0
7562#4784           0
7562#3404           1

cat_id:产品类别 action_type:代表添加到购物车、购买、添加到收藏夹等内容

我想我可以使用 sklearn.linear_model.LinearRegression 之类的东西来预测我的预测列表中的 prob 项目,方法是将每个 user#perchant 对作为一个项目。这里prob 表示1 表示忠诚,0 表示不忠诚,在新列表中,prob 将是一个浮点数。

我还有一个很容易处理的 user_information 列表,我不会把它放在这里。但我不知道如何从我的用户操作列表中生成功能。你能给我一些想法吗?事实上,我仍然不知道是否应该使用 LinearRegression 或者更好的工具?

【问题讨论】:

【参考方案1】:

这是一个很好的问题。您在此处捕获的是您拥有一些数据(与商家相关的用户操作),并且您希望将其转化为洞察力(用户对商家进行更多操作的概率)。

这个问题与 Netflix 的问题非常相似。他们有观众(如您的客户)和电影(如您的商家或产品),他们需要在观看电影之前知道观众会喜欢什么电影。这是一个推荐系统。

这里有一个关于这个主题的好课程:https://www.coursera.org/learn/ml-recommenders

从概念的角度来看,您要做的是了解每个客户的偏好向量和每个商家的描述向量。偏好和描述向量结合起来确定推荐。

如果我要在神经网络中实现这一点,我会执行以下操作:

1 对客户进行热编码,并在前馈网络中将其连接到几个节点。如果您认为有 5 个不同的偏好维度,则使用 5 个节点。可能多达 10 个。

1 对商家进行热编码,并在前馈网络中将其连接到几个节点。如果您认为商家价值有 5 个不同的维度,则使用 5 个节点。可能低至 3。

在客户和商家的 1 热编码之上的这两个较小的层为商家和客户构成了一个降维层,并将对他们的偏好进行编码。

现在向两个网络提供另一个小层(可能又是 5 个节点),然后提供给两个输出节点(1 表示不适合,1 表示适合)。

根据您的训练数据训练整个配置。最后,您将了解客户的偏好和商家的描述,以及它们在概念上的匹配方式。

当您有新客户或商家时,您的任务是发现他们的向量,而不是重新计算所有内容。您可以使用 K-means 之类的技术来寻找与该客户相似的客户或与商家相似的商家。

【讨论】:

以上是关于如何在我的案例中生成数据特征,以便我可以使用 LinearRegression 等工具进行预测?的主要内容,如果未能解决你的问题,请参考以下文章

如何在我的颤振测试中生成未测试文件的测试覆盖率?

使用 Scikit-learn Pipelines,当特征依赖于其他行时,如何从时间序列数据中生成特征?

如何在我的应用程序中生成 IPython qtconsole,同时将现有对象传递到该控制台

如何在 Qt 应用程序中生成按键事件到系统(win7)(模拟用户在键盘上按键)?

无法在 MVC 5 项目中生成密码重置令牌?

如何使用jpa项目eclipse在实体类中生成唯一约束