2012-02-13 25 views
5

He estado trabajando en Java para encontrar la similitud entre dos documentos. Prefiero encontrar similitud semántica, pero aún no he hecho esfuerzos para encontrarla. Estoy usando el siguiente enfoque.Python vs Java para procesamiento de lenguaje natural

  1. términos extraer/fichas (estoy usando JAWS con wordnet para eliminar los sinónimos de este modo mejora las similitudes)
  2. crea una matriz documento término
  3. LSA
  4. coseno similitud

Cuando i estaba mirando algunas páginas de stackoverflow, obtuve bastantes enlaces a las implementaciones de Python.

me gustaría saber si Python es un lenguaje mejor encontrar la similitud de texto y también me gustaría saber si puedo encontrar similairty semántica entre dos documentos en Python

+0

Todo lo que puede hacer en Python, también lo puede hacer en Java (con suficiente trabajo). Dicho esto, existe [Natural Language Toolkit] (http://www.nltk.org/) que es una biblioteca de Python que proporciona muchas herramientas para el procesamiento del lenguaje natural. –

Respuesta

2

Asumiendo que no tienen una restricción de la plataforma eso restringiría su elección de idioma, debe elegir su idioma según lo que le resulte más cómodo (prefiero Python) y que tenga las mejores bibliotecas para su aplicación (como @GregHewgill señaló las herramientas de Python (Natural Language Toolkit) son maduros e integrales).

Así que, aunque personalmente elegiría Python, es realmente algo que tienes que elegir por ti mismo.

== == EDITAR

Este question acerca de las bibliotecas de Java PNL puede ayudar a decidir si se puede utilizar Java para su análisis; la respuesta superior tiene una lista que puedes investigar. Sin más información sobre su conjunto de problemas, no puedo proporcionarle consejos más específicos.

+0

Gracias .. Nunca he trabajado en Python antes. Pero si tiene tanta funcionalidad, pensé que debería cambiar a Python y hacer uso de ella. Así que quería saber si va a ser ventajoso o si ofrecen funciones similares. – CTsiddharth

+1

En mi opinión, Python es un lenguaje más natural y más expresivo. ** Pero en realidad, se trata de las bibliotecas **. Si tuviera un problema que resolver, y las mejores bibliotecas estuvieran basadas en Java, usaría un lenguaje basado en JVM. – ironchefpython

+0

Gracias por el enlace. Mi proyecto tiene como objetivo clasificar los documentos según su similitud con un documento de referencia. Mi objetivo es encontrar el documento más relevante de un repositorio local. Dado que tiene perspectivas de ser utilizado en tiempo real, quiero que sea lo más eficaz posible. – CTsiddharth

Cuestiones relacionadas