BERT pre-entrenado en Twitter sobre la Elección de EE.UU. 2020 para la Detección de Postura hacia Donald Trump (KE-MLM)

kornosk
Clasificación de texto

Pesos pre-entrenados para el modelo KE-MLM en el Modelo de Lenguaje enmascarado mejorado por conocimiento para la Detección de Postura, NAACL 2021.

Como usar

Este modelo de lenguaje pre-entrenado está afinado para la tarea de detección de postura específicamente hacia Donald Trump. Por favor, consulte el repositorio oficial para más detalles.

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
import numpy as np

# elegir GPU si está disponible
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

# seleccionar ruta del modelo aquí
pretrained_LM_path = "kornosk/bert-election2020-twitter-stance-trump-KE-MLM"

# cargar modelo
tokenizer = AutoTokenizer.from_pretrained(pretrained_LM_path)
model = AutoModelForSequenceClassification.from_pretrained(pretrained_LM_path)

id2label = {
    0: "CONTRA",
    1: "A FAVOR",
    2: "NINGUNO"
}

##### Predicción Neutral #####
sentence = "Hola Mundo."
inputs = tokenizer(sentence.lower(), return_tensors="pt")
outputs = model(**inputs)
predicted_probability = torch.softmax(outputs[0], dim=1)[0].tolist()

print("Frase:", sentence)
print("Predicción:", id2label[np.argmax(predicted_probability)])
print("Contra:", predicted_probability[0])
print("A Favor:", predicted_probability[1])
print("Neutral:", predicted_probability[2])

##### Predicción A Favor #####
sentence = "Vamos Vamos Trump!!!"
inputs = tokenizer(sentence.lower(), return_tensors="pt")
outputs = model(**inputs)
predicted_probability = torch.softmax(outputs[0], dim=1)[0].tolist()

print("Frase:", sentence)
print("Predicción:", id2label[np.argmax(predicted_probability)])
print("Contra:", predicted_probability[0])
print("A Favor:", predicted_probability[1])
print("Neutral:", predicted_probability[2])

##### Predicción Contra #####
sentence = "Trump es el peor."
inputs = tokenizer(sentence.lower(), return_tensors="pt")
outputs = model(**inputs)
predicted_probability = torch.softmax(outputs[0], dim=1)[0].tolist()

print("Frase:", sentence)
print("Predicción:", id2label[np.argmax(predicted_probability)])
print("Contra:", predicted_probability[0])
print("A Favor:", predicted_probability[1])
print("Neutral:", predicted_probability[2])

Funcionalidades

Clasificación de texto
Transformers
PyTorch
JAX
Detección de postura en Twitter
Elección de EE.UU. 2020
Política

Casos de uso

Detección de postura en Twitter
Análisis de sentimientos en eventos políticos
Monitoreo de opiniones en redes sociales