我试图在2个文档中找到类似的段落。每个文档都有多行多段的段落。段落中的文本有一些更改。这些单词可以插入或删除或拼写错误。例如
Doc1.Para
这是一行文字
Doc2.Para
这是一林文字
您可以在此处看到某些单词缺少('of'),而某些单词的拼写不同。因此,参数并不完全相同,而是相似。并且相似性不是基于语义或本质。它只是基于文字。
这些段落的顺序不相同。例如
Doc 1
Para 1
Para 2
Para 3
Para 4
Doc 2
Para 3
Para 4
Para 1.1
Para 2
Para 1.2
在这里你可以看到顺序不一样。也可以像Doc1.Para1一样将参数拆分为2个参数Doc2.Para1.1 + Doc2.Para1.2。
我必须检测Doc1中的哪个参数与Doc2中的哪个参数相似。寻找某种开源工具或某种算法。
我正在尝试构建一个本质上必须执行命名实体识别(NER)的NLP应用程序。我遇到了GATE。据我了解,这是构建NLP应用程序的框架。我测试了ANNIE,它是随GATE一起发布的IE系统,但我的域的NER结果未达到预期。实际上,任何NER(例如Stanford CoreNLP或NLTK)都没有给我所需的结果。因此,我决定调整现有系统以获得所需结果。
关于GATE,我喜欢几件事情:
1.组件的模块化:例如在ANNIE中,诸如Tokenizer,Gaztteer,Sentence splitter,POS标记器等组件可以彼此独立使用。
2.它的规则语言称为JAPE,它具有很好的编写规则或模式的方式。
但是我想了解的有关GATE的几件事是:
1. GATE的其他主要优势是什么,特别是对NER?
2. GATE添加新组件的灵活性如何?例如,某天是否要在GATE中使用NLTK的POS标记器?
3.如果我想在GATE中使用自定义机器学习模型?
4.我知道谢菲尔德大学的NLP小组参与了GATE,但是我想知道GATE社区的活跃程度以及对GATE的支持有多活跃?
5. GATE可以用于商业软件吗?
热衷于此的实际使用GATE的人的建议
场景:我曾经从一个文件中Apache Tika获取.我需要解析这个以获取特定标签之间的文本(例如div或p标签).为此,我用来在标签之间获取文本.XHTMLDOCXXHTMLJsoup
问题:原来XHTML有这样的文字:
some text [tab-space][tab-space] other text.
Run Code Online (Sandbox Code Playgroud)
但是Jsoup我得到了这个:
some text other text.
Run Code Online (Sandbox Code Playgroud)
所以标签空间丢失但我需要得到文本,即包括tag-spaces.是否可以使用Jsoup或是否有其他Java库来执行此操作?