EMCGCN Brand Perception ABSA Model

Aspect Sentiment Triplet Extraction (ASTE) model trained on SemEval + MAMS datasets. Given a sentence, it extracts (aspect, opinion, sentiment) triplets.

  • Architecture: EMCGCN (Edge-aware Multi-hop Graph Convolutional Network)
  • Backbone: yangheng/deberta-v3-base-absa-v1.1
  • Test F1: 71.71%
  • Framework: PyABSA v2.4.2

Quick Start

pip install pyabsa
from pyabsa import AspectSentimentTripletExtraction as ASTE

extractor = ASTE.AspectSentimentTripletExtractor(
    checkpoint="<your-username>/brand-absa-emcgcn"
)

result = extractor.predict("The battery life is great but the screen is terrible")
print(result)
# [('battery life', 'great', 'Positive'), ('screen', 'terrible', 'Negative')]

Batch Inference

sentences = [
    "The food was amazing but the service was slow.",
    "Great camera quality, terrible battery life.",
    "The price is reasonable and the build quality is solid.",
]

results = extractor.predict(sentences)
for sentence, triplets in zip(sentences, results["triplets"]):
    print(f"{sentence}")
    for aspect, opinion, sentiment in triplets:
        print(f"  - Aspect: {aspect} | Opinion: {opinion} | Sentiment: {sentiment}")

Training Details

Parameter Value
Base model yangheng/deberta-v3-base-absa-v1.1
Epochs 50
Batch size 16
Learning rate 1e-5
Max seq length 128
Optimizer AdamW
Seed 42

Training data:

  • SemEval-2014 Laptop14
  • SemEval-2014 Restaurant14
  • SemEval-2015 Restaurant15
  • SemEval-2016 Restaurant16
  • MAMS (Multi-Aspect Multi-Sentiment)

Total training examples: 3,634 | Validation: 885 | Test: 1,466

Output Format

Each triplet is (aspect_term, opinion_term, sentiment) where sentiment is one of:

  • Positive
  • Negative
  • Neutral
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Dataset used to train deepakm10/brand-absa-emcgcn

Evaluation results