Developing a Twitter bot that can join a discussion using state-of-the-art architectures

Çetinkaya Y. M. , Toroslu I. H. , Davulcu H.

SOCIAL NETWORK ANALYSIS AND MINING, vol.10, no.1, 2020 (Peer-Reviewed Journal) identifier identifier

  • Publication Type: Article / Article
  • Volume: 10 Issue: 1
  • Publication Date: 2020
  • Doi Number: 10.1007/s13278-020-00665-4
  • Keywords: Twitter bot, Natural language processing, Tweet generation, Tweet classification, Sentiment analysis, Recurrent neural networks, ELIZA
  • Middle East Technical University Affiliated: Yes


Today, microblogging platforms like Twitter have become popular by spreading news and opinions that gather attention. Engaging interactions, such as likes, shares, and replies, between users are the key determinants of these platforms' news feed prioritization algorithms. These interactions attract people to ongoing debates and help inform and shape their opinions. Since being influential and attracting followers in these debates are considered as important, understanding the automation of these processes becomes critical in order to contribute positively. In this work, we aim to train a chatbot system that classifies tweets according to their positions, and it can also generate tweets related to a conversation. In this study, we test our system on a recently popular topic, namely the gun control debate in the U.S. Chatbots, are trained to tweet independently for their side and also reply meaningfully to a tweet from the opposite side. State-of-the-art architectures are tested to obtain a more accurate classification. We applied GloVe embedding model for representing tweets. Instead of using handcrafted features, long short-term memory (LSTM) neural network is applied to these embeddings to get more informative and equal-sized feature vectors. This model is trained to encode a tweet as a sequence of embeddings. Encoding is used for both message classification and generation tasks. LSTM sequence-to-sequence model is used to generate topical tweets and replies to tweets. We develop a new salience metric for measuring the relatedness of a generated message to a target tweet. Additionally, human evaluations are performed to measure the quality of the chatbot generated tweets according to their topic relevance and bias, and the quality of its replies to target tweets.