Skip to content
Showcase/NRC Emotion Lexicon (EmoLex): Word-Emotion Association
intermediatetext

NRC Emotion Lexicon (EmoLex): Word-Emotion Association

Crowdsourced annotation of a word's associations with eight basic emotions (anger, anticipation, disgust, fear, joy, sadness, surprise, trust) and two polarities (positive, negative). Each word first goes through a word-choice question that both disambiguates the intended sense and screens inattentive workers, then annotators rate how strongly the word is associated with each emotion. This is the annotation design behind the NRC Word-Emotion Association Lexicon (EmoLex; Mohammad & Turney, 2013), available in 100+ languages.

Submit

Configuration Fileconfig.yaml

This Potato config reproduces the annotation task. Save it as config.yaml and run potato start config.yaml to try it.

yaml
# NRC Emotion Lexicon (EmoLex): Word-Emotion Association
# Based on Mohammad & Turney (2013), "Crowdsourcing a Word-Emotion
# Association Lexicon," Computational Intelligence 29(3).
#
# Annotation design (per target word):
#   1. WORD-CHOICE / SENSE question: the annotator is shown the target word
#      and four candidate words, and picks the one closest in meaning. This
#      serves two purposes at once - it gently disambiguates the intended
#      sense of the target word, and it screens out inattentive annotators
#      (the "gold" near-synonym is known in advance).
#   2. POLARITY: how positive and how negative the word is.
#   3. EIGHT EMOTIONS (Plutchik's basic emotions): for each, how strongly
#      the word is associated with that emotion.
#
# Association strength scale (used for polarity and every emotion):
#   Not at all  -  Weakly  -  Moderately  -  Strongly
#
# This is Mohammad's rating-scale (NON Best-Worst-Scaling) design; his later
# lexicons (NRC-VAD, Affect Intensity, WorryWords) moved to Best-Worst
# Scaling for finer, more reliable real-valued scores.
#
# Annotation guidelines:
#   1. Answer the word-choice question first; it fixes the sense you should
#      judge for the rest of the item.
#   2. Judge the word's general association with each emotion, not whether
#      it literally names the emotion.
#   3. A word can be associated with several emotions at once (e.g., "gift"
#      -> joy, surprise, trust, positive) or none.
#   4. "Not at all" is a valid and common answer - most words evoke only a
#      few emotions.

annotation_task_name: "NRC EmoLex Word-Emotion Association"
task_dir: "."

data_files:
  - sample-data.json

item_properties:
  id_key: "id"
  text_key: "prompt"
  text_display_key: "prompt"
  list_display_key: "choices"

output_annotation_dir: "annotation_output/"
output_annotation_format: "json"

annotation_schemes:
  # Step 1 - sense disambiguation / attention check
  - annotation_type: radio
    name: closest_meaning
    description: "Which of the four candidate words is CLOSEST in meaning to the target word?"
    labels:
      - "Candidate 1"
      - "Candidate 2"
      - "Candidate 3"
      - "Candidate 4"

  # Step 2 - polarity
  - annotation_type: radio
    name: positive
    description: "How POSITIVE (good, favorable) is the target word?"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  - annotation_type: radio
    name: negative
    description: "How NEGATIVE (bad, unfavorable) is the target word?"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  # Step 3 - eight basic emotions
  - annotation_type: radio
    name: anger
    description: "Association with ANGER"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  - annotation_type: radio
    name: anticipation
    description: "Association with ANTICIPATION"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  - annotation_type: radio
    name: disgust
    description: "Association with DISGUST"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  - annotation_type: radio
    name: fear
    description: "Association with FEAR"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  - annotation_type: radio
    name: joy
    description: "Association with JOY"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  - annotation_type: radio
    name: sadness
    description: "Association with SADNESS"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  - annotation_type: radio
    name: surprise
    description: "Association with SURPRISE"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

  - annotation_type: radio
    name: trust
    description: "Association with TRUST"
    labels: ["Not at all", "Weakly", "Moderately", "Strongly"]

