A Friendly Chatbot for Depressed and Lonely People

Premise

How a chatbot connects with the users and tries to eradicate their depression, and share their thoughts by accompanying them.

Synopsis

I got the chance to study abroad in a European country, where all the amenities of life are available to all but the missing factor is the companionship. People feel depressed loneliness and it gets higher during the winter as the days gets cold and shorter that makes the people to stay alone at their home and now the world has seen Covid 19 pandemic that again kept people away from each other. Due to these issues mental disorder is becoming very common and at times this loneliness and depression leads to commit suicide. Keeping that in mind I think chatbots could be a viable option to solve this issue. As there are many blue-chip companies like IBM, Microsoft, Google etc. in the world are using technologies like artificial intelligence to convert text to speech or speech to text.

Overview

According to the World Health Organization (WHO,2018), one out of every ten individuals in the world requires mental healthcare, and various behavioral illnesses are characterized by a mixture of beliefs, emotions, and interpersonal interactions.

Robots can be a solution to this issue, Japanese and American markets also have Robots but due to financial limitations not everybody can afford this solution.

I want to research and work on this technology to build a chatbot solution with emotional intelligence that will sense and feel the pain or other emotions of that person while talking to them.

A chatbot is a computer program that performs a conversation through the use of auditory or textual means. Such programs are often developed in order to pass the Turing test by convincingly simulating how a person would behave as a conversational partner. Chatbots are commonly used in dialog systems for a range of uses, such as customer service or knowledge collection. There are two kinds of chatbots available: one that follows a series of rules and the other that employs artificial intelligence. The former is more constrained, and its intelligence is determined by the program’s complexity. The bot’s intelligence increases as the algorithm becomes more advanced. Artificial intelligence learns language, not even just orders, and improves over time as it observes and learn from human conversations. A chatbot can also handle simple tasks such as estimates, setting up remainders, and setting alarms (Sharma, Goyal, & Malik, 2017).

According to Zhou, Gao, Li, & Shum (2020), there is a possibility to create an advanced AI based chatbot with the ability to understand machine intelligence (MI) and emotional intelligence (EI). That enables the chatbot to conduct a conversation more like a human. With this ability the chatbot has more chance to produce more consistent conversations with humans in real time scenario, that can make a more social communicational experience.

Experiment Process

I conducted the literature study on the relevant topic, along with an informal conversation with international students living alone in Scandinavian country to get their perspective. To create a data driven solution a thorough research was conducted on different products for example, Amelia, Trengo, Botxo etc. After research and analysis, I finally tried two solutions, by IBM and Microsoft respectively.

Microsoft Power Virtual Agent

Initially as a first step, I opted for Microsoft Power Virtual Agent and created a simple chatbot very easily due to its easy-to-use graphical environment and instruction set. It can even save the user’s memory as well as the latest conversation. Microsoft Power Virtual Agent allows you to create a chatbot that can also do the sentimental analysis and the option of speech to text. But there is an hindrance that some services are not free.

IBM Watson

Watson is a service provided by IBM. It enables the user to quickly and easily build a chatbot for a particular purpose. An assistant, according to IBM, is a cognitive and flexible bot for business purposes. It is a cognitive bot that you can customize with skills that allow it to communicate with the users in useful ways. Other resources will assist in making a chatbot more interactive, intelligent and knowledgeable (https://cloud.ibm.com/docs/assistant/index.html?locale=en#about).

I was very much interested in knowing the emotions by the facial recognition but Visual Recognition is no longer available by IBM. Current instances will be sponsored until December 1, 2021, but as of January 07, 2021 we won’t be able to build new ones.

I used IBM Watson tone analyzer to investigate how the tone analyzer functions and how it reads and analyze the sentences used during a chat and helps in determining the mood and mentsl state of the user. As, IBM Tone Analyzer service detects emotional and language tones in written text through linguistic analysis. The service may assess the tone of a text as well as a statement. This service is used to learn how people interpret the communications and then refine the tone of that communication(https://dataplatform.cloud.ibm.com/docs/content/wsj/landings/tone-analyzer.html?context=cpdaas&audience=wdp).

My first intention was Microsoft Power Virtual Agent and I was fine in using it but then I tried IBM Watson and found it very interesting as this is very close to my concept of a chatbot and found it fun to learn.

Creation of Chatbot

To create a chatbot with IBM Watson first create an account and login with your credentials.

Create a skill and assign a name to it.

The users may communicate their objectives by varied forms and to do this have to educate the chatbot by creating the intent.

Create an Entity to provide the targeted response to the user’s questions

Adding synonyms

Training and Setting conditions

Chatbot Greets to a user in testing phase

Chatbot responding comfortably to a user in testing phase

Tone Analyzer

Now will add the tone analyzer feature, to do this go to the Tone Analyzer page in the IBM Cloud Catalog and Create an instance of the service.

Must copy the credentials to authenticate to the service instance. From the IBM Cloud dashboard, click on Tone Analyzer service instance to go to the Tone Analyzer service dashboard page, on the Manage page, click show credentials to view your credentials and copy the API Key and URL values.

I learn how to use create notebook environment in IBM studio, specified Python as the runtime environment and then installed IBM Watson, did the authentication and analyzed the tone in a chat.

Installing IBM+Watson

Authenticating and importing tone analyzer

Analyzing the tone

Conclusion

IBM Watson seem to be much flexible over others in terms of options and environment. Initially IBM Watson looks very confusing but later on I realized that it is also user-friendly. Information and data are a key factor for building and creating Al and machine learning algorithms. As per our findings, when it comes to training of a chatbot in a practical environment it becomes a difficult task because there are not too much resources and datasets for training purpose and we understand that the datasets holds a key role when it comes to a chatbot training. And that also applies in our scenario, only rich collection of well-organized and refined datasets will make a chatbot intelligent to meet our requirements, the consistency in conversation that helps in long engagement with the user holds the key to success.

One of the objectives to build the chatbot that can understand and feel the emotions of the user or the person with whom the conversation is going on. There is a way to have a deep set of knowledgebases including empathic vocabulary to sense the emotions. And for that purpose, I am using tone analyzer, and with the help of this the chatbot should be able to understand and sense the feeling of the users by analyzing the person’s tone. Despite limitations, I tried to integrate the Tone analyzer with the chatbot as a next step but the correct documentation is not available. I am requesting IBM for their support in this issue.

The chatbot can be enhanced by actively educating the chatbot as each user communicates with it. One can build more interactive and advance chatbot with advance machine learning and emotional intelligence by using widely used sequence to sequence framework. Where by using LSTM (Long Short-Term Memory) and Bi-LSTM (Bi- directional Long Short-Term Memory) that is famous for more robust and high engagement chatting system. These requires high coding skills and advance expertise in machine learning field that I do not possess this at this moment. Therefore, I will opt for low coding environment and tone analyzer that will help in creating my conceptually working chatbot.

I also want the chatbot to have speech to text and text to speech services and that will be done in future for the final graduation project.

References

Sharma, V., Goyal, M., & Malik, D. (2017). An Intelligent Behaviour Shown by Chatbot System. International Journal of New Technology and Research (IJNTR), 3(4), 52-54.

Zhou, L., Gao, J., Li, D., & Shum, H. (2020). The design and implementation of xiaoice, an empathetic social chatbot. Computational Linguistics, 46(1), 53-93. doi:10.1162/coli_a_00368

Https://cloud.ibm.com/docs/assistant/index.html?locale=en#about. (n.d.). Retrieved March 15, 2021, from https://cloud.ibm.com/docs/assistant/index.html?locale=en#about

Https://cloud.ibm.com/docs/tone-analyzer/index.html#about. (n.d.). Retrieved March 16, 2021, from https://cloud.ibm.com/docs/tone-analyzer/index.html#about

Leave a Reply

Your email address will not be published. Required fields are marked *