Computer Science Stack Exchange is a question and answer site for students, researchers and practitioners of computer science. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

What aspects of linguistics are necessary or good to know for natural language processing? What references do you recommend for studying those aspects? Thanks!

share|cite|improve this question

closed as too broad by Raphael Feb 7 '14 at 7:53

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

I believe that you don't need to know any linguistics for NLP these days, since everything is done using (nearly) oblivious statistical methods. – Yuval Filmus Feb 5 '14 at 23:41
At least when considering what features to be used and interpreting the results of statistical analysis, we do need to understand some aspects of linguistics? – Tim Feb 6 '14 at 0:48
You are asking for a summary of a whole field -- that's to broad. Can you narrow it down to, say, "What use is linguistic feature X in NLP?" Note that there is Linguistics; the folks over there may provide a useful additional perspective. – Raphael Feb 7 '14 at 7:54
@YuvalFilmus: That's not universally true, see e.g. Grammatical Framework. It is true that many popular tools rely on "dumb" n-gram approaches, but these have known and severe limitations. – Raphael Feb 7 '14 at 7:55

NLP is a big place, you might want to be more specific.

Within information retrieval, stemming is a linguistic idea that has become useful as a heuristic means of reducing vocabulary size. As a practitioner I learned about it from An Introduction to Information Retrieval.

share|cite|improve this answer
"NLP is a big place, you might want to be more specific." -- good indicator that the question is not suited for the site. – Raphael Feb 7 '14 at 7:56

It depends - generally, if you want to use or implement well known approaches or systems for some specific application, then you can get by without any linguistics, and if you want to improve state-of-art solutions, then you'd need at least a broad overview of general linguistics (things that apply to human lanuages as such), (non-CS) syntax theories, why POS-tags and phrase/dependency structures are chosen to be built that way, etc - but all the neccessary fragments tend to be taught as part of 'NLP courses', so you can get by with a single source and expect whoever is teaching that NLP course to gather up all the various domains.

Ah, and proper knowledge of your target languages - you can do quite a lot of stuff with foreign text you don't understand, but if you have some linguist available for every target language, then it is very useful.

share|cite|improve this answer

There is no good answer to your question. Much depends on the kind of NLP you want to do. Do you want to do man-machine interfaces, information retrieval, syntax checkers, machine translation, data extraction from corpora? Do you want to process text or speech? Are you interested in ill formed sentences? Are you concerned with syntax or semantic processing? And so on ...

Now, your question is about "aspects of linguistics [...] necessary or good to know for natural language processing". Is statistics an aspect of linguistics? Is formal languages theory an aspect of linguistics? Or simply, is NLP an aspect of linguistics? If not, where is the border? Recall that formal language theory started with linguists such as Chomsky or Bar-Hillel.

My suggestion would be to study some of the systems that have been developed for NLP, at various stages of language processing, and it will force you to extend your knowledge of linguistics as you go along. Use call by need when you learn, especially if you do not know what is essential.

Another interesting kind of systems to study (which are also NLP topics) are system used to extract linguistic data from corpora, whether lexical, syntactic or semantic. This data will then be fed to your NLP systems to process actual texts for whatever purposes.

Statistics and formal languages are important to structure understanding, but they have to be motivated by linguistic considerations too. But if you start with linguistics, you may be bogged down into countless very specific studies.

share|cite|improve this answer
Statistics and formal languages are not considered linguistics. Linguistics comes in many varieties, but although ultimately formal language theory arose from linguistics (Chomsky was involved), I wouldn't consider this "classical" linguistics. Hierarchical syntax and morphology are two examples of linguistic phenomena which may or may not be useful in NLP. – Yuval Filmus Feb 6 '14 at 1:46
@YuvalFilmus I am aware of what you are saying, but I am also trying to raise questions without being too assertive. What I am actually saying is that the border between formal languages as a mathematical body of knowledge and as a mean (a notation if you wish) of describing linguistic phenomena has been and is still evolving. Similarly, the role of statistics may not be as clear-cut as you seem to make it. To be true, classifications are often only what people make them, and much subject to change with perspective. And the OP wrote "aspects of linguistics", not "linguistics". – babou Feb 6 '14 at 10:48
"There is no good answer to your question." -- good indicator that the question is not suited for the site. – Raphael Feb 7 '14 at 7:56
@Raphael Well, my statement is also partly rethorical. The issue is also, as I tried to state in my answer, that it is not so clear what is "linguistics" itself. Why should NLP not be part of linguistics. Linguists may not agree, but I feel that NLP is much the mathematical theorization of linguistics, not just the engineering part of the field, and as such it is part of linguistics. Of course, theorization has a different meaning for linguists. I think there have been answers with some content, but no list of items to study. The question could have been moved to SE-linguistics though. – babou Feb 7 '14 at 17:44

The answer depends on what you want to do:

  1. For speech recognition: Phonetics and phonology
  2. For tagging and parsing: Morphology, syntax.
  3. For language understanding: Semantics and pragmatics.
share|cite|improve this answer

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