根据关键字

时间:2017-05-11 14:31:46

标签: java elasticsearch machine-learning stanford-nlp jackrabbit

在其中一个项目中,我们将一些html文件存储在oracle数据库中,但是我们可以将它保存在文件中,或者在某些NOSQL数据库中更合适。我们给出了一些关键字,基于它们,我们需要在这些文件中找到相关部分。这些文件是基本的公司声明,新闻文章,财务报告等。现在需要找到不同的部分,让我们说下面的类别:

  • 风险使用犯罪,盗窃,诉讼,控告等关键词

  • 使用'等关键字的高级别更改将离开',任命某些官员'选举导演'等

  • 股东权利使用'股东权利'股东诉讼'财务重述'等
  • 等关键字

还有其他类别,他们定义了要搜索的关键字。因此要求 按类别划分提取与 MOST 相关的部分/段落。 重点在于找到最相关部分的高精度。 如果像 Solr或Elastic search或Jackrabbit 这样的技术提供我们是开放的。只需要正确的方向来纠正这里所需的技术堆栈。

目前我们正在尝试Oracle text search,但我相信我们可能有更好的程序化解决方案,也可能使用机器学习或NLP或Java中的某些库来实现这一目标。请给我一些见解。我是一名经验丰富的Java开发人员,并且正在使用Machine lean和NLP。我与语言无关,因此欢迎使用任何语言或技术的好解决方案。

1 个答案:

答案 0 :(得分:0)

你似乎对这个问题的方向是单词/短语搜索[easy] vs semantic search [hard]。多年来,有几个人致力于这样的解决方案[我遇到了苏格兰一家正在构建基于Java的解决方案的公司的人,但我不记得这个名字]。你在语义搜索方面遇到麻烦的地方就是有很多问题域[以及域内非常相关的分类法],其中语义对于相同的单词或短语而言是不同的。当然,有些人通过元标记数据(例如:图像,视频,复杂文档),然后搜索元数据,使“语义”工作更容易。

几年前,当我还是一名企业架构师时,我们将Verity用于谷歌企业。我不知道它是否仍然是一个产品,但它利用了Oracle Text并将其代码分层。

在当天,最先进的是Forester Research所谓的“用有机信息抽象连接数据,内容和文本”,但我不知道现在的状态在哪里。< / p>

我敢打赌谷歌可能会有一些你可以使用的工具:)。

听起来像一个有趣的项目!!!