An attempt to explain AI usage

Amédée Potier
The Startup
Published in
6 min readSep 28, 2019

Twenty-five years ago, I was an intern at the Thales research center on the Plateau de Saclay, our french silicon valley. There I was under the supervision of a robust Ph.D. software engineer, François Valette, working on the NeuroClass research program, frequently interacting with Yann Le Cun on his work. He was programming a tool that was comparing the results of various AI classification models. At the time, the purpose of this classification was using the images of an embedded camera located at the tip of a missile, to figure out the exact type of the target, such that the explosive mode could be set accordingly, a tank shall not be treated as a fighter! That was not exactly my thing, but I sure enjoyed practicing computing for real, on the — then impressive — beige SUN Solaris workstations. For the first time, I really heard about the object programming, I learned the exercise of continuously playing at modeling as classes the world around. I surely enjoyed it, it got me started.

Then, as a student in computer science, working part-time in the evening and weekends in a second-hand book and music store, I took the habit of grabbing there any AI-related book I could find. I was fascinated by the whole thing. I read about the expert systems, the Markov chains, the LISP and of course, the neural networks. I was writing small software on the side to experiment with different ideas on my home-compiled early Linux. The neural network was the hype in AI. I clearly did not understand all of it, but that did not really matter. I had fun.

It then all became kind of quiet for well over a decade, these AI books were covered with dust on the library as I was making my years as a software engineer, then project manager, then lab director, slowly mastering year after year the software development cycles, from coding to design to architecture to planning, always in cycles, never giving up my passion on coding.

back to the future

And then it came back. The modern C(or G)PUs, the open-source libraries, the appearance of numerous AI services, available mostly for free to play with, finally made it possible for the engineers to start embedding AI capabilities. At the time, in my previous company, Rocket Software, we started hearing about it, we did hackathons, but that was about it.

Three years ago, as I decided to make a turn. An opportunity to kick off a Startup adventure (Konverso) in the emerging chatbot market, in a new open land, full of AI and some challenging field I did not know, the NLP. That was a dream come true.

and the reality is…

Nowadays, being the CTO of this software company building chatbots, powered by lots of AI and NLP, I feel allowed to talk about what AI really is and mean in nowadays software industry and I’d like to illustrate this with an example: how and where is AI used in a chatbot solution like ours. I have the need to say so because in our daily interaction with partners, customers and anyone, in fact, it is striking how most are still thinking of AI as one brain engine. I see a real disconnect there. AI is not about one brain, it is about numerous mini-brains, each focused on a single very well defined task. And to be even more exact, each AI service is not really about being a brain, it really is just about a new tool, focused on one task, just like a screwdriver. AI is our new silex.

To illustrate this, let’s have a look at the typical processing occurring over the course of less than a second when someone talks to our bot in a callbot mode (from a phone line).

  • The user’s voice is received. It is sent to a Speech to Text engine, built on now extremely robust deep learning models (recently their accuracy actually exceeded the humans’). The GAFAM and a few specialized players such as Nuance will provide these, this land is not yet in the reach of the open-source community.
  • If the bot is operating in a multilingual mode, it may then leverage a translation service, to convert the user’s text in one of the natively supported bot languages. Again these AI engines are powered on deep neural network models, populated with tons of good quality human translated texts (such as NATO papers). The marketplace is pretty much the same as for STT with some interesting side players like Yandex.
  • The bot will then process the sentence, using another number of Deep Learning models first for extracting the Named Entities (well-identified objects such as persons, amounts, etc.), identifying the Part of Speech (defining that this word is a noun, this one is a verb), the Syntaxic forms, to carry spell checking. The bot will use this information to normalize the text and use Machine Learning to identify an intent.

Associated with this intent will be typically workflows (a defined set of procedures), many involving again a number of extra AI technics such as:

  • Machine Learning classifiers to detect the sentiment, the criticality of the request for example
  • A number of models for Text Similarities to associate this sentence with others. A classic and well-performing one is FastText for example, again a neural network model
  • Various Recommendation Models to find relevant answers for a similar user population
  • MRC (Machine Reading Comprehension) is still a field in progress, it permits to find fairly relevant answers (or at least paragraphs) to user's questions, from a large set of partially structured documents. Good players there are Watson Discover or Microsoft, also competing against smaller but smart players such as the french Recital

I highlighted above in bold in all the various AI engines used. As you can see it is not one engine, but ten or more which are run to process one user sentence, some embedded, some running externally as services, some ours, some others. In the current crowd doing AI, there are very few researchers really building new models, good enough mathematicians to design these algorithms, but there are now tons of engineers who start to understand how these models may be used, the methodologies to select an algorithm and tune it, how to collect and assess a data set quality.

forewords

It is really the understanding, the use, the orchestration of all these AI components that make an overall solution that appears to be smart. The more I practice AI, the more I see the strength and also the limits of these technics. Each engine can become extremely good at what it does provided that the task is well defined and scoped and that there is good quality learning data available (often the number one problem). However, any attempt to build an engine that tries to address a large scope issue still appears to be challenging.

From my first experience with Thales, where AI was in hand of top researchers operating under the budgets of large universities or military projects, in long and expensive cycles, to now where we have rich data science courses available to anyone, tons of tools available, cheap processing and a large community, things have dramatically changed. AI is everywhere, within small functions embedded in our daily tools, and this is just the start. It is getting very exciting.

That’s all for today. Chat to you soon fellow chatbot curious reader.

--

--

Amédée Potier
The Startup

My core passion is building softwares. I am now CTO and co-founder of Konverso, a startup building virtual assistants powered by AI and NLP (www.konverso.ai)