我想将HTML文档分解成小块的信息。以维基百科文章为例,这在没有使用机器学习的情况下是相当容易实现的,因为内容的结构非常有规律。
当处理类似转换后的Word文档或博客文章时,HTML的结构会变得不太可预测。例如,有时文档中没有DIV标签,一个文档中可能有多个H1标题,或者根本没有标题等情况。
我正在寻找一种可靠的方法来自动在内容中插入分隔符,以便将其分解成大小合适的块。
我已经尝试寻找现成的训练模型用于此应用,但没有找到合适的。我考虑过自己训练模型,但对于如何构建训练数据的最佳方式没有把握。我考虑过的一个关于训练数据的选项是提供一个样本,指出文档中可能存在分段的位置,但我认为这不是最佳方法…
你会如何解决这个问题?
P.s. 我目前使用Tensorflow,但也乐意尝试其他途径。
回答:
我发现GROBID库对于不同输入文档非常robust(因为它基于在大型文档集合上训练的机器学习模型)。标准模型将输入的PDF文档解析成结构化的XML/TEI编码文件,这些文件处理起来要容易得多。 https://grobid.readthedocs.io/en/latest/Introduction/
如果你的输入是HTML文档,该库也提供了训练你自己模型的可能性。请查看: https://grobid.readthedocs.io/en/latest/Training-the-models-of-Grobid/