小编peq*_*uod的帖子

存储数万亿的文档相似之处

我写了一个程序来计算一组200万个文档中的相似之处.该程序有效,但我无法存储结果.我不需要经常访问结果,但有时需要查询它们并提取子集进行分析.输出基本上如下所示:

1,2,0.35
1,3,0.42
1,4,0.99
1,5,0.04
1,6,0.45
1,7,0.38
1,8,0.22
1,9,0.76
.
.
.
Run Code Online (Sandbox Code Playgroud)

第1列和第2列是文档ID,第3列是相似性得分.由于相似性得分是对称的,我不需要全部计算它们,但这仍然留给我2000000*(2000000-1)/2≈2,000,000,000,000行记录.

一百万行记录的文本文件已经是9MB.外推,这意味着我需要17 TB来存储这样的结果(在平面文本文件中).

是否有更有效的方法来存储这些类型的数据?我可以为每个文档创建一行,并在第一列中删除重复的文档ID.但那只是到目前为止.那么文件格式或特殊数据库系统呢?这必须是"大数据"中的常见问题; 我看过报道类似分析的论文/博客,但没有人讨论像存储这样的实际维度.

sql csv performance bigdata

7
推荐指数
1
解决办法
151
查看次数

与TF-IDF权重的余弦相似性的系统阈值

我正在运行对数千(例如10,000)文本文档的分析.我已经计算了TF-IDF权重并且具有成对余弦相似性的矩阵.我想将文档视为图形来分析各种属性(例如,分隔文档组的路径长度)并将连接可视化为网络.

问题是有太多的相似之处.大多数都太小而没有意义.我看到许多人通过将所有相似性降低到特定阈值以下来处理这个问题,例如,低于0.5的相似性.

然而,0.5(或0.6,或0.7等)是一个任意的阈值,我正在寻找更客观或系统的技术来摆脱微小的相似性.

我对许多不同的策略持开放态度.例如,是否有一个不同的替代tf-idf,使大多数小相似性为0?其他方法只能保持显着的相似性?

text document cluster-analysis similarity

5
推荐指数
1
解决办法
1589
查看次数

标签 统计

bigdata ×1

cluster-analysis ×1

csv ×1

document ×1

performance ×1

similarity ×1

sql ×1

text ×1