intelligence which conducts a conversation via auditory or textual methods. • Such programs are often designed to convincingly simulate how a human would behave as a conversational partner, thereby passing the Turing test. • Chatbots are typically used in dialog systems for various practical purposes including customer service or information acquisition. • Some chatterbots use sophisticated natural language processing systems, but many simpler systems scan for keywords within the input, then pull a reply with the most matching keywords, or the most similar wording pattern, from a database. Google Assistant • Chatbots can be classified into usage categories such as – conversational commerce (e-commerce via chat) – analytics – communication – customer support – Design – developer tools – Education – Entertainment – Finance – Food – Games – Health – HR – marketing – News – Personal – Shopping – travel and utilities and many more … Chatbot in game example • Chatbots can be added to a buddy list or provide a single game player with an entity to interact with while awaiting other "live" players. • If the bot is sophisticated enough to pass the Turing test, the person may not even know they are interacting with a computer program. How is it helping ??? • As consumers continue to move away from traditional forms of communication, chat-based communication methods are expected to rise. • Chatbot-based virtual assistants are increasingly used to handle simple tasks, freeing human agents to focus on higher-profile service or sales cases. • This leads to cost savings -- employees cost more -- and it also allows companies to provide a level of customer service during hours when live agents aren't available. TOOLS USED • Python: for developing algorithms and chatbot backend development • Wikipedia API : for searching data on the internet and loading it in our chatbot • Chatterbot: is a Python library that makes it easy to generate automated responses to a user’s input. • TensorFlow: is an open-source software library for dataflow programming across a range of tasks. It is a symbolic math library, and is also used for machine learning applications such as neural networks. • Wolfram Alpha • It is a computational knowledge engine or answer engine developed by Wolfram Alpha LLC, a subsidiary of Wolfram Research. It is an online service that answers factual queries directly by computing the answer from externally sourced "curated data" rather than providing a list of documents or web pages that might contain the answer as a search engine might. • Pyttsx Pyttsx is a cross-platform speech (Mac OSX, Windows, and Linux) library. You can set voice metadata such as age, gender, id, language and name. Thee speech engine comes with a large amount of voices. • Espeak eSpeak is a compact open source software speech synthesizer for English and other languages, for Linux and Windows. • Speech Recognition using Google Speech API Google has a great Speech Recognition API. This API converts spoken text (microphone) into written text (Python strings), briefly Speech to Text. You can simply speak in a microphone and Google API will translate this into written text. Classification technique K-Nearest Neighbors Algorithm A type of supervised machine learning algorithm
It is a lazy learning algorithm since it doesn't
have a specialized training phase. Rather, it uses all of the data for training while classifying a new data point or instance. • KNN is a non-parametric learning algorithm, which means that it doesn't assume anything about the underlying data. This is an extremely useful feature since most of the real world data doesn't really follow any theoretical assumption e.g. linear-separability, uniform distribution, etc