KevSun/IELTS_essay_scoring

KevSun
Clasificación de texto

Hemos entrenado un modelo de lenguaje para calificar automáticamente los ensayos del IELTS (Sistema Internacional de Evaluación del Idioma Inglés) utilizando un conjunto de datos de entrenamiento masivo evaluado por calificadores humanos. El conjunto de datos de entrenamiento consiste en 18,000 ensayos reales del examen IELTS y sus puntuaciones oficiales. Los resultados de la calificación de nuestro modelo se miden en cinco dimensiones: logro de la tarea, coherencia y cohesión, vocabulario, gramática y puntuación general, de acuerdo con los estándares oficiales del IELTS. El resultado impresionante en el conjunto de prueba es el siguiente: Precisión = 0.82, Puntuación F1 = 0.81. En cuanto a los resultados actuales, nuestro modelo podría reemplazar a los calificadores humanos para los ensayos del IELTS hasta cierto grado, pero continuaremos optimizándolo para mejorar su precisión y efectividad.

Como usar

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

# Cargar el modelo y el tokenizador pre-entrenados
model_path = "KevSun/IELTS_essay_scoring"
model = AutoModelForSequenceClassification.from_pretrained(model_path)
tokenizer = AutoTokenizer.from_pretrained(model_path)

# Texto de ejemplo a ser evaluado, el ensayo con la puntuación del calificador humano (= 8.5) en el conjunto de prueba.
new_text = (
"Es importante que todas las ciudades y pueblos tengan grandes espacios públicos, como plazas y parques. "
"¿Está de acuerdo o en desacuerdo con esta afirmación? Es crucial para todas las ciudades metropolitanas y pueblos "
"tener algunas instalaciones recreativas, como parques y plazas, debido a sus numerosos beneficios. Un número de "
"argumentos rodean mi opinión, y lo discutiré en los próximos párrafos. Para comenzar, el primer "
"y el principal mérito es que es beneficioso para la salud de las personas porque en la mañana pueden "
"ir a caminar, así como en las tardes, también las personas mayores pueden pasar su tiempo libre con sus seres queridos, "
"y pueden discutir sobre sus acontecimientos diarios. Además, los jóvenes hacen mucho ejercicio en parques y "
"jardines para mantener su salud en forma y sana, de lo contrario, si no hay parque, se pegan a los dispositivos electrónicos "
"como teléfonos móviles y computadoras y muchos más. Además, los niños pequeños tienen el mejor lugar para jugar, juegan "
"con sus amigos en los parques, y si no hay un jardín o plaza disponible para los niños, entonces usan las carreteras y calles "
"para jugar, lo que puede conducir a incidentes graves. Además, los parques también tienen algún valor educativo, en las escuelas, "
"los estudiantes aprenden sobre la protección ambiental en sus estudios, y los maestros pueden llevar a sus alumnos a los parques porque "
"los estudiantes pueden ver esas imágenes tan vívidamente que ven en sus libros escolares y conocen la importancia "
"y protección de los árboles y flores. En resumen, los parques tienen una inmensa importancia en términos de educación y salud "
"para la gente de cada sociedad, por lo que el gobierno debería construir parques en cada ciudad y pueblo."
)

encoded_input = tokenizer(new_text, return_tensors='pt', padding=True, truncation=True, max_length=512)

model.eval()

# Realizar la predicción
with torch.no_grad():
outputs = model(**encoded_input)

predictions = outputs.logits.squeeze()

predicted_scores = predictions.numpy()  

# Normalizar las puntuaciones
normalized_scores = (predicted_scores / predicted_scores.max()) * 9  # Escalar a 9

rounded_scores = np.round(normalized_scores * 2) / 2

item_names = ["Logro de la tarea", "Coherencia y cohesión", "Vocabulario", "Gramática", "General"]

for item, score in zip(item_names, rounded_scores):
print(f"{item}: {score:.1f}")

Funcionalidades

Calificación multidimensional de ensayos
Adaptación para AutoTrain
Compatibilidad con puntos finales de inferencia
Precisión de 0.82 en el conjunto de prueba
Puntuación F1 de 0.81 en el conjunto de prueba
Basado en el modelo RoBERTa

Casos de uso

Calificación automática de ensayos en exámenes de nivel de idioma.
Asistencia a profesores en la evaluación de ensayos.
Optimización de sistemas de calificación en instituciones educativas.
Investigación en procesamiento del lenguaje natural y evaluación automática.