Natural language processing is a field of computer science that is used to generate reactions between computers and human languages. Human languages are referred to as "natural languages" and the field is abbreviated to NLP. It is rapidly becoming one of the most advanced and potentially important fields of CS as it deals with human-computer interaction. However, NLP is not easy. This is because computers dont have a brain of their own. They do and learn only from the input they receive. For example, a sentence such as "Smash 10 eggs on my head" will be effortlessly understood by a human but computers will have a hard time processing it. Many modern NLP algorithms are constructed using machine learning. Machine learning deals with the construction of algorithms that enable the computer to learn from information and data provided to it and also make predictions on this data. Machine learning-based algorithms have many advantages over algorithms designed by humans. Machine learning focuses automatically on the most common cases contrast to the approach taken by humans who are often confused where effort must be mostly directed. Machine learning-based procedures use statistics to produce models that contain information which are not so obvious to humans, who usually end up making mistakes and consume more time. Also, systems that are based on Machine Learning can be made to give out more accurate output just be giving it more input data as the machine learns from this data automatically. Humans, on the other hand can make their own algorithms more accurate only by increasing the complexity of the algorithms. This is always more time consuming and also opens up more room for error. NLP evaluation is done to measure the quality of the algorithm, to conclude how effective it can be. There are different types of evaluation. Some of them are automatic and manual evaluation. Automatic evaluation is used to automatically evaluate the NLP system/algorithm by comparing what output it gives with the desired goal. This, although expensive, can be repeated as often as needed, and this repetition will not be so costly. Manual evaluation is performed by humans and usually get the upper hand as they are familiar with natural languages. In the future, there is no doubt that NLP will advance. But it is, of course, not certain whether computers will understand all human languages 100%. This goes all the way back to how much Artificial Intelligence(AI) will develop in the future.

1. What is the future of NLP?
2. Can we ever build a computer than can understand Natural Languages just like it does computer language?
3. Can we research on this area in CMU?

1. NLP
3. NLP