gpt4 book ai didi

artificial-intelligence - 确定数据库中项目之间的相似性

转载 作者:行者123 更新时间:2023-12-04 08:44:03 25 4
gpt4 key购买 nike

我们有一个包含数亿条日志数据记录的数据库。我们试图将这些日志数据“分组”为可能与日志数据库中的其他条目具有相同的性质。例如:

记录 X 可能包含一个日志条目,如:

Change Transaction ABC123 Assigned To Server US91



并且记录 Y 可能包含一个日志条目,如:

Change Transaction XYZ789 Assigned To Server GB47



对我们人类来说,这两个日志条目很容易被识别为可能以某种方式相关。现在,记录 X 和记录 Y 之间可能有 1000 万行。并且可能有数千个其他条目与 X 和 Y 相似,有些条目完全不同但有其他相似的记录。

我试图确定的是将相似项目组合在一起的最佳方式,并以 XX% 的确定性说,记录 X 和记录 Y 可能具有相同的性质。或者也许更好的说法是系统会查看记录 Y 并根据您的内容说您最喜欢与所有其他记录并列的记录 X。

我已经看到一些提到自然语言处理和其他查找字符串之间相似性的方法(例如只是强制执行一些 Levenshtein 计算) - 但是对我们来说,我们还有以下两个额外的挑战:
  • 内容是机器生成的 - 不是人工生成的
  • 与我们确定给定查询的结果的搜索引擎方法相反 - 我们试图对一个巨大的存储库进行分类,并根据它们之间的相似程度对它们进行分组。

  • 感谢您的输入!

    最佳答案

    有趣的问题。显然,这里存在规模问题,因为您并不真的想开始将每个记录与数据库中的每个其他记录进行比较。我相信我会考虑增加“已知类型”列表并针对该列表中的类型对记录进行评分,以查看每个记录在该列表中是否有匹配项。

    “评分”部分有望在这里得到一些好的答案——你对已知类型进行评分的能力是让它发挥作用的关键,我觉得你比我们处于更好的位置来做到这一点。也许是某种 soundex 匹配?或者,如果您能弄清楚如何“发现”新记录的哪些部分发生了变化,您可以将已知类型定义为正则表达式。

    那时,对于每条记录,您都希望确定您有匹配(高置信度)或匹配(低置信度)或很可能根本没有匹配。在最后一种情况下,您可能找到了一个新的“类型”,应该将其添加到“已知类型”列表中。如果您跟踪您匹配的每条记录的分数,您还可以返回低分匹配并查看稍后处理中是否出现更好的匹配。

    关于artificial-intelligence - 确定数据库中项目之间的相似性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8526865/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com