What is NLP?
NLP (Natural Language Processing) is a research area under artificial intelligence that aims to be able to process, understand, analyze, and transform the natural language produced by people. As it still contains problems that cannot be solved completely, a lot of investment and research is actively being made on it. Natural language processing, which dates back to the 1950s, has been fluctuated like other artificial intelligence areas over time. Along with the examination of different methodologies, it had been defined as an unsolvable area and was considered no need to invest more in specific periods of history. However, over time, researchers started to investigate NLP through various sub-tasks. With the innovations in the computer science world and related algorithms, it began to draw intense interest again. In recent times, NLP has started a new era to take advantage of this technology, like many areas of study where deep learning has shown its effect, so far it will run rings around state-of-the-art solutions. It has entered the golden age with the appearance of learning methods.
Contrary to popular belief, what is more laborious than processing numerical data is actually to know grammar rules, metaphorical expressions, and meaning of the phrases in the language. Frequently, a context or foreknowledge on the topic of the text is required. However, in numerical data processing, mathematical expressions are enough to solve problems without any need for further information such as the context.
For example, we cannot expect the computer to know that water is a liquid form, and ice is a solid form, but with statistical methods, we can figure that these two terms may be related to each other.
If we come to the question of why natural language processing is such a need, first of all, the state of communication tools and the data produced should be analyzed: By 2025, the data to be provided daily is expected to be 463exabytes (equivalent to 212.765.957 DVDs). We can think that much of this data consists of written content or content that can be translated into text (video, audio). In this dimension, we all know that it’s impossible to start an operation so that the content created by people in their own language can be analyzed and understood. For this reason, technologies that make this size of data meaningful to analyze at various levels emerge as a vital need.
What are the examples that NLP frequently touches our lives today?
In a search you do on Google, the search engine must first understand what you have written to be able to recommend the ad suitable for your search so that it can present you the ads associated with your search. In a search for a location, we can consider it a concrete example of suggesting flights to that destination, hotels for accommodation, or restaurants to visit. Besides, systems that can distinguish your spam e-mails from your incoming e-mails do this by using NLP. Our smart assistants, whom we frequently use in daily life, understand what we say, and produce answers and solutions accordingly, using NLP technologies.
In classical search algorithms, by searching the keywords to be searched, the sources of those words are listed by the ranking algorithms, and the results are obtained.
Semantic search, on the other hand, allows the search of meaningful words close to those words in the sources by considering not only these keywords but also their meanings. The semantic search method also makes use of summarization and concept tree extraction techniques on the side of the sources to be searched, enabling the understanding of which terms are more important in those sources and making the source stand out in the search results when the keywords match these terms
Chatbots are digital assistants who can communicate with users in natural language. A bot where we can make all the conversations with a person who has great general knowledge and chat comfortably with all the richness of the language is the ideal point for chatbot developments. However, existing systems have not yet produced such a bot.
For now, chatbots are often used to guide users in a particular area, listen to their problems or inform them on specific points. Thanks to the chatbots, the effort spent in communication with the customer can be significantly reduced. In Turkey, we can see that many banks actively use these systems in customer service.
In the functioning of chatbots, by using natural language comprehension, intention, and asset detection, keyword extraction techniques, what information the user wants to say in his expression, what information he gives such as special name, brand, date, place and what is the subject of the expression is obtained.
Then, various methods such as summarization and semantic search are used to create a suitable response for the chatbot to generate information from the resources it has.
In expressing the response, natural language production techniques come into play.
Social media analysis
Agencies that follow media on behalf of companies were replaced by tools that were automatically tracked as a result of the increase in online publications and improvements in natural language processing. These tools can collect all data about the company instantly from both online newspapers and magazines and social media applications. The semantic search algorithms mentioned above are also very useful in making decisions about what data is relevant to the company while collecting the data. After the data is collected, various analyzes are made by using natural language processing techniques to present this data to the company. Here are a few examples from these analyzes:
- Summarizing collected data and extracting essential points to make it short enough for a person to read in a reasonable time.
- Analyzes such as the most mentioned topic obtained by classifying the data according to their subjects with supervised or unsupervised learning methods, topics that are more underlined compared to last month, and new agendas that stand out this month.
- Information on semantic analysis of the data and information on which subjects are positive and negative on the company
Customer satisfaction analysis
Many of the analyzes we mentioned in the social media monitoring section can also be used as customer satisfaction analysis. In customer satisfaction analysis, companies often use data that reflects their one-to-one communication with their customers, along with online resources. These data can be the data of the company’s chatbot speeches, requests/ complaints e-mails sent to the open mail address, or satisfaction surveys conducted after the contact with the customer.
Follow-up with surveys is a standard method for tracking customer satisfaction. Multiple-choice surveys are generally preferred for the results of these data to be analyzed automatically, but these surveys may not be sufficient for the customer to express itself fully. In these cases, natural language processing techniques come into play for open-ended questions and their analysis.
A much more comprehensive and detailed version of the information that can be taken from multiple-choice questionnaire questions can be obtained in this way.
In customer satisfaction, it is especially important in which class a customer comment is. Natural language processing techniques can instantly classify each new comment and label it with labels such as thanks, complaints, requests. As a result of this labeling, the company can identify the comments it will prioritize and prioritize their implementation and prevent the spread of negative comments or increase the permanence of positive impressions.
Solution Approaches for NLP:
Most of the problems in NLP have been tried to be solved with different methods over time. Rule-based approaches, which are frequently used methodologies, especially in the early periods, have found themselves very common and have continued these hegemonies for a very long time. However, it has been repeatedly demonstrated by researchers that rule-based coding approaches are not as easy to develop as thought. Because many of the rules, put forward to define the language into a formal pattern, contradict each other in complex examples and the solutions remain only as local solutions. For these reasons, the use of automata that accepts formal languages has become widespread.
Nevertheless, it has been repeatedly demonstrated that all problems related to NLP cannot be achieved even with the definition of such rules. For example, it is useless to use rules to solve tasks where contextual knowledge is needed. Elimination of uncertainties at the morphological level frequently encountered in additive languages such as Turkish requires a context-dependent solution entirely in the sentence. “O elmayı alın ve yerine koyun.” which means ”Take that apple and put it back.” When the morphological analysis of the word “alın”. In the sentence is made, more than one result is encountered. “alın”, which defines a region on the human face -forehead
When it comes to data-based models, Machine Learning technology includes the first methods that come to mind. These models, which generally aim to create a prediction model based on historical data, generate a decision-maker by producing statistical or probabilistic models over the data. Machine learning models, which provide more comfortable and successful solutions than rule-based systems, do not need any human intervention or intellectual effort by learning from the data on their own. However, compared to rule-based models, their handicap is that: they need data. Because it is very costly to reach the reference data (training set), which is called the gold standard. However, machine learning models that produce higher rates of successful solutions to problems are presented almost as a single solution today.
What are the difficulties in resolving NLP?
To mention some examples that show that NLP is still an open-ended and completely unresolved problem.
Problems that we call ambiguity (uncertainty) at various levels are encountered in natural language processing studies. Ambiguity is the problem that more than one answer is possible, and it is not possible to decide which one is the right option. For example, encountering words that have the same appearance in surface form but have different qualities in terms of morphological analysis, with the correct analysis in sentences. An example of the word “alın” was given in the previous chapters of this article. In Speech & Language Processing (https://web.stanford.edu/~jurafsky/slp3/), an example of the ambiguity that occurs in the sense of a sentence is given as follows.
I made her duck. 
- I cooked waterfowl for her
- I cooked waterfowl belong to her
- I created the duck she owns.
- I caused her quickly to lower her body or head
- I waved my magic wand and turned her into undifferentiated waterfowl.
Another important phenomenon of natural languages is that we can express the same idea in different terms that also depend on a particular context: large and huge, they can be synonyms in defining an object or structure, but they cannot be substituted in all contexts. As another example, the words “home” and “house” are synonyms, but they cannot be used interchangeably in this sentence: “My home is a two-bedroomed house.”
Because “house” refers to a place where you live while “home” refers to a place where you feel you belong to.
In NLP tasks, the system should be able to use synonymity information and different ways of naming the same object or phenomenon, especially when it comes to high-level tasks that mimic human dialogue.
The process of finding all expressions referring to the same entity in a text is called a coreference resolution. This step is an essential step for many high-level NLP tasks that include natural language understanding, such as document summarization, question answering, and information extraction. This problem, which has been very difficult for NLP practitioners in recent years, has experienced a revival with the introduction of the latest Deep Learning and Reinforcement Learning techniques. It is currently suggested that NLP neural architectures such as RNN (Recurrent Neural Network) and LSTM (Long-Short Term Memory) can be useful in improving the performance of the identity solution.
David went to the concert. He said it was an amazing experience.
He refers to David.
It refers to the concert.
Every time I visit her, my grandma bakes me cookies.
Her refers to my grandma.
Stages of NLP:
Natural language processing has sub-tasks within itself, like other fields of study. Each of these subfields is still under research, and almost none of them have been fully solved. Language is a living entity, and it is not merely based on instantaneous knowledge but the accumulation of it. Therefore, decoding a language is only possible by decoding the human cognition to its full extent.
The subfields of Natural Language Processing are to accommodate a wide range of tasks, from the analysis of the voice to the analysis of discourse. And we can only mention the completion of a high-level analysis by successfully performing these tasks from the bottom up.
- Phonology: It is the phase that examines what sounds people use while using the language and the sound associations that make up the language.
- Morphology: It is the layer that examines the structures of words (appendix-root).
- Syntax: It is the layer that examines the relationship between words and the sequence of the sentences.
- Semantic: It is the layer that examines the meanings of words and the total meaning they create for sentences and text when they come together.
The fact that natural language processing attracts a lot of attention today is that this technology will be used in all systems that will support people in the future. When we say a humanoid machine, one of the most critical features that define it is that it can communicate. Considering that the natural language is the most significant part of the communication between people, everyone knows that Natural Language Processing will maintain its place among researchers and technology followers for much longer.
 are abstract models of machines that perform calculations on an input by acting in a number of states or configurations.
 Morphological parsing, in natural language processing, is the process of determining the morphemes from which a given word is constructed.
 Jurafsky, D. (2000). Speech & language processing. Pearson Education India.