Chatbot based on neural networks and word embedding to increase customer loyalty
Authors: Сюсюра Д.А. , Коваленко А.В. , Шарпан М.В. 
Published: July 2024

В эпоху цифровизации в обществе основным инструментом социального взаимодействия человека становятся мобильные устройства. А с ростом популярности мессенджеров место чат-ботов в мобильной среде становится все значительнее. Интеллектуальные интерактивные чат-боты часто используются в мобильных приложениях и способствуют улучшению взаимодействия между компаниями и их заказчиками, что в итоге повышает лояльность клиентов этой организации. Чат-боты позволяют компаниям общаться с заказчиками в индивидуальном порядке, не привлекая к этой работе сотрудников и тем самым экономя временной, денежный и человеческий ресурс. Большинство чат-ботов работают по алгоритмам сценарного подхода и не являются универсальными. Это обусловлено простотой и скоростью разработки. Однако в таком случае существует риск упустить множество вариантов в дереве решений. Эту проблему способны решить чат-боты, основанные на нейронных сетях, но стоит учитывать, что и те и другие имеют недостаток в виде долгой обработки сообщений и обратной связи. В случае со сценарным подходом это происходит из-за долгих перемещений по веткам. Для нейронных сетей возникает сложность из-за алгоритма обработки обратной связи. В таком случае использование сервиса не будет оправдано, лояльность клиентов к организации будет падать. В связи с чем в статье рассматривается альтернативный подход к созданию чат-ботов на основе технологий нейронных сетей и методов представления текста, который позволяет избежать описанных выше проблем. В качестве технологий для реализации чат-бота были использованы: Python 3.6, библиотеки genism, sklearn, scipy, pandas, технология word2vec и doc2vec. Также в статье описан способ ускорения получения обратной связи и обучения чат-бота с помощью K-мерных деревьев.

In the digital era mobile devices are becoming the main instrument of human social interaction. With the growing popularity of instant messengers, the role of chatbots in the mobile environment appears to be more and more significant. Intelligent interactive chatbots are often used in mobile applications and help improve the interaction between companies and their customers, which ultimately increases customer loyalty to that organization. Chatbots allow companies to communicate with customers on an individual basis, without involving employees and thereby saving time, money, and human resources. The majority of chatbots works with scripted algorithms and they are not universal. This is due to the simplicity and speed of development. However, in this case, there is a risk of missing many choices in the decision tree. Chatbots based on neural networks can solve this problem, but it should be taken into consideration that both of them have a drawback – long processing of messages and feedback. In the context of the scenario approach, this is caused by long branch transitions. For neural networks, complexity arises because of the feedback processing algorithm. In that instance, the application of the service will not be justified, customer loyalty to the organization will deteriorate. In this connection, the article discusses an alternative approach to creating chatbots with the aid of neural network technologies and text representation methods, which avoids the problems described above. As a means of chatbot design, the following technologies were utilized: Python 3.6, genism libraries, sklearn, scipy, pandas, word2vec and doc2vec technology. The article also describes a way to accelerate chatbot feedback and training using KD-Trees.