Friday, 21 October 2016

Natural Language Processing and Sanskrit

In the last few years, this questions has been asked many a times and in Indian Community, this has become a hot topic. So, let's see how these things work and what role Sanskrit can play in it.

Well, let’s try to understand what AI is. AI is simply a way of learning for computers. Computers learn by its own set of rules, like each and every child on earth do, even you did.
Why a new born cannot speak ?
Because he/she does not know what to speak. He/she learns the way adults interact. So, if the adults speak in Bengali, they eventually speak it first, if adults speak English, he/she speaks in English and with course of time, (s)he understands and acts as if adults do.
If you ask a 6 month old baby to speak, (s)he most probably utter something that we are incapable of understanding, because that is his/her way of expressing, which adults don’t understand.
With course of time, the baby will understand what is the meaning of a new word, what is the course of action with it and will store each information in his/her memory and will act sticking with memory. In time, when (s)he grows, (s)he accumulates more of the vocabulary and act accordingly and it is a day to day process.
That was a bit of 10000000 feet overview of my understanding of brain (my understanding may be wrong, please correct me).
Now, that is the case of NLP, the computer starts speaking/interacting accordingly with Natural Languages (which by default any computer does not understand, because it only understands 1 and 0 which in turn is a Natural Language for the whole Digital community including from your motor bike’s odometer to ultra computing devices like super computers).
That was a bit of 10000 feet overview of NLP.
So, that was a simple non technical overview of both the processing.
Now let’s speak in terms of Sanskrit becoming the most suitable NLP language, it would be if only majority of people communicate in Sanskrit. With my experience of AI and Sanskrit, I would say it may be possible.
Now, let’s test the feasibility ->
  1. Sanskrit is unambiguous in terms of processing. Thanks to the strict grammar rules. So programming an NLP would be much more easier and efficient.
  1. Sanskrit is not used in day to day basis and almost no one communicates in Sanskrit these days. So, the options of AI for learning is extremely low. Only if 25% of people in the world learn Sanskrit and communicate to AI, it would learn only a portion of whole world’s activity through its rules.
  2. We need processors to process Natural Language, to do that, we need people who communicates in Sanskrit and has a good hold over it. So, again going back to Con 1
  3. Sanskrit NLP will be only a matter of research until and unless everyone communicates in Sanskrit.
So, you can see that, using a NLP Translator for Sanskrit, you can only make it useful if the whole world (or at least 25% of its population) communicate in Sanskrit.
But in this era of internet, people already have developed a big portion of NLP based on English, so using Sanskrit as a base for NLP is still a question.