Lowerated/deberta-v3-lm6

Lowerated
Clasificación de texto

Lowerated/deberta-v3-lm6 es un modelo basado en DeBERTa-v3 ajustado para el análisis de sentimientos basado en aspectos en las reseñas de películas de IMDb. El modelo está diseñado para clasificar los sentimientos en siete aspectos clave de la cinematografía: Cinematografía, Dirección, Historia, Personajes, Diseño de Producción, Concepto Único y Emociones.

Como usar

Instalar lowerated:

pip install lowerated

Ahora, puede usarlo de la siguiente manera:

from lowerated.rate.entity import Entity

# Uso de ejemplo
if __name__ == "__main__":
    some_movie_reviews = [
        "mala película!", "peor que otras películas.", "mala.",
        "mejor película", "muy buena película", "la cinematografía fue increíble",
        "la historia fue tan hermosa", "el elemento emocional faltaba pero la cinematografía fue genial",
        "no sentí nada viendo esto",
        "oooof, eliot y jessie fueron tan buenos. el casting fue el mejor",
        "yo, ¿quién diseñó el set? eso fue muy bueno",
        "historias como estas son raras"
    ]

    # Crear objeto entidad (carga todo el pipeline)
    # lista de aspectos ('Cinematografía', 'Dirección', 'Historia', 'Personajes', 'Diseño de Producción', 'Concepto Único', 'Emociones')
    entity = Entity(name="Movie")

    rating = entity.rate(reviews=some_movie_reviews)

    print("LM6: ", rating["LM6"])

Uso del modelo:

import torch
from transformers import DebertaV2ForSequenceClassification, DebertaV2Tokenizer

# Cargar el modelo ajustado y el tokenizador
model = DebertaV2ForSequenceClassification.from_pretrained('Lowerated/deberta-v3-lm6')
tokenizer = DebertaV2Tokenizer.from_pretrained('Lowerated/deberta-v3-lm6')

# Asegurarse de que el modelo esté en modo de evaluación
model.eval()

# Definir la asignación de etiquetas
label_columns = ['Cinematografía', 'Dirección', 'Historia', 'Personajes', 'Diseño de Producción', 'Concepto Único', 'Emociones']

# Función para predecir las puntuaciones de sentimiento
def predict_sentiment(review):
    # Tokenizar la reseña de entrada
    inputs = tokenizer(review, return_tensors='pt', truncation=True, padding=True)

    # Deshabilitar cálculos de gradiente para inferencia
    with torch.no_grad():
        # Obtener las salidas del modelo
        outputs = model(**inputs)

        # Obtener los logits de predicción
        predictions = outputs.logits.squeeze().detach().numpy()
    return predictions

# Función para imprimir predicciones con etiquetas
def print_predictions(review, predictions):
    print(f"Reseña: {review}")
    for label, score in zip(label_columns, predictions):
        print(f"{label}: {score:.2f}")

review = "La cinematografía fue impresionante, pero la historia fue débil."
predictions = predict_sentiment(review)
print_predictions(review, predictions)

Funcionalidades

Modelo de Clasificación de Texto
Análisis de Sentimientos Basado en Aspectos
Clasificación de sentimientos en siete aspectos de la cinematografía
Basado en DeBERTa-v3
Ajustado utilizando PyTorch
Licencia Apache-2.0

Casos de uso

Clasificación de sentimientos en reseñas de películas de IMDb
Proporcionar una comprensión más matizada de las opiniones de los espectadores
Mejorar los sistemas de calificación de películas