SloBERTa-Trendi-Topics 1.0
El modelo SloBERTa-Trendi-Topics es un modelo de clasificación de textos para categorizar noticias con una de las 13 etiquetas de temas. Fue entrenado en un conjunto de aproximadamente 36,000 textos eslovenos de varias fuentes de noticias eslovenas incluidas en el Corpus Trendi Monitor de Esloveno (http://hdl.handle.net/11356/1590) como "rtvslo.si", "sta.si", "delo.si", "dnevnik.si", "vecer.com", "24ur.com", "siol.net", "gorenjskiglas.si", etc. Los textos fueron categorizados semiautomáticamente en 13 categorías basadas en las secciones bajo las cuales fueron publicados (es decir, URLs). El conjunto de etiquetas fue desarrollado de acuerdo con esquemas de categorización relacionados utilizados en otros corpus y comprende los siguientes temas: "črna kronika" (crimen y accidentes), "gospodarstvo, posel, finance" (economía, negocios, finanzas), "izobraževanje" (educación), "okolje" (medio ambiente), "prosti čas" (tiempo libre), "šport" (deportes), "umetnost, kultura" (arte, cultura), "vreme" (clima), "zabava" (entretenimiento), "zdravje" (salud), "znanost in tehnologija" (ciencia y tecnología), "politika" (política) y "družba" (sociedad). El proceso de categorización se explica con más detalle en Kosem et al. (2022): https://nl.ijs.si/jtdh22/pdf/JTDH2022_Kosem-et-al_Spremljevalni-korpus-Trendi.pdf El modelo fue entrenado en los textos etiquetados utilizando el modelo de embeddings contextuales SloBERTa 2.0 (https://huggingface.co/EMBEDDIA/sloberta, también disponible en CLARIN.SI: http://hdl.handle.net/11356/1397) y validado en un conjunto de desarrollo de 1,293 textos utilizando la biblioteca simpletransformers y los siguientes hiperparámetros: tamaño del lote de entrenamiento: 8, tasa de aprendizaje: 1e-5, longitud máxima de secuencia: 512, número de épocas: 2. El modelo logra una puntuación F1 macro de 0.94 en un conjunto de prueba de 1,295 textos (mejor para "črna kronika", "politika", "šport" y "vreme" en 0.98, peor para "prosti čas" en 0.83).
Como usar
from transformers import AutoTokenizer, AutoModelForSequenceClassification
# Carga el tokenizador y el modelo
model_name = 'cjvt/sloberta-trendi-topics'
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
# Texto de entrada
txt_input = 'Este es un ejemplo de texto.'
# Tokenización
tokens = tokenizer(txt_input, return_tensors='pt')
# Predicción
outputs = model(**tokens)
Funcionalidades
- Clasificación de textos en 13 categorías
- Entrenado con aproximadamente 36,000 textos eslovenos
- Utiliza embeddings contextuales SloBERTa 2.0
- Validado con una puntuación F1 macro de 0.94
Casos de uso
- Categorizar artículos de noticias en diferentes temas
- Monitorear y clasificar contenido en varias plataformas de noticias eslovenas
- Análisis de textos para investigación en ciencia de datos