Problème #46
Auteur:Mihai Nan
Difficulté
Votre meilleur score
N/D
Dans un monde où les messages sont de plus en plus courts, tapés à la hâte sur les téléphones et distribués instantanément sur les réseaux sociaux, la qualité de la langue écrite commence à se dégrader. Les erreurs de grammaire, les mots omis et les formulations ambiguës deviennent de plus en plus fréquentes.
Pour analyser et améliorer ces textes, une plateforme éducative développe un système automatique capable de transformer les phrases écrites de manière négligente en une version correcte et claire. Ton rôle est de l'aider en proposant un système automatique qui corrige les textes, d'un point de vue grammatical.
Tu as à disposition deux fichiers :
Chaque ligne de train.csv a les colonnes suivantes :
SampleID — l'identifiant unique du texteText — la phrase originale, telle qu'elle a été écrite par l'utilisateurRevisedText — la version corrigée par un expertExemple :
SampleID,Text,RevisedText747, "She forgot her umbrella it started to rain.", "She forgot her umbrella, and then it started to rain."1382, "He could have bought the house if he has enough money.", "He could have bought the house if he had enough money."241, "I have a meeting with a principal of a school.", "I have a meeting with the principal of the school."Construis un système qui génère la version correcte, d'un point de vue grammatical, pour les phrases de test.csv.
Le système d'évaluation va calculer un score final en combinant deux aspects essentiels :
La formule d'évaluation est :
final_score = 0.7 * cosine_similarity + 0.3 * edit_distance_scorePour construire un système automatique de correction de textes, l'évaluation doit tenir compte à la fois du sens de la phrase et des différences lexicales exactes. C'est là qu'interviennent cosine_similarity et edit_distance.
Définition :
La cosine similarity mesure la similarité entre deux vecteurs en calculant le cosinus de l'angle entre eux. La formule est :
A * B est le produit scalaire des vecteurs|A| et |B| sont leurs normesEn NLP :
Exemple :
Texte 1: "She forgot her umbrella."Texte 2: "She left her umbrella behind."Pertinence :
Elle nous assure que le texte corrigé conserve la même idée que le texte original.
Définition :
L'edit distance mesure le nombre minimum d'opérations (insertion, suppression, remplacement) nécessaires pour transformer une chaîne en une autre.

Exemple :
Texte original: "She forgot her umbrella it started to rain."Texte corrigé: "She forgot her umbrella, and then it started to rain."Pertinence :
Elle reflète les différences lexicales et la correction grammaticale.
Formule du score final :
Cette combinaison assure que le texte corrigé est à la fois grammaticalement correct et similaire d'un point de vue sémantique au texte original.
Le fichier submission.csv doit contenir une ligne pour chaque texte du test.
La première ligne du fichier contient ce qui suit :
DatapointID, RevisedTextoù :
SampleID du test1557) :1557, "He didn't eat any breakfast this morning."