我想实现一个可以准确识别相似日志文件的相似函数。到目前为止,我无法为我的问题找到合适的相似度指标。
我有几台电脑(大约 300 台电脑)生成的日志文件,其中每个文件都包含每天访问的 IP 地址。我想通过每天比较访问的 IP 地址来比较相似度。也就是说,我想比较 PC1 的 day1 和 PC2 的 day1 等等......
例如(假设每个日志文件仅包含 4 天的数据,如果在特定日期没有访问任何内容,则该行留空):
PC1:
day1: 155.69.23.11, 155.34.45.5
day2: 165.34.5.67
day3: //blank - nothing visited
day4: 155.35.45.55
PC2:
day1: 155.34.45.5, 155.34.45.6
day2: 165.34.5.67
day3: 155.35.45.55
day4: //blank - nothing visited
我在 PC1 和 PC2 之间的相似度得分是:
Total similarity = similarity(day1) + similarity(day2) + similarity(day3)
对于这个问题,我可以使用 Jaccard 相似度指数(将每天视为一组 IP 地址)。但我不确定这是否是一个合适的指标or
,在为这个问题应用 Jaccard 索引时是否存在任何技术缺陷(或需要满足的条件)。
在查找类似文档时,我看到有人将 Jaccard 索引应用于整个文档,但这不是我想要的。在我的例子中,我想对每一天应用 Jaccard 索引并将它们相加以找到最终的相似度值。这种方法在技术上合理吗?
谢谢你。
Update:
Objective of this study
- 我们有大约 1000 个 IP 地址,我们想要监控每台 PC 由同一个人使用的浏览(浏览这 1000 个 IP 地址)模式。这项研究为期 5 个工作日,我们会记录访问的 IP 地址。如果这些 IP 地址中的任何一个在星期一被访问,它的权重最高,而如果它在星期五被访问,它的权重最低。周二、周三和周四的权重相应地进行了标准化。这就是为什么我对日常相似性更感兴趣的原因。而我的最终目标是找到具有相似浏览模式的人(考虑所有 5 天)。这项研究有点奇怪,但我是为一个项目做的。