如何利用tags查询“相关文章”?

发布于 2022-08-26 18:48:31 字数 146 浏览 14 评论 0

项目用的是flask+mongodb+mongoengine,文章模型包含一个字符串列表的ListField(...)类型的字段用于存储tags,一篇文章可能有若干个字符串tag,我想在显示该篇文章的详细信息时,通过tags查询相关的几篇文章,python中应该怎么写更合理?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

当爱已成负担 2022-09-02 18:48:31

相关性可以用向量表示

假设一个系统中有N个TAG,TAG1/TAG2/TAG3/.../TAGN

一篇文章的TAG情况可以用一个只包含1和0的N维向量表示,两篇文章的相关性可以用向量的内积表示

比如说文章A的TAG情况是(1,1,1), 文章B的TAG情况是(0,1,1), 文章C的TAG情况是(1,0,1)

  • 给定文章A,A和C都应推荐
  • 给定文章B,应推荐文章A
  • 给定文章C,应推荐的文章也是A

实际实现的时候文章的TAG情况可以用binary数字表示,两个文章的相似性可以用两个binary的AND结果计算hamming weight

当然啦最简单的就是用现成的轮子,比如说果壳的这个 https://github.com/guokr/simbase

抽个烟儿 2022-09-02 18:48:31

看你希望怎么定义相关了. MongoDB能提供的功能是在tags这个数组上建索引,然后快速找到有相同tag的文章。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文