Sunday, March 18, 2018

Use of Artificial Intelligence in Technical Writing

The concept of Artificial Intelligence(AI) is not new, but applying this concept in the field of technical writing has turned out to be the talk of the town, at least within the technical communication fraternity. The Brobdingnagian amount of comfort that AI brings to both the writers and the audience is flabbergasting. In this article, I have first briefly described what AI is and then described two tools which you can use in your documents to enhance document quality and the user experience. Before we dive deep into the application of AI into technical writing, let us first understand what AI is.

Any form of intelligence exhibited by machines is called artificial intelligence. To elaborate, any device which has mastered the art of sensing its environment and reacting accordingly is said to be artificially intelligent.

With this brief knowledge of AI, we can now look forward to its implementation in the field of technical writing. The two main technical writing stakeholders addressed in this article are:

  •        The writer
  •        The end user

AI can facilitate writers with jaw dropping tools which add a totally new dimension to the documents. The Watson Tone Analyze service, developed by IBM, adds the dimension of Tones to your documents. So, what exactly has a tone got to do with technical documents? In a quest to accomplish grammatical accuracy and technical correctness, the content’s language and emotional tones, which can drastically impact a reader’s mood, takes a back seat. The Watson Tone Analyzer goes a long way in curbing the negativity of content and making the tone of the document more immaculate. 
Tones form the fulcrum of Watson Tone Analyzer service. The content is analyzed to detect the presence of seven important Tones viz: Anger, Fear, Joy, Sadness, Analytical, Confident and Tentative. The first four Tones are associated with emotions and the rest three with language. (To view the official definition of Tones, refer “General purpose tones” section in https://console.bluemix.net/docs/services/tone-analyzer/using-tone.html).

Now, if your content has more of Anger Tone in it, then the document could be open for interpretation. A reader who himself is frustrated at the time of reading your document, might very well come up with a conclusion “Oh... The way the document is written, looks like the writer has done a great favor to me”. On similar grounds, high levels of Tentative Tone could make the reader feel “Does the process really happen as described?” In extreme cases, a frustrated customer could very well end up approaching a competitor, more due to the un appealing tone of the document, rather than the product itself.

So, how does the Watson Tone Analyzer rate your documents? Based on the likelihood of a Tone’s existence. The Tone score ranges from .5 to 1. If a Tone gets a score of less than .5, it means there is a high probability that no content in your document has this Tone. On the other hand, if a Tone scores more than .75, there is a high probability that the content in your document has this Tone. Anything ranging from .5 to .75, implies there is a possibility (but not strong enough) that the respective Tone might exist in the content.

The documents are evaluated at two levels, viz: Document-level and Sentence-level. The former provides a summarized view of the Tone scores. The latter provides a detailed view of the content. The sentences which are responsible for the presence of a Tone are highlighted, based on the score line.

If you are an avid techie and wish to try this service, you can do it right away. Just browse the IBM experimental page https://tone-analyzer-demo.mybluemix.net/  

If you have high volumes of data, ensure that you do not input more than 1000 sentences in an iteration. When I put up parts of the content (which you have been reading until now), this is what I found:

Fig-1 Document-level analysis by Watson Tone Analyzer


                                                   
Fig-2 Sentence-level analysis by Watson Tone Analyzer



So, moving on from writers, now let’s see how AI can delight the customers.

The Amazon Alexa is a dream come true service for the readers, since it is voice based and amuses the readers with a human touch. The readers can ask questions to Alexa if they are struck while reading the help document and Alexa responds to solve their queries.

Interesting, isn’t it? Wondering how this happens? Well, a customer must purchase an Amazon device which can use Alexa (Amazon Echo, Amazon Echo plus, Amazon Dot etc). Customer interacts via an Alexa powered device and gets response from Alexa. In case your confused, Alexa is a cloud based voice service. Alexa powered device uses this service to serve the customer(reader). 


When your document is ready, you need to surf the developer.amazon.com and create "intents" and their respective "slots". Intent is simply a task to be achieved. A slot is variable which relates to an intent. Amazon provides many built-in slots. For instance, a Date slot is used when you deal with data which works on Dates. Custom slots are created when the existing built-in slots are not sufficient to achieve intent tasks. 

You must also include a possible list of queries known as "utternaces" which the customer might raise when he is struck in a paragraph. Include as much utterances as possible so that Alexa can understand what the customer wants. 

For instance, consider a document in which you feel the customer might be struck up in the first step. So, you can create a create an intent known as "understanding step-1", create a custom slot for it and define utternaces which can be something like:

  •          Alexa explain me step 1
  •         Alexa what does the first step mean
  •         Alexa this step on the first line is driving me crazy. Help me understand it


You can refer https://developer.amazon.com/docs/custom-skills/custom-interaction-model-reference.html for more information on intents, skills and utternaces. The actual code which reads the intents, slots, and utternaces is generally written in AWS lambda. 

When you input all this information in the cloud based Alexa, this information is accessed by all the Alexa powered devices. The customer purchases one such device, reads the document and asks questions when he is struck. Alexa responds. The entire process of creating slots, intents, utternaces, lambda code is called “teaching Alexa a new skill”.