Video

PDF

Description

Recently, chat bot has become the center of public attention as a new mobile user interface since 2015. Chat bots are widely used to reduce human-to-human interaction, from consultation to online shopping and negotiation, and still expanding the application coverage. Also, chat bot is the basic of conversational interface and non-physical input interface with combination of voice recognition.

Traditional chat bots were developed based on the natural language processing (NLP) and bayesian statistics for user intention recognition and template-based response. However, since 2012, accelerated advance in deep-learning technology and NLPs using deep-learning opened the possibilities to create chat bots with machine learning. Machine learning (ML)-based chat bot development has advantages, for instance, ML-based bots can generate (somewhat non-sense but acceptable) responses to random asks that has no connection with the context once the model is constructed with appropriate learning level.

In this talk, I will introduce the garage chat bot creation process step-by-step. First, get the data and preprocess it with Python 3 and pandas. Also, data is modified to more trainable form. With preprocessed data, design the deep learning model with TensorFlow which is suitable for sentence-type input / output and train it. After training, serve the model with messenger interface created by using telegram API and Python 3, and demonstrate the result.

In the process, we have to solve several problems. First is the preprocessing the Korean sentences with natural language processors, and tokenizing the sentences with proper length and types. Also, we have to solve the ‘josa (postpositions in Korean) hell” and conjunction problems to construct TensorFlow model. In addition to preprocessing, model architecture to recognize the conversational context is also needed. To serve bot with Python HTTP server and telegram API, some points demand deliberation. I’ll share my multi-modal bot model idea, implementation and tips to solve these problems.