Investigation of Sentiment Controllable Chatbot
TABLE I: Evaluation of sentiment classifiers under different NN architectures on Chinese CECG dataset.
['Seg. Struc.', 'Word-based CNN', 'Word-based GRU-last', 'Word-based GRU-avg', 'Character-based CNN', 'Character-based GRU-last', 'Character-based GRU-avg']
To find a proper sentiment classifier, we evaluated six different ways of segmenting Chinese words. Including word-based and character-based methods, we also evaluated different neural network architectures: a CNN with max pooling (CNN for short), a GRU with the last hidden state output (GRU-last), and a GRU averaging all hidden state outputs for the whole sequence (GRU-avg). The total number of characters used in character-based segmentation was 7,297, and the number of words in word-based segmentation was 50,000. We trained these six models with a batch size of 32 and 50,000 epochs. We evaluated the performance using the accuracy and area under the Receiver Operating Characteristics curve (AUC). For the accuracy score, the output scores of the models greater than 0.5 were taken as predictions of positive sentiment; otherwise, they were negative. The predictions were then compared to the real answers to calculate the accuracy rate. GRU-last is then applied in the following experiments as the sentiment classifier.