{
 "id": "epecc0x35j",
 "slug": "stance-detection",
 "title": "Stance detection",
 "updated": "2026-10-15",
 "topic_path": [
  {
   "id": "technology",
   "label": "Technology and the built world",
   "api_url": "https://www.edgepedia.org/api/v1/topics/technology"
  },
  {
   "id": "technology.computing",
   "label": "Computing and digital systems",
   "api_url": "https://www.edgepedia.org/api/v1/topics/technology.computing"
  },
  {
   "id": "technology.computing.ai",
   "label": "Artificial intelligence and data",
   "api_url": "https://www.edgepedia.org/api/v1/topics/technology.computing.ai"
  },
  {
   "id": "technology.computing.ai.perception_language",
   "label": "Language and vision AI",
   "api_url": "https://www.edgepedia.org/api/v1/topics/technology.computing.ai.perception_language"
  },
  {
   "id": "technology.computing.ai.nlp",
   "label": "Natural language processing",
   "api_url": "https://www.edgepedia.org/api/v1/topics/technology.computing.ai.nlp"
  },
  {
   "id": "technology.computing.ai.nlp_tasks_methods",
   "label": "NLP tasks and methods",
   "api_url": "https://www.edgepedia.org/api/v1/topics/technology.computing.ai.nlp_tasks_methods"
  },
  {
   "id": "technology.computing.ai.nlp_tasks_methods.text_classification",
   "label": "Text classification and categorization",
   "api_url": "https://www.edgepedia.org/api/v1/topics/technology.computing.ai.nlp_tasks_methods.text_classification"
  }
 ],
 "geo": [
  {
   "id": "geo.nongeo.t2001.technology.computing.ai.perception_language",
   "label": "Non-geographic · 2001 to 2020: Language and vision AI",
   "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t2001.technology.computing.ai.perception_language",
   "path": [
    {
     "id": "geo.nongeo",
     "label": "Non-geographic",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo"
    },
    {
     "id": "geo.nongeo.t2001",
     "label": "Non-geographic · 2001 to 2020",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t2001"
    },
    {
     "id": "geo.nongeo.t2001.technology",
     "label": "Technology and the built world",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t2001.technology"
    },
    {
     "id": "geo.nongeo.t2001.technology.computing",
     "label": "Computing and digital systems",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t2001.technology.computing"
    },
    {
     "id": "geo.nongeo.t2001.technology.computing.ai",
     "label": "Artificial intelligence and data",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t2001.technology.computing.ai"
    },
    {
     "id": "geo.nongeo.t2001.technology.computing.ai.perception_language",
     "label": "Language and vision AI",
     "api_url": "https://www.edgepedia.org/api/v1/geo/geo.nongeo.t2001.technology.computing.ai.perception_language"
    }
   ]
  }
 ],
 "excerpt": "Stance detection is a natural language processing task that classifies a text's attitude toward a supplied target as favorable, unfavorable, or neither, unlike general sentiment analysis.",
 "snippet": "Stance detection is a natural language processing task that classifies a text's attitude toward a supplied target as favorable, unfavorable, or neither, unlike general sentiment analysis.",
 "node": "technology.computing.ai.nlp_tasks_methods.text_classification",
 "markdown": "# Stance detection\n\nStance detection is a natural language processing task that classifies the attitude expressed in a text toward a given target as favorable, unfavorable, or neither. The target is supplied with the text and may be a claim, topic, entity, or event, and it need not be mentioned in the text at all.<sup>[1](https://dl.acm.org/doi/10.1145/3488560.3501391)</sup> This distinguishes it from sentiment analysis, which scores text on a general positive–negative scale without a specific target; a document can be positive in tone while its stance toward the target is negative, as in \"I am so glad that Trump lost the election\".<sup>[2](https://pmc.ncbi.nlm.nih.gov/articles/PMC9884072/)</sup> The shared-task paper that standardized the task states the distinction directly: stance systems determine favorability toward a pre-chosen target of interest that may not be explicitly mentioned in the text.<sup>[3](https://aclanthology.org/S16-1003.pdf)</sup>\n\n| Key fact | Detail |\n|---|---|\n| Task | Classify the stance of a text's author toward a given target into Favor, Against, or None<sup>[4](https://dl.acm.org/doi/10.1145/3369026)</sup> |\n| Input | A (text, target) pair; the target may be implicit in the text<sup>[1](https://dl.acm.org/doi/10.1145/3488560.3501391)</sup><sup> • </sup><sup>[2](https://pmc.ncbi.nlm.nih.gov/articles/PMC9884072/)</sup> |\n| Standard benchmark | SemEval-2016 Stance Dataset: 4,870 manually annotated tweet–target pairs over six targets<sup>[5](http://www.lrec-conf.org/proceedings/lrec2016/pdf/232_Paper.pdf)</sup> |\n| Metric | Macro-average of F-score(FAVOR) and F-score(AGAINST)<sup>[3](https://aclanthology.org/S16-1003.pdf)</sup><sup> • </sup><sup>[6](https://alt.qcri.org/semeval2016/task6/)</sup> |\n| SemEval-2016 results | Best participant F-score 67.82 (Task A) and 56.28 (Task B); the organizers' SVM baseline is reported at 68.98 for Task A<sup>[3](https://aclanthology.org/S16-1003.pdf)</sup><sup> • </sup><sup>[4](https://dl.acm.org/doi/10.1145/3369026)</sup> |\n| Zero-shot setting | Evaluation on targets unseen in training, formalized with the VAST dataset<sup>[7](https://arxiv.org/html/2409.15690v1)</sup><sup> • </sup><sup>[8](https://www.frontiersin.org/journals/artificial-intelligence/articles/10.3389/frai.2022.1070429/full)</sup> |\n| LLM era | Zero-shot FlanT5-XXL matches or outperforms state-of-the-art benchmarks on SemEval Task 6A<sup>[9](https://ar5iv.labs.arxiv.org/html/2403.00236)</sup> |\n\n## How it works\n\nThe input is a pair of a text and a target, and the output is one label from the set {Favor, Against, None}.<sup>[2](https://pmc.ncbi.nlm.nih.gov/articles/PMC9884072/)</sup> FAVOR covers indirect support as well as direct endorsement: opposing or criticizing something opposed to the target counts as favor, whereas echoing somebody else's stance does not count as favor in itself.<sup>[6](https://alt.qcri.org/semeval2016/task6/)</sup><sup> • </sup><sup>[19](https://aclanthology.org/2024.wassa-1.16.pdf)</sup> The most common definition in the literature is automatic classification of the stance of the producer of a text toward a target into exactly these three classes, a label set occasionally extended with a separate Neutral class.<sup>[4](https://dl.acm.org/doi/10.1145/3369026)</sup>\n\nStance and sentiment diverge systematically. Sentiment classification scores a document's polarity in general; stance is an attitudinal position expressed toward a given target.<sup>[10](https://www.cambridge.org/core/services/aop-cambridge-core/content/view/743A9DD62DF3F2F448E199BDD1C37C8D/S1047198722000109a.pdf/sentiment_is_not_stance_targetaware_opinion_classification_for_political_text_analysis.pdf)</sup> On the SemEval data, sentiment features help stance classification but are not sufficient on their own, and systems detect sentiment markedly better than stance on the same dataset.<sup>[5](http://www.lrec-conf.org/proceedings/lrec2016/pdf/232_Paper.pdf)</sup>\n\nEvaluation uses the macro-average of the F-scores for the Favor and Against classes; None is still predicted, because confusing it with a stance class costs precision.<sup>[3](https://aclanthology.org/S16-1003.pdf)</sup><sup> • </sup><sup>[11](https://aclanthology.org/D16-1084.pdf)</sup> Task definitions vary across datasets, from two-class (for/against) to four-class schemes such as comment/support/query/deny, and the first input can be a topic, a claim, or absent and left to be inferred.<sup>[12](https://link.springer.com/article/10.1007/s13218-021-00714-w)</sup>\n\n## How it is done\n\nA practitioner's pipeline has four parts: annotated data, target encoding, model choice, and evaluation.\n\n**Data.** The reference dataset is the Stance Dataset of 4,870 tweet–target pairs over six targets ([Atheism](https://www.edgepedia.org/atheism), Climate Change is a Real Concern, Feminist Movement, Hillary Clinton, Legalization of Abortion, and Donald Trump), annotated with favor, against, neutral, and no stance; neutral and no stance were merged into 'neither' because less than 0.1% of the data received the neutral label.<sup>[5](http://www.lrec-conf.org/proceedings/lrec2016/pdf/232_Paper.pdf)</sup> For supervised classifiers, research on similar tasks suggests a class-balanced training set of 1,000–2,000 samples at minimum.<sup>[13](https://www.cambridge.org/core/journals/political-science-research-and-methods/article/stance-detection-a-practical-guide-to-classifying-political-beliefs-in-text/E227E746BD7D9751526DA0EC2C378787)</sup>\n\n**Target encoding and models.** Feature-based systems train SVMs or decision trees on predefined features such as character and word n-grams, POS tags, hashtags, and sentiment-lexicon entries; SVM is the most commonly employed feature-based approach, and LSTM is the most frequent deep learning approach, used in more than 10 studies.<sup>[4](https://dl.acm.org/doi/10.1145/3369026)</sup> An LSTM with bidirectional conditional encoding outperformed the state of the art on the SemEval 2016 dataset, including in a weakly supervised framework.<sup>[11](https://aclanthology.org/D16-1084.pdf)</sup> Target-aware architectures inject the target into the representation: the Target-specific Attentional Network (TAN) concatenates text and target embeddings into a target-augmented embedding and uses a fully-connected network to extract target-specific attention over the text.<sup>[14](https://www.ijcai.org/proceedings/2017/0557.pdf)</sup> Prompt-tuning reformulates the task as masked language modeling with templates such as \"The attitude to the <Target> is \", mapping the hidden state at the mask position to a label verbalizer.<sup>[7](https://arxiv.org/html/2409.15690v1)</sup>\n\n**Classification scheme.** A pipelined two-phase scheme is reported adequate for three-way classification: first decide relevancy (Favor/Against versus Neither), then Favor versus Against; training separate classifiers per target is a recommended practice.<sup>[4](https://dl.acm.org/doi/10.1145/3369026)</sup>\n\n## Origin\n\nInitial stance detection work focused on parliamentary debates before the field shifted to social media, where several shared tasks were introduced.<sup>[12](https://link.springer.com/article/10.1007/s13218-021-00714-w)</sup> The standardizing event was SemEval-2016 Task 6; its description paper presents it as a shared task on detecting stance from tweets.<sup>[3](https://aclanthology.org/S16-1003.pdf)</sup> Task A was supervised classification toward five targets, and Task B was weakly supervised on the unseen target Donald Trump.<sup>[3](https://aclanthology.org/S16-1003.pdf)</sup> A companion journal paper by the same group, Stance and Sentiment in Tweets (Mohammad, Sobhani, and Kiritchenko, ACM Transactions on Internet Technology, 2017), analyzed the dataset and the stance–sentiment relationship.<sup>[15](https://doi.org/10.1145/3003433)</sup> Schiller, Daxenberger, and Gurevych later introduced a ten-dataset robustness benchmark for stance detection (Künstliche Intell., 2021).<sup>[12](https://link.springer.com/article/10.1007/s13218-021-00714-w)</sup> Vamvas and Sennrich released X-Stance, a multilingual, multi-target dataset (arXiv, 2020).<sup>[16](https://doi.org/10.48550/arxiv.2003.08385)</sup>\n\n## Variants\n\nFrom a model-deployment perspective the task splits into in-target, cross-target, zero-shot, and cross-lingual settings.<sup>[7](https://arxiv.org/html/2409.15690v1)</sup> In-target detection trains and tests on the same target; cross-target detection predicts stance for a target whose training data consists of posts about other targets, requiring knowledge transfer.<sup>[17](https://qmro.qmul.ac.uk/xmlui/bitstream/handle/123456789/106912/Zubiaga%20Cross-target%20stance%20detection:%20A%20survey%20of%20techniques,%20datasets,%20and%20challenges%202025%20Published.pdf?sequence=2)</sup> In SemEval Task B, the two best-performing systems used automatically labeled data for Donald Trump, effectively changing the task to weakly supervised seen-target detection.<sup>[11](https://aclanthology.org/D16-1084.pdf)</sup>\n\nThe zero-shot setting evaluates on topics not seen during training, with two paradigms: many-topic (many unseen topics, few examples per topic, as in VAST) and few-topic (few topics, many examples, as in Sem16 adapted by treating each topic in turn as the test topic).<sup>[8](https://www.frontiersin.org/journals/artificial-intelligence/articles/10.3389/frai.2022.1070429/full)</sup> VAST contains targets with no overlap between training and testing targets.<sup>[7](https://arxiv.org/html/2409.15690v1)</sup> For zero-shot many-topic stance on VAST, incorporating external knowledge such as from [Wikipedia](https://www.edgepedia.org/wikipedia) is the most successful technique.<sup>[8](https://www.frontiersin.org/journals/artificial-intelligence/articles/10.3389/frai.2022.1070429/full)</sup>\n\nBeyond SemEval-2016, the most widely used benchmark, the landscape includes NLPCC-2016, the first widely used Chinese benchmark; P-Stance from the 2020 US election; the Emergent dataset of rumor claims; and the Multi-Target dataset annotated toward two 2016 US election candidates simultaneously.<sup>[7](https://arxiv.org/html/2409.15690v1)</sup><sup> • </sup><sup>[17](https://qmro.qmul.ac.uk/xmlui/bitstream/handle/123456789/106912/Zubiaga%20Cross-target%20stance%20detection:%20A%20survey%20of%20techniques,%20datasets,%20and%20challenges%202025%20Published.pdf?sequence=2)</sup> X-Stance provides multilingual, multi-target data.<sup>[16](https://doi.org/10.48550/arxiv.2003.08385)</sup>\n\n## Applications\n\nStance detection contributes to trend analysis, opinion surveys, user reviews, personalization, and predictions for referendums and elections.<sup>[1](https://dl.acm.org/doi/10.1145/3488560.3501391)</sup> The survey literature distinguishes three mainstream problem settings: generic stance detection, rumor stance classification, and fake news stance detection.<sup>[4](https://dl.acm.org/doi/10.1145/3369026)</sup> Predefined targets studied include Donald Trump in the US election and the BREXIT referendum.<sup>[2](https://pmc.ncbi.nlm.nih.gov/articles/PMC9884072/)</sup>\n\n## Limitations and alternatives\n\nSystems find it markedly harder to infer stance toward a target from texts that express opinion toward another entity.<sup>[3](https://aclanthology.org/S16-1003.pdf)</sup> The VAST challenge component probes complex language such as sarcasm and spurious signals; only two systems report results on it, and a model with higher zero-shot F1 shows larger performance drops on 4 of 5 challenging phenomena, so overall F1 alone is a problematic evaluation.<sup>[8](https://www.frontiersin.org/journals/artificial-intelligence/articles/10.3389/frai.2022.1070429/full)</sup> Adversarial perturbations such as negation and paraphrase severely hurt multi-dataset models, which perform well below human capabilities.<sup>[12](https://link.springer.com/article/10.1007/s13218-021-00714-w)</sup> Missing context increases annotation ambiguity, and few-shot prompting gives mixed results, risks overfitting to the prompted examples, and shows instabilities under prompt changes that persist with more sophisticated models and more labeled examples.<sup>[13](https://www.cambridge.org/core/journals/political-science-research-and-methods/article/stance-detection-a-practical-guide-to-classifying-political-beliefs-in-text/E227E746BD7D9751526DA0EC2C378787)</sup>\n\nA practical methods guide defines three approaches with different trade-offs: supervised classification, natural language inference ([NLI](https://www.edgepedia.org/natural-language-inference)) classification, and in-context learning with generative LLMs. NLI and in-context classifiers can label documents without training (zero-shot classification), while supervised classifiers need annotated data.<sup>[13](https://www.cambridge.org/core/journals/political-science-research-and-methods/article/stance-detection-a-practical-guide-to-classifying-political-beliefs-in-text/E227E746BD7D9751526DA0EC2C378787)</sup> Chain of Stance decomposes stance detection into a sequence of intermediate stance-related assertions and boosts few-shot performance with LLMs; hybrid approaches combine Logic Tensor Networks with LLMs to add symbolic knowledge.<sup>[18](https://arxiv.org/pdf/2505.08464)</sup> LLM-enhanced fine-tuning elicits background knowledge from LLMs via prompts and feeds it with the original text into a trainable stance model.<sup>[7](https://arxiv.org/html/2409.15690v1)</sup> On SemEval 2016, zero-shot FlanT5-XXL matches or outperforms state-of-the-art benchmarks on Task 6A and outperforms them on Task 6B without training on English Twitter stance data, but falls short of LLMs fine-tuned on the test target.<sup>[9](https://ar5iv.labs.arxiv.org/html/2403.00236)</sup> A positivity bias has been identified in zero-shot FlanT5-XXL that may partially explain performance differences across decoding strategies.<sup>[9](https://ar5iv.labs.arxiv.org/html/2403.00236)</sup>\n\n## References\n\n1. [A Tutorial on Stance Detection (WSDM 2022)](https://dl.acm.org/doi/10.1145/3488560.3501391)\n2. [A systematic review of machine learning techniques for stance detection and its applications](https://pmc.ncbi.nlm.nih.gov/articles/PMC9884072/)\n3. [SemEval-2016 Task 6: Detecting Stance in Tweets](https://aclanthology.org/S16-1003.pdf)\n4. [Stance Detection: A Survey (Küçük and Can, ACM Computing Surveys 2020)](https://dl.acm.org/doi/10.1145/3369026)\n5. [A Dataset for Detecting Stance in Tweets (LREC 2016)](http://www.lrec-conf.org/proceedings/lrec2016/pdf/232_Paper.pdf)\n6. [SemEval-2016 Task 6: Detecting Stance in Tweets (task website)](https://alt.qcri.org/semeval2016/task6/)\n7. [A Survey of Stance Detection on Social Media: New Directions and Perspectives (2024)](https://arxiv.org/html/2409.15690v1)\n8. [Zero-shot stance detection: Paradigms and challenges (2022)](https://www.frontiersin.org/journals/artificial-intelligence/articles/10.3389/frai.2022.1070429/full)\n9. [Benchmarking zero-shot stance detection with FlanT5-XXL](https://ar5iv.labs.arxiv.org/html/2403.00236)\n10. [Sentiment is Not Stance: Target-Aware Opinion Classification for Political Text Analysis](https://www.cambridge.org/core/services/aop-cambridge-core/content/view/743A9DD62DF3F2F448E199BDD1C37C8D/S1047198722000109a.pdf/sentiment_is_not_stance_targetaware_opinion_classification_for_political_text_analysis.pdf)\n11. [Stance Detection with Bidirectional Conditional Encoding (EMNLP 2016)](https://aclanthology.org/D16-1084.pdf)\n12. [Stance Detection Benchmark: How Robust is Your Stance Detection? (Schiller et al., KI 2021)](https://link.springer.com/article/10.1007/s13218-021-00714-w)\n13. [Stance Detection: A Practical Guide to Classifying Political Beliefs in Text (2024)](https://www.cambridge.org/core/journals/political-science-research-and-methods/article/stance-detection-a-practical-guide-to-classifying-political-beliefs-in-text/E227E746BD7D9751526DA0EC2C378787)\n14. [Stance Classification with Target-specific Neural Attention (Du et al., IJCAI 2017)](https://www.ijcai.org/proceedings/2017/0557.pdf)\n15. [Saif M. Mohammad, Parinaz Sobhani, Svetlana Kiritchenko (2017). Stance and Sentiment in Tweets. ACM Transactions on Internet Technology.](https://doi.org/10.1145/3003433)\n16. [Vamvas, Jannis, Sennrich, Rico (2020). X-Stance: A Multilingual Multi-Target Dataset for Stance Detection. arXiv (Cornell University).](https://doi.org/10.48550/arxiv.2003.08385)\n17. [Cross-target stance detection: A survey of techniques, datasets, and challenges (2025)](https://qmro.qmul.ac.uk/xmlui/bitstream/handle/123456789/106912/Zubiaga%20Cross-target%20stance%20detection:%20A%20survey%20of%20techniques,%20datasets,%20and%20challenges%202025%20Published.pdf?sequence=2)\n18. [A Survey of LLM-based Stance Detection (2025)](https://arxiv.org/pdf/2505.08464)\n19. [aclanthology.org](https://aclanthology.org/2024.wassa-1.16.pdf)\n\n---\n*Topic: Encyclopedia › Technology and the built world › Computing and digital systems › Artificial intelligence and data › Language and vision AI › Natural language processing › NLP tasks and methods › Text classification and categorization*\n\n*Initially written Sep 29, 2026 · Reviewed: Sep 30, 2026 · Edited: Oct 15, 2026 · Last review: Sep 30, 2026*\n\n*Copyright 2026 EdgeChat AI, a subsidiary of Biostate AI.*\n\nLicense: Edgepedia Community License 1.0, https://www.edgepedia.org/edgepedia/license\n",
 "same_as": [],
 "url": "https://www.edgepedia.org/stance-detection",
 "markdown_url": "https://www.edgepedia.org/stance-detection.md",
 "license": {
  "name": "Edgepedia Community License 1.0",
  "url": "https://www.edgepedia.org/edgepedia/license",
  "summary": "Free with credit, commercial use included. AI training is open to everyone. For other uses, organizations over USD 100M in revenue or 100M monthly users license separately.",
  "spdx": "LicenseRef-Edgepedia-Community-1.0"
 },
 "credit": "\"Stance detection\", Edgepedia (EdgeChat), https://www.edgepedia.org/stance-detection. Edgepedia Community License 1.0.",
 "credit_md": "\"[Stance detection](https://www.edgepedia.org/stance-detection)\", Edgepedia (EdgeChat), [https://www.edgepedia.org/stance-detection](https://www.edgepedia.org/stance-detection). [Edgepedia Community License 1.0](https://www.edgepedia.org/edgepedia/license).",
 "credit_html": "\"<a href=\"https://www.edgepedia.org/stance-detection\">Stance detection</a>\", Edgepedia (EdgeChat), <a href=\"https://www.edgepedia.org/stance-detection\">https://www.edgepedia.org/stance-detection</a>. <a href=\"https://www.edgepedia.org/edgepedia/license\">Edgepedia Community License 1.0</a>.",
 "speakable": "Stance detection is a natural language processing task that classifies a text's attitude toward a supplied target as favorable, unfavorable, or neither, unlike general sentiment analysis."
}
