Live data from Hacker News

Deep Learning for NLP Best Practices

ruder.io

1–10 of 14 posts

Re: Deep Learning for NLP Best Practices

#4
Are there any libraries out there that implement some/most of these best practices and approaches to NLP? From what I've seen, the existing ones (Stanford NLP, OpenNLP) are getting somewhat dated. Many non-PhD people (including me) would find such a library incredibly useful.

Re: Deep Learning for NLP Best Practices

#6
post #4

Are there any libraries out there that implement some/most of these best practices and approaches to NLP? From what I've seen, the existing ones (Stanford NLP, OpenNLP) are getting somewhat dated. Many non-PhD people (including me) would find such a library incredibly useful.

As with almost all things machine learning, python libraries are where you will find most of the action.

I can recommend https://spacy.io for a low fuss solution to get you up and running quickly.

Oversimplifying quite a bit, if spacy focuses on syntax, then gensim focuses on semantics (https://en.wikipedia.org/wiki/Distributional_semantics). Gensim has an active community and is well documented.

https://radimrehurek.com/gensim/

If you have the data, can spend a few days experimenting and if you want something that can be orders of magnitude faster than deep learning to train, there's vowpal wabbit. Prediction speed is blazing. Results can be nearly state of the art but with a cost that's a great deal less. It's C++ but with bindings for many languages. It's very poorly documented.

https://github.com/JohnLangford/vowpal_wabbit/wiki/Learning%...

I've never taken a gander at Facebook's fastText.

Re: Deep Learning for NLP Best Practices

#7
post #4

Are there any libraries out there that implement some/most of these best practices and approaches to NLP? From what I've seen, the existing ones (Stanford NLP, OpenNLP) are getting somewhat dated. Many non-PhD people (including me) would find such a library incredibly useful.

OpenNLP is pretty mediocre.

StanfordNLP is pretty close to the state of the art for things like POS tagging (in English anyway. Not familiar with benchmarks in other languages)

As mentioned in the other reply, Spacy, Gensim, Fasttext and VW are great for specific things.

Re: Deep Learning for NLP Best Practices

#8
post #4

Are there any libraries out there that implement some/most of these best practices and approaches to NLP? From what I've seen, the existing ones (Stanford NLP, OpenNLP) are getting somewhat dated. Many non-PhD people (including me) would find such a library incredibly useful.

I have found CoreNLP to be the best library for POS tagging, NER, etc and Gensim for word vectors and summarization. Others have recommended Spacy, but I have found it to be inferior to CoreNLP.

Re: Deep Learning for NLP Best Practices

#9
post #8
post #4

Are there any libraries out there that implement some/most of these best practices and approaches to NLP? From what I've seen, the existing ones (Stanford NLP, OpenNLP) are getting somewhat dated. Many non-PhD people (including me) would find such a library incredibly useful.

I have found CoreNLP to be the best library for POS tagging, NER, etc and Gensim for word vectors and summarization. Others have recommended Spacy, but I have found it to be inferior to CoreNLP.

Just noting that CoreNLP is StanfordNLP (for those who are unaware).

I think it is widely accepted that CoreNLP outperforms Spacy in terms of accuracy for POS and NER.

Spacy is very convenient and works well enough for most tasks. It can also load Gensim vectors.

Re: Deep Learning for NLP Best Practices

#10
post #7
post #4

Are there any libraries out there that implement some/most of these best practices and approaches to NLP? From what I've seen, the existing ones (Stanford NLP, OpenNLP) are getting somewhat dated. Many non-PhD people (including me) would find such a library incredibly useful.

OpenNLP is pretty mediocre. StanfordNLP is pretty close to the state of the art for things like POS tagging (in English anyway. Not familiar with benchmarks in other languages) As mentioned in the other reply, Spacy, Gensim, Fasttext and VW are great for specific things.

What is your criteria if you think OpenNLP is mediocre?
Post reply on HN