我正在研究点击流数据集。我想出了以下示例数据集来解释我的问题:
ClickTimeStamp | SessionID | ART_weekOfYear | PagenameClicked | TimeSpentPerSession | CustID | ContractID | ... | TARGET |
2017-01-04 16:48:00 | 1 | 1 | P1 | 1 | abc | xyz | | 1 |
2017-01-04 16:48:53 | 1 | 1 | P2 | 1 | abc | xyz | | 1 |
2017-01-11 10:09:57 | 2 | 2 | P1 | 2 | abc | xyz | | 1 |
2017-01-11 10:11:24 | 2 | 2 | P4 | 2 | abc | xyz | | 1 |
2017-01-27 13:22:39 | 3 | 4 | P1 | 2 | abc | mnp | | 0 |
2017-01-27 13:24:01 | 3 | 4 | P7 | 2 | abc | mnp | | 0 |
上述数据集的每一行都有点击,TARGET 是(假设)合同是否保留(1)或不保留(0)。请记住,目标处于合同级别。
现在,我根据需要聚合上述数据集(即在 contractID 上聚合),训练集如下所示:
CustID | ContractID | ... | SessionID_conct | ART_weekOfYear_conct | PagenameClicked | TimeSpentPerSession_avg | TARGET |
abc | xyz | | "1-2" |"1-2" | "P1->P2->P1->P4" | 1.5 | 1 |
abc | mnp | | "3" |"4" | "P1->P7" | 2 | 0 |
问题: 对于数字特征,我只是取平均值(如 TimeSpentPerSession_avg),但对于分类特征,这并不简单。实际上,我的分类特征具有非常高的基数,例如“ PagenameClicked ”。所以我不能简单地将我的分类特征转换为虚拟变量,然后将它们聚合为数值特征。
我想知道处理分类特征的可能解决方案,使维度不会爆炸,并且我还可以在contractID上聚合新的表示。
我已经尝试过实体嵌入并阅读本文了解详细信息。我将每个分类特征转换为 16 维的嵌入表示。但是,现在我被困在为每个 contractID 聚合这些嵌入向量。请让我知道是否有人朝这个方向工作或有更好的解决方案。
感谢分配阅读这个问题。:)