allow_all_users: true
instances_per_annotator: 100
annotation_per_instance: 5
allow_skip: true
skip_reason_required: false

Sample Datasample-data.json

json
[
  {
    "id": "emolex_001",
    "word": "startle",
    "prompt": "TARGET WORD: startle\n\nWord-choice question - which candidate is closest in meaning?\nCandidate 1: surprise\nCandidate 2: schedule\nCandidate 3: polish\nCandidate 4: measure",
    "choices": [
      "surprise",
      "schedule",
      "polish",
      "measure"
    ]
  },
  {
    "id": "emolex_002",
    "word": "betrayal",
    "prompt": "TARGET WORD: betrayal\n\nWord-choice question - which candidate is closest in meaning?\nCandidate 1: harvest\nCandidate 2: treachery\nCandidate 3: ceiling\nCandidate 4: applause",
    "choices": [
      "harvest",
      "treachery",
      "ceiling",
      "applause"
    ]
  }
]

// ... and 8 more items

Try it live — no install

Boot the real Potato server in your browser (WebAssembly) and annotate with this exact config. Nothing leaves your machine.

▶ Run live in your browser

Get This Design

View on GitHub

Clone or download from the repository

Quick start:

git clone https://github.com/davidjurgens/potato-showcase.git
cd potato-showcase/text/emotion-sentiment/nrc-emolex-word-emotion
potato start config.yaml

Dataset & paper

Mohammad & Turney, Computational Intelligence 2013

Citation (BibTeX)

bibtex
@article{mohammad2013crowdsourcing,
    title = {Crowdsourcing a Word-Emotion Association Lexicon},
    author = {Mohammad, Saif M. and Turney, Peter D.},
    journal = {Computational Intelligence},
    volume = {29},
    number = {3},
    pages = {436--465},
    year = {2013},
    publisher = {Wiley Online Library}
}

Details

Annotation Types

radio

Domain

NLPAffective ComputingLexicon Building

Use Cases

Emotion DetectionLexicon BuildingWord-Emotion Association

Tags

emolexnrc-emotion-lexiconword-emotion-associationplutchikcrowdsourcingword-sensemultilingualmohammad

Found an issue or want to improve this design?

Open an Issue

Related Designs

NRC Affect Intensity: Word Emotion Intensity via Best-Worst Scaling

Rate individual English words for the INTENSITY of a basic emotion (anger, fear, joy, or sadness) using Best-Worst Scaling. Within an emotion, annotators see a 4-tuple of words all associated with that emotion and pick the word conveying the most and the least of it; real-valued intensity scores in [0,1] are derived from best-minus-worst counts. This is the annotation design behind the NRC Affect Intensity Lexicon of ~6,000 word-emotion intensity scores (Mohammad, LREC 2018). It complements the NRC-VAD (dimensional) and tweet-level emotion-intensity designs with word-level categorical-emotion intensity.

radio

NRC-VAD: Valence, Arousal & Dominance via Best-Worst Scaling

Rate individual English words on three affective dimensions - valence (pleasant-unpleasant), arousal (active-calm), and dominance (in control-controlled) - using Best-Worst Scaling. Annotators see a 4-tuple of words and pick the highest and lowest word for each dimension; real-valued scores are derived from best-minus-worst counts. This is the annotation design behind the NRC-VAD Lexicon of 20,000+ words (Mohammad, ACL 2018).

radio

Word-Colour Associations: Crowdsourcing a Colour Lexicon

Annotate the colour that a word evokes. For each word, annotators first answer a word-choice question (pick the phrase closest in meaning) that disambiguates the intended word sense and serves as a quality check, then select the basic colour most associated with the word and how strong that association is. Even abstract concepts and emotions (danger, envy, purity) carry strong, consistent colour associations. This is the annotation design behind Mohammad's Word-Colour Association Lexicon (ACL 2011 CMCL workshop), a design that also underlies his colour-emotion analyses.

radio