Database 数据库中的相似性计算

Database 数据库中的相似性计算,database,set,cluster-analysis,similarity,Database,Set,Cluster Analysis,Similarity,我有一些集合,每个集合包含非恒定数量的元素。它们在数据库中表示,如下所示(这是一个非常简单的示例) 我有两个问题 如何有效地计算相似度 如何在数据库中表示计算出的相似性 请注意,由于n!复杂性 注意:我可以更改数据库的表示以及用于计算相似度的算法 对于此任务来说,这是一个糟糕的数据库模式。使用倒置的列表,例如Lucene(文本搜索)。谢谢。我认为你完全正确。它将以多快的速度提高计算速度,如何在数据库中表示相似性索引?或者我应该在提取时间计算它?取决于你的稀疏性。如果集合非常稀疏,则加速比可能会大

我有一些集合,每个集合包含非恒定数量的元素。它们在数据库中表示,如下所示(这是一个非常简单的示例)

我有两个问题

  • 如何有效地计算相似度
  • 如何在数据库中表示计算出的相似性
  • 请注意,由于n!复杂性

    注意:我可以更改数据库的表示以及用于计算相似度的算法


    对于此任务来说,这是一个糟糕的数据库模式。使用倒置的列表,例如Lucene(文本搜索)。谢谢。我认为你完全正确。它将以多快的速度提高计算速度,如何在数据库中表示相似性索引?或者我应该在提取时间计算它?取决于你的稀疏性。如果集合非常稀疏,则加速比可能会大大降低。想想lucene vs.linear scan。谢谢:)另一个问题呢:我应该如何用dB表示相似性指数,还是应该在用户获取数据时计算相似性指数?有什么建议吗?在数据库中存储所有相似性通常是不明智的——效率太低,并且使用O(n^2)内存。