Where do all those tickets go when you have a problem with your laptop, or you can't get your email group list set up? You might think they go into a system like Atlassian's JIRA ticketing software. And they do, but they also go into a giant mess of a pile that IT pros try to make sense of.
Three-year-old startup Moveworks believes a layer of natural-language processing needs to be applied on top of JIRA or and applications like it in order to make sense of the chaos that ensues as people frantically ping IT for help.
"It's a language problem," insists Bhavin Shah, co-founder and CEO of the company. He's received $30 million from Bain Capital Ventures and Lightspeed Venture Partners based on that contention.
Consider an all-too-familiar scenario. "Somebody writes in to the help desk, 'I ran over my laptop, I'm really sorry'," offers Shah. "That needs to be turned into a request for a loaner laptop, but first, somebody's got to understand language to know what the request is, so it sits in a queue waiting for someone to interpret it."
Tools such as JIRA and ServiceNow and ZenDesk on their own "give companies a work flow to take that request and break it into steps," observes Shah, but they don't solve that first problem of language understanding.
The mystery of language typically results in delays of up 72 hours, Shah says, a situation that, he says, "hasn't change in decades," despite more recent IT software offerings such as JIRA. The average company gets 10,000 to 20,000 such tickets a month, according to Shah.
The goal of the Moveworks program is to both disentangle the utterance, and then, "Instead of recommending something, automatically activate the steps necessary to achieve the solution," Shah explains. That involves reaching out to the IT programs that control access and provisioning by deducing which are involved.
In a demonstration, Shah walks through how Moveworks navigates the case of a statement by an employee inside of Slack. Yes, like an increasing number of young startups, Moveworks is part of the "App Economy," a piece of software that plugs into the stuff companies are already using.
A user might type "Can you add Bhavin to the sales dl," using the colloquial phrase for "distribution list." The Moveworks interlocutor shows up as just another avatar in Slack, and replies with a legitimate response: "OK, you'd like to add someone to an email group. I found a few similar ones" and prompts with choices for which group, and then which person by name to add.
Behind the scenes, the company connects with programs, such as Okta's authentication software, to put in the request automatically for resources to be provisioned.
That involves deducing which systems are concerned based on "business rules." While a laptop issue might be straightforward, other things may not be so. Someone cracking their building access badge, for example, could be an IT request, but it could also be a facilities request. Teasing out just what's meant is essential.
To crack the language problem, Moveworks has developed its own proprietary "conversation engine," called "Euphonia." A lot of enterprise software uses so-called business rules to map a "conversation flow," to figure out what action to take. But Moveworks found that such an approach has severe limitations. Instead, Euphonia uses a "probabilistic, model-based approach" to decide what to do, in order to "understand and cope with the nuances of language,” says Shah.
The Euphonia approach also takes into account business rules that are established when the software is implemented with a given customer, based on their best practices, says Shah.
How do they do it? Shah and co-founder Varun Singh, who serves as vice president of product, liken their approach to work last year by Google on "embedding" models for sentences, instead of individual words, as explained in a Google paper last spring, "Universal Sentence Encoder." That work adapted the "Transformer" word encoder to decipher whole sentences.
"Using transfer learning, we used the model open sourced by Google to learn the sentence representations for our proprietary data sets, and had that model deployed in production," Shah says.
When the company was started, in 2016, Moveworks primarily used "classical machine learning techniques," Shah says, to implement the product for the initial customers, "deep learning did not play a big part."
"As we brought more customers onto the platform, and our dataset grew, we could start applying more advanced DL techniques," he says. "Most of the models that we have deployed in production are ensembles of many models, and can include classic machine learning combined with deep learning.
"We now have several different deep neural networks that work together to perform different tasks in understanding language."
The company continues to follow developments in natural language processing, such as OpenAI's "GPT-2," introduced in February. The field of machine learning, Shah notes, is constantly evolving.
The strategy, Shah says, is to "remain agile enough to investigate and adopt these new techniques as they become available."
Most important is scaling whatever approach is used so that it is fit for industrial strength deployment.
"A lot of people claim machine learning but few are doing it meaningfully," observes Singh.
The company got its first handful of customers in 2017, then went to dozens in 2018. The system now handles a quarter of a million interactions per week, Shah says. Moveworks' software is used at storage technology pioneer Nutanix, where it went from handling just 10% of help-desk tickets in the beginning to as much as 35% now. With chip giant Broadcom, Moveworks was able to take over 25% of tickets within the first month of deployment.
As those systems have scaled, so has continual training of the sentence embeddings. Moveworks has trained its natural language model on 20 million tickets it has ingested into its system so far.
Singh makes the point, however, that unlike the research projects such as GPT-2, the training data in support tickets is "sparse.
- What is AI? Everything you need to know
- What is deep learning? Everything you need to know
- What is machine learning? Everything you need to know
- What is cloud computing? Everything you need to know
"GPT and these kinds of things have terabytes of data [for training]," Singh observes, "but we have only the last year's worth of data -- it's very sparse, it's those 10,000 or 20,000 tickets a month, so just 120,000 tickets in all."
One thing that helps is that "IT has been homogenizing," observes Singh. "Everyone is solving the same tickets around the globe."
Moveworks has filed a bunch of patent applications. One of them, filed Aug. 2 of last year, is "Method System and Computer Program Product for Facilitating Task Automation at a Service Desk." That application describes how a "natural language" interaction with the user is "performed based on learning from previously generated tickets and past natural language interactions of enterprise users availing assistance from the IT service desk."
The patent applications are evidence of what Shah and Singh regard as the "maturity of our machine learning pipeline and infrastructure."
"We were able to deploy this relatively new technique in production with high confidence and have our customers benefit from it very fast."
Shah contrasts that practical success with research techniques that "get stalled and struggle to make it to production due to lack of real world training data, insufficient investments in infrastructure, and poor testing and evaluation frameworks."
The horizon for Singh and team is to apply natural language understanding to more areas of a business where people need to interact in a natural way with that App Economy.
"Our goal is to understand the language of a billion knowledge workers out there," Shah says. "We look at all these software packages inside of companies, they're barely getting used." Moveworks, in other words, can be a catalyst for perhaps getting more utility out of what's already been purchased by companies.
As The Bard might have put it, for Moveworks, the rule is, "Speak the speech, I pray you."