cardiffnlp / twitter-roberta-base-sentiment

huggingface.co
Total runs: 303.7K
24-hour runs: -10.5K
7-day runs: -70.0K
30-day runs: -184.2K
Model's Last Updated: January 20 2023
text-classification

Introduction of twitter-roberta-base-sentiment

Model Details of twitter-roberta-base-sentiment

Twitter-roBERTa-base for Sentiment Analysis

This is a roBERTa-base model trained on ~58M tweets and finetuned for sentiment analysis with the TweetEval benchmark. This model is suitable for English (for a similar multilingual model, see XLM-T ).

Labels : 0 -> Negative; 1 -> Neutral; 2 -> Positive

New! We just released a new sentiment analysis model trained on more recent and a larger quantity of tweets. See twitter-roberta-base-sentiment-latest and TweetNLP for more details.

Example of classification
from transformers import AutoModelForSequenceClassification
from transformers import TFAutoModelForSequenceClassification
from transformers import AutoTokenizer
import numpy as np
from scipy.special import softmax
import csv
import urllib.request

# Preprocess text (username and link placeholders)
def preprocess(text):
    new_text = []
 
 
    for t in text.split(" "):
        t = '@user' if t.startswith('@') and len(t) > 1 else t
        t = 'http' if t.startswith('http') else t
        new_text.append(t)
    return " ".join(new_text)

# Tasks:
# emoji, emotion, hate, irony, offensive, sentiment
# stance/abortion, stance/atheism, stance/climate, stance/feminist, stance/hillary

task='sentiment'
MODEL = f"cardiffnlp/twitter-roberta-base-{task}"

tokenizer = AutoTokenizer.from_pretrained(MODEL)

# download label mapping
labels=[]
mapping_link = f"https://raw.githubusercontent.com/cardiffnlp/tweeteval/main/datasets/{task}/mapping.txt"
with urllib.request.urlopen(mapping_link) as f:
    html = f.read().decode('utf-8').split("\n")
    csvreader = csv.reader(html, delimiter='\t')
labels = [row[1] for row in csvreader if len(row) > 1]

# PT
model = AutoModelForSequenceClassification.from_pretrained(MODEL)
model.save_pretrained(MODEL)

text = "Good night 😊"
text = preprocess(text)
encoded_input = tokenizer(text, return_tensors='pt')
output = model(**encoded_input)
scores = output[0][0].detach().numpy()
scores = softmax(scores)

# # TF
# model = TFAutoModelForSequenceClassification.from_pretrained(MODEL)
# model.save_pretrained(MODEL)

# text = "Good night 😊"
# encoded_input = tokenizer(text, return_tensors='tf')
# output = model(encoded_input)
# scores = output[0][0].numpy()
# scores = softmax(scores)

ranking = np.argsort(scores)
ranking = ranking[::-1]
for i in range(scores.shape[0]):
    l = labels[ranking[i]]
    s = scores[ranking[i]]
    print(f"{i+1}) {l} {np.round(float(s), 4)}")

Output:

1) positive 0.8466
2) neutral 0.1458
3) negative 0.0076
BibTeX entry and citation info

Please cite the reference paper if you use this model.

@inproceedings{barbieri-etal-2020-tweeteval,
    title = "{T}weet{E}val: Unified Benchmark and Comparative Evaluation for Tweet Classification",
    author = "Barbieri, Francesco  and
      Camacho-Collados, Jose  and
      Espinosa Anke, Luis  and
      Neves, Leonardo",
    booktitle = "Findings of the Association for Computational Linguistics: EMNLP 2020",
    month = nov,
    year = "2020",
    address = "Online",
    publisher = "Association for Computational Linguistics",
    url = "https://aclanthology.org/2020.findings-emnlp.148",
    doi = "10.18653/v1/2020.findings-emnlp.148",
    pages = "1644--1650"
}

Runs of cardiffnlp twitter-roberta-base-sentiment on huggingface.co

303.7K
Total runs
-10.5K
24-hour runs
-29.3K
3-day runs
-70.0K
7-day runs
-184.2K
30-day runs

More Information About twitter-roberta-base-sentiment huggingface.co Model

twitter-roberta-base-sentiment huggingface.co

twitter-roberta-base-sentiment huggingface.co is an AI model on huggingface.co that provides twitter-roberta-base-sentiment's model effect (), which can be used instantly with this cardiffnlp twitter-roberta-base-sentiment model. huggingface.co supports a free trial of the twitter-roberta-base-sentiment model, and also provides paid use of the twitter-roberta-base-sentiment. Support call twitter-roberta-base-sentiment model through api, including Node.js, Python, http.

twitter-roberta-base-sentiment huggingface.co Url

https://huggingface.co/cardiffnlp/twitter-roberta-base-sentiment

cardiffnlp twitter-roberta-base-sentiment online free

twitter-roberta-base-sentiment huggingface.co is an online trial and call api platform, which integrates twitter-roberta-base-sentiment's modeling effects, including api services, and provides a free online trial of twitter-roberta-base-sentiment, you can try twitter-roberta-base-sentiment online for free by clicking the link below.

cardiffnlp twitter-roberta-base-sentiment online free url in huggingface.co:

https://huggingface.co/cardiffnlp/twitter-roberta-base-sentiment

twitter-roberta-base-sentiment install

twitter-roberta-base-sentiment is an open source model from GitHub that offers a free installation service, and any user can find twitter-roberta-base-sentiment on GitHub to install. At the same time, huggingface.co provides the effect of twitter-roberta-base-sentiment install, users can directly use twitter-roberta-base-sentiment installed effect in huggingface.co for debugging and trial. It also supports api for free installation.

twitter-roberta-base-sentiment install url in huggingface.co:

https://huggingface.co/cardiffnlp/twitter-roberta-base-sentiment

Url of twitter-roberta-base-sentiment

twitter-roberta-base-sentiment huggingface.co Url

Provider of twitter-roberta-base-sentiment huggingface.co

cardiffnlp
ORGANIZATIONS

Other API from cardiffnlp