首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何存储集合,快速找到相似的模式?

如何存储集合,快速找到相似的模式?
EN

Stack Overflow用户
提问于 2009-01-20 18:48:03
回答 2查看 504关注 0票数 0

(这不是作业,也不是作业。这只是我的个人兴趣/职业,完全是虚构的。但我对一个好的算法或数据结构感兴趣。)

假设我会经营一个交友网站。而我的特写将是和电影品味相匹配的单曲。(为什么不呢?)

在这种情况下,我需要一种方法来存储每个用户的电影收视率。(到目前为止没有问题。)我需要一个数据结构来找到最合适的用户。两种口味模式之间的距离将是两个用户之间所有评分之间的平均距离。

示例

代码语言:javascript
运行
复制
movies   A B C D E F G H I J K L M ...
user Xm  9 5   1   1   5
user Ym      4 6 1         8
user Zf  9   6 4           7

距离(X,Z) = avg( abs(9-9) + abs(1-4) )= 1.5

距离(Y,Z) = avg( abs(4-6) + abs(6-4) + abs(8-7) )= 1.666

所以X先生比Y先生更适合Z太太。

我喜欢那个.

  • ..。不需要对数据库进行很多操作
  • ..。不需要处理很多数据
  • ..。跑得快
  • ..。提供最佳匹配
  • 好吧,也许我也会考虑好的近似。

请记住,这也应该适用于数千部可能的电影,只有20-50部电影的用户,以及成千上万的用户。

(因为这是一个精神上的难题,而不是一个真正的问题,所以工作不是真正的帮助。)

您的搜索算法或数据结构是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-01-20 20:18:51

听起来很像Netflix奖的挑战,更具体地说,是最流行的方法的前半部分。您想要做的事情的可能实现是多种多样的。它们中没有一个是特别有效的,而且L1度量对于可靠的相关性来说不是一个特别好的选择。

票数 3
EN

Stack Overflow用户

发布于 2009-01-20 19:04:02

看起来你在电影空间里寻找最近邻。你的距离函数是L1度量。您可能可以使用某种类型的空间指数。也许您可以使用来自协同过滤的技术。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/462563

复制
相关文章

相似问题

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