首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表示用户信息

表示用户信息
EN

Data Science用户
提问于 2020-04-18 07:02:34
回答 1查看 32关注 0票数 0

我的任务是代表用户特征矩阵,我有性别、年龄等特征,但我也有一个多值功能,叫做“观看的电影”,它本质上是那个用户观看的另一张电影名称表,有一个数字的持续时间,电影的顺序并不重要。而且,观看的电影可以从20部电影到300部电影。那么,怎样才能最好地将“看过的电影”作为一个特征向量来表现呢?

EN

回答 1

Data Science用户

发布于 2020-04-18 08:12:43

热编码

对于每个用户,创建一个包含电影目录长度的向量,并将1添加到用户观看的电影中,并将0添加到用户没有观看的电影中。

这是一种非常幼稚的方法,但取决于您的任务可能就足够了。

请记住,您的数据突然变得稀疏,因此选择能够处理此类数据的算法。好的一点是,对于稀疏数据来说,任何线性以上的内核通常都不是必需的。

考虑到

持续时间的

您还可以进行热编码,而不是在观看的电影中添加一个1,而是添加该人观看的时间。

然而,对于比其他影片更长的电影来说,这可能会开始产生偏见。因此,您可以尝试两种标准化技术:

  1. 电影长度正常化。花时间看电影,并将电影的实际长度除以。(例如,用户看了75分钟,但是这部电影只有90分钟,所以你可以看到75/90 = 0.83)
  2. TF-以色列国防军通常用于NLP,但您可以在这里应用它。此方法还考虑到所有用户观看电影的频率。平衡重要的电影(即被许多用户观看)和不太重要的电影之间的权重(例如,很少人或只有一个用户观看moveis )。

其他

根据您的用例,您可以开始创作并组合电影:

  • 按类型分组电影(例如10种类型),并计算每种类型的观看时间。
  • 检查观看电影的百分比,并将其分组为watched only the beginningwatched more than halfwatched the full movie,并计算每个用户的每个类别。
票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/72524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档