如何对pdf原始数据进行K-Means聚类

How to K-Means clustering of pdf raw data

我想根据结构而不只是文本内容对 pdf 文档进行聚类。

纯文本方法的主要问题是,如果文档具有 pdf 表单结构或者只是普通文档或包含图片,它会丢失信息?

对于我们的进一步处理,这些信息是最重要的。 我现在的主要目标是能够主要根据其结构对文档进行分类,而不仅仅是文本内容。

要分类的文档以byte[](varbinary)的形式存储在SQL数据库中,所以我现在的想法是使用这个原始数据进行分类,而不需要事先进行文本转换。

因为如果我查看这些数据的十六进制输出,我可以看到重复的结构,这些结构似乎与我要分开的不同文档 类 相似。 您可以在我附上的屏幕截图中看到一些与第一印象相似的字节模式。

所以我现在的想法是训练一个 K-Means 模型,例如十六进制输出字符串。 在下一步中,我将尝试使用肘部方法找到最佳簇数,应该在 350 - 500 左右。

pdf 数据的大小在 20 kByte 和 5 MB 之间变化,大部分在 150 kByte 左右。为了训练模型,我有 +30.k 个文档。

当我研究那个时,结果很少。我只找到这篇文章,这让我不确定解决我的任务的最佳方法。 https://www.ibm.com/support/pages/clustering-binary-data-k-means-should-be-avoided

我的问题是:

就像 Ian 在评论中所说的那样,使用原始数据似乎是个坏主意。

通过进一步研究,我找到了首先读取 PDF 文件结构的最佳解决方案,例如使用这样的方法:

https://github.com/Uzi-Granot/PdfFileAnaylyzer

我用这些信息对数据进行了归一化和聚类,得到了很好的结果。