Medical Assistant Logo
Pourab Karchaudhuri, Alexa Skill Developer
Medical Assistant VUI Model
My inspiration was my Grandmother who died when I was young due to Alzheimer''s. I was pretty young but I really wanted to do something to help her anyway I could. Eventually I did become a programmer and started exploring new technologies to ideate and innovate. I found the Alexa Skills Challenge on Devpost and put my registration in. So, I created this AI based Doctor that gives a user his/her diagnosis based on the symptoms. I knew that there are no existing apps in the market for public use that even remotely gives the user a steady description. I did my research. This allowed my to think freely and move in towards building my code. Hence, I built Medical Assistant. I kept the name simple as it is what it's name sounds to be.
What it does
Medical Assistant is a skill with the most user friendly voice interaction model. To keep the user interested and satisfied I kept the number of questions to a minimum and gave a more precise answer. I really had to work on a better user experience. The Skill takes the input from the user about medical conditions and gives them a description about it's rarity and severity along with which department of doctors they should go see. But the USP of the skill is actually the Diagnosis based on Symptoms. Based on the user's statement, the skill asks follow up questions till it reaches a decision and finalizes the medical condition the user may be having and then suggests it and also recommends which type of doctor they should go see. This is something out-of-the-box and completely different from anything that exists in the market. It has over 10,000 follow up questions and the content is completely dynamic.
How I built it
I build the code using Node.js where I used REST API services and a self generating code body for handling follow-up questions. I built the code through Jenkins and Deployed it to AWS Lambda. I used a simple Atom Editor to code and my testing environment was EchoSim.io and the App on Android Playstore called Reverb.
Challenges I ran into
The basic challenge was accuracy. Sometimes even Alexa fails to understand the exact user utterance depending on ambient noise , accent and network issues. My skill had to be reliable and precise so I had to add a secondary layer of Natural Language Processing on top of Alexa's existing Intent builders and NLP engine. I did this with over 1600 slot values and handling a bulk of individual string variations in my code. The second challenge was the probability counter. My skill, Medical Assistant only gives the diagnosis when that probability counter reaches over 97% for any medical condition. This was done by careful mapping of medical conditions with their symptoms. It took me almost 2 months just to do that. Eventually I cracked the code and successfully made the entire package up and running.
Accomplishments that I'm proud of
The final product is something exactly the one I had in my mind and hoped to build. Getting something exactly right as it is in mind and looking at your code built from scratch running flawlessly is an achievement on it's own. I've even gone ahead and showed it to several doctors who were really hyped and happy about it. People are really happy I'm giving away such a skill for free where enterprises actually charge people money for something like this.
What I learned
Thanks to this Alexa Skills Challenge 2017, I also got the drive to learn something new. In this regard, I learnt Node.js, Express.js as well as Alexa SDK and about AWS Lambda's Serverless platform. These skills came very handy some interviews as well.
What's next for Medical Assistant
Medical Assistant will grow with time. I'll keep adding more modules to it like Searching nearby locations via Google Places APIs and giving contacts of Doctors as cards in Alexa Companion App, An AI based Diet Builder based on eating habits as well as Binaural Music to keep moods in check for Mentally Challenged People. I do have a plan. If I win this hackathon, I'm going to build this entire package and use that prize money to have premium API Services and Libraries and still keep the Skill Free for the Public so that people get what the need and deserve, A healthier and a better lifestyle.