Artificial Intelligence: Natural Language Processing and customer care

If you have been tracking tech news, you must have realized that artificial or machine intelligence-related technologies are gaining more and more momentum and are finding their place in our daily lives. Natural language processing (NLP) is worth our particular attention.

Artificial Intelligence is amazing: The computer AI plays chess or Go better than you do, “Google Now” learns what topics you are interested in and suggests news feeds, your laptop can detect your face and utilize it as a login credential, and much more. Among all of these features – and particularly interesting for a telecom company like Swisscom – is the ability of a computer system to understand natural language. NLP is a field of computer science, computational linguistics and artificial intelligence concerned with human-machine interaction based on natural, human-understandable languages.

Why NLP?

Every day, Swisscom receives a huge stream of e-mails. Depending on its content, every one of these e-mails should be assigned to a specialized team of human agents with relevant skills. The agents then have to read the e-mail, understand the request and send a proper response.

Growing digitalization in Swiss households results in a growing volume of customer requests, hence the challenge to fulfill the service promise and get back to our customers swiftly. Therefore, we were searching for a system which could help us “separating wheat from chaff”: identify routine requests which the customers could solve much more quickly themselves and focus on the requests where the customer needs assistance from a Swisscom expert. That is where the collaboration started between the Service Experience team at Swisscom with the engineers from the Innovation Department to leverage the potential of Cognitive Computing at Customer Care.

To improve the quality of service, NLP via Artificial Intelligence can be utilized to:

  • Route the e-mail to an agent with the correct skillset by understanding the e-mail request;
  • Predict the context of the e-mail to provide better answer templates which can help the agent write faster and more homogenous responses;
  • Detect repetitive request cases (e.g. “Please send me a copy of my latest bill.”) which can be semi-automated via online self-care and to be able to give instant response to the customer for these cases.

Here at Swisscom, we use a combination of classic and novel machine learning approaches to tackle the problem. This includes novel approaches of deep convolutional and LSTM networks, as well as time-proven methods like Support Vector Machines.

Daily work is actually quite exciting: we try to find ways to improve our current e-mail processing system, observe and understand the data, and apply new ML techniques to classify / cluster / predict. We code in Python, C++, and quite some bash scripting. We test a lot of different libraries including TensorFlow, Keras, Theano, libSVM, fastText, etc. Finally, we have a beast computation server with a few nice GPUs and a lot of CPU cores. Would you like to know how many? It’s a secret, but let me tell you this: We can train a huge deep net with about a million data samples in only a few hours!

To be able to do all of this we brainstorm often, attend conferences, read papers and regularly approach the fruit basket! Moreover, from time to time, we have side quests to be completed for upcoming possible projects: computer vision, signal forecast, speech recognition and more!