2012-02-13 176 views
5

我一直在研究java来找出两个文档之间的相似性。我更喜欢找到语义相似性,但还没有努力找到它。我正在使用以下方法。Python与Java的自然语言处理

  1. 提取术语/令牌(我使用JAWS用WordNet的除去同义词因此改善了相似)
  2. 做出术语文档矩阵
  3. LSA
  4. 余弦相似度

当我在看几个stackoverflow页面,我有很多python实现的链接。

我想知道,如果蟒蛇是一种更好的语言来找到文本类似,也想知道如果我能找到的python

+0

你可以在Python中做的所有事情,你也可以在Java中完成(有足够的工作)。也就是说,存在[自然语言工具包](http://www.nltk.org/),它是一个Python库,为自然语言处理提供了大量工具。 – 2012-02-13 04:57:53

回答

2

两个文件之间的语义similairty假设你没有平台限制这会限制你选择的语言,你应该根据你最喜欢的方式(我自己喜欢Python)选择你的语言,并为你的应用程序提供最好的库(@GregHewgill指出Python工具(Natural Language Toolkit)成熟和全面)。

所以,虽然我个人会选择Python,但它确实是你必须为自己选择的东西。

== ==编辑

question有关Java NLP库可以帮助你决定你是否可以使用Java为你分析;最热门的答案有你可以调查的清单。没有关于您的问题集的更多信息,我无法提供更具体的建议。

+0

谢谢..我从来没有在Python工作过。但是如果它有这么多的功能,我想我应该转移到Python并利用它。所以我想知道它是否会有优势,或者它们是否只提供相似的功能 – CTsiddharth 2012-02-13 05:11:05

+1

我认为Python是一种更自然,更具表现力的语言。 **但真的,这是关于图书馆**。如果我有问题需要解决,最好的库是基于Java的,我会使用基于JVM的语言。 – ironchefpython 2012-02-13 05:13:01

+0

感谢您的链接。我的项目旨在根据文档与参考文档的相似性对文档进行排名。我旨在从本地存储库中找到最相关的文档。由于它具有实时使用的前景,我希望它尽可能有效。 – CTsiddharth 2012-02-13 05:48:20