I want to prototype and try some idea (some algorithm) in the field of text processing and nlp and if the results was good I want to publish some paper or journal article about that.

I am familiar with Weka, RapidMiner, Matlab and Python for text processing and nlp but I don't know what is the most frequently tools for those fields in the academic area?

As you know, comparing results with others is one of the most important parts of any academic paper. For this reason, I want to choose most frequently tools or language for this work.

Sorry for my bad English.

Thanks for your attention.


closed as too broad by David Richerby, Juho, Luke Mathieson, Gilles Jan 7 '15 at 21:37

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ The tools used should make no difference for the results, other than the running time, which is usually not an issue. $\endgroup$ – Yuval Filmus Jan 6 '15 at 12:39
  • $\begingroup$ Thanks for your attention, but running time is important for me because some part of my work is about optimization. Which tools you have seen more to implement in the articles? $\endgroup$ – b24 Jan 6 '15 at 12:52
  • 1
    $\begingroup$ You're welcome to look at some relevant articles yourself and prepare the statistics you're after. $\endgroup$ – Yuval Filmus Jan 6 '15 at 12:55
  • $\begingroup$ Thanks @yuval-filmus. I've asked this question to check if someone has already done such a statistics. Because re-invention of the wheel is not logical. $\endgroup$ – b24 Jan 6 '15 at 13:05
  • $\begingroup$ The exact tools used could potentially depend on the sub-area, which is why I suggested you take a look on relevant papers in your sub-area. $\endgroup$ – Yuval Filmus Jan 6 '15 at 14:16

My personnal opinion is that such comparisons usually make little sense because they can be too dependent on hidden specificity of tools or programming languages, or programming style and its interaction with those specificities.

In my opinion, the only proper way to compare techniques is by a precise knowledge of the interpretation machines. If you are comparing different algorithms intended to achieve the same purpose, you want to run them on some kind of unbiased abstract machine, providing some application meaningful primitives than can be used to implement on the same footing all the algorithmic variations.

Then you can actually count elementary computation costs over some chosen benchmark.

For example, I have seen this type of work done for various parsing algorithms, using a standardized PDA definition.

Making a slightly better tool than what exist for problem X in language Y is seldom worth publishing, unless there is some more abstract consideration of some theoretical work that shows that you are bringing something to the field, rather than just being a better hacker. And then the tool or language support does not matter so much, as long as you can compare with some known work, and explain credibly why your version works better.

Of course, if you actually manage to get major improvements, undisputable ones, then you have a much better chance of being published. But the the technical support you use will matter even less.


Not the answer you're looking for? Browse other questions tagged or ask your own question.