Stance Classification: English

An application that classifies a reply to a tweet based on its stance to the original. Possible stances are; support, deny, query, and comment. Note that the input to this application should be document containing the official Twitter JSON of both the original tweet and the replies you wish to classify. Both the reply and the original tweet must be present for the application to work, and you can provide as many tweets as you like (multiple replies to a single tweet, or multiple tweet/reply pairs etc.). If using the REST API documents should be sent as text/plain to avoid the JSON being parsed by GATE Cloud prior to the application running.

Although originally intended for processing threads of tweets, the classifier can be used with text from other sources (forum posts, YouTube comments etc.) as long as they are provided to the service in the right format. While the JSON object for a single tweet contains a lot of information the current version of the stance classifier only uses the text of the tweet. This means it is easy to generate compatible JSON from other sources.

As with tweets each comment should be containted within a single JSON object. Each JOSN object must contain the fields text and id_str which hold the text of the comment and a unique ID respectively. A third field in_reply_to_status_id_str is used to signifiy which other comment this one is in reply to. A simple example of one comment and a reply that is classified as supportive would be as follows:

{"text":"this is the original post", "id_str":"1"}

{"text":"I agree with the original post", "id_str":"2", "in_reply_to_status_id_str":"1"}

Our approach is an ensemble of our two best models, as evaluated on the RumourEval 2019 Twitter test set. Both of these models are fine-tuned BERTweet models, taking as input either a pair of original and reply tweets or the reply tweet only. More details about the models and our approach can be found in this paper.

Default annotations
:TweetStance Each reply (for which the original tweet is supplied) is annotated by the application. Each annotation has the following features:
  • tweet_id, the ID of this tweet
  • in_reply_to, the ID of the tweet this one is in reply to
  • stance_class, the assigned stance class (one of support, deny, query, or comment)
  • support-score, the support score (all four scores add to 1)
  • deny-score, the deny score (all four scores add to 1)
  • query-score, the query score (all four scores add to 1)
  • comment-score, the comment score (all four scores add to 1)
1,200 free requests / day
Batch processing not available

Use this pipeline

Single documents

You can process up to 1,200 documents per day free of charge using the REST API, at an average rate of 2 documents/sec. Higher quotas are available for research users by arrangement, contact us for details.

The API endpoint for this pipeline is:

https://cloud-api.gate.ac.uk/process/stance-classification

Create API Key