将一份新文件与其他文件进行比较

2024-04-23 21:13:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在处理法律文件

  1. 它们大部分是相似的,但可能有一些细微的差异,这可能会改变意思。例如,它们的措辞可能不同,或者在一个文件中有“1和2”,在另一个文件中有“1或2”,或者某些条款/子条款可能完全缺失
  2. 这些条款的顺序不一定相同

我想构建一个程序(在SQL、R或Python中),将一个文档与包含200个其他文档的库进行比较,并指出新文档与其他文档的不同和相似之处。你知道吗

到目前为止,我一直在用excel处理一个包含每个子句及其子句编号的文件(从4-5个文档而不是200个文档),然后手动比较新文档。你知道吗

这些问题是如何解决的?我不熟悉NLP,但我开始在R的tm包看,看不出它可以帮助我。相似性或不相似性度量将给我一个平均表示,同时我正在查看与所有200个文档以及不同/新的条款相比,哪些条款是标准的

  1. 突出说明与所有其他文件相比的差异(或新条款)?你知道吗
  2. 找出差异最为相似的文档的名称。你知道吗

Tags: 文件文档程序sqlnlp顺序差异手动
1条回答
网友
1楼 · 发布于 2024-04-23 21:13:23

我对R一无所知,但我认为一个名为NLTK的Python包会有所帮助。一个简单的vector space similarity可以很容易地解决你的问题。你知道吗

对于200个文档,你甚至不需要数据库。你可以直接从光盘上读这些文件。为了说明这一点,我从你的描述中做了两个假设:

  1. 类似的文档只是在“和”、“或”和“the”等词上略有不同。你知道吗
  2. 缺少的条款比保留的条款少得多。你知道吗

如果是这样的话,那么你可以分三步完成你的任务:

  1. 标记所有文档。您还需要启用stop words,它将过滤那些“and”、“or”和“the”。你知道吗
  2. vector space的形式表示文档
  3. 计算这些文档之间的相似性。你知道吗

相关问题 更多 >