Classer et localiser les différentes formes de harcèlement sexuel.
Classify and locate different forms of sexual harassment.
Introduction
Connaissez-vous le fait inévitable que la prévalence du harcèlement sexuel est due à un faible taux de déclaration? Si les victimes ne signalent pas le harcèlement qu’elles ont subi, comment les autorités pourront-elles guider les gens pour éviter le harcèlement et comment y aura-t-il un changement dans le comportement des auteurs? L’étude de cas d’assortiment et de localisation de diverses formes de harcèlement sexuel aide les victimes à exprimer leur expérience de manière anonyme et aide à catégoriser les différents types de harcèlement sexuel que les victimes ont subis, de sorte qu’il aide à une évaluation rapide de la catégorie pour le dépôt de témoignages, et cela aide également à fournir des précautions de sécurité en tenant compte de l’analyse des forums déjà déposés.
Ces précautions de sécurité donnent une vision aux individus en fournissant des emplacements prévalents avec la plupart des types de harcèlement sexuel déclarés dans cette région et le comportement des auteurs. À l’avenir, à partir des prévisions ci-dessus, les individus en bénéficieront beaucoup car ils fournissent des informations et sensibilisent sur les circonstances de l’événement.
Objectifs d’apprentissage
- Prédiction de la classification multi-étiquettes de diverses formes de harcèlement dans la société
- Utilisation de techniques de traitement du langage naturel sur l’ensemble de données
- Itération sur les algorithmes d’apprentissage machine traditionnels
- Mise en œuvre de réseaux de neurones convolutifs
- Le blog discute de l’application de ces méthodes pour aborder les problèmes liés au harcèlement
Cet article a été publié dans le cadre du Data Science Blogathon.
- Recherche de similarité, Partie 2 Quantification de Produit
- Suppression et distillation architecturales une voie vers une compression efficace dans les modèles de diffusion texte-image d’IA
- Google AI dévoile Imagen Editor et EditBench pour améliorer et évaluer l’Inpainting d’image guidée par le texte.
Problème d’affaires
Ici, les histoires des victimes sont classées en trois types de harcèlement sexuel, c’est-à-dire, nous les convertissons en classification multi-étiquettes car les victimes peuvent subir un ou plusieurs types de harcèlement sexuel à la fois.
Contraintes commerciales
Comme mon étude de cas est une classification multi-étiquettes, une mauvaise classification n’est plus un tort ou un droit absolu. Une prédiction contenant un sous-ensemble des classes réelles devrait être considérée comme meilleure qu’une prédiction qui n’en contient aucune, c’est-à-dire prédire deux des trois étiquettes correctement est mieux que de ne prédire aucune étiquette du tout. Nous n’avons pas de contraintes strictes de latence. L’interprétabilité est très importante car elle aide à trouver pourquoi l’histoire est classée comme l’un des types de harcèlement.
Description de l’ensemble de données
Les données ont été collectées à partir du forum en ligne safecity et de l’enquête WIN World Survey (WWS), une enquête de recherche et de sondage sur le marché pour collecter des données sur les pays prédominants en matière de harcèlement sexuel. L’ensemble de données contient deux fonctionnalités. La Fonctionnalité 1 – contient les histoires des victimes (Description), la Fonctionnalité 2 contient la géolocalisation (Localisation) de l’événement qui a eu lieu.
Notre étiquette de classe est une classification multi-étiquettes qui contient trois types de harcèlement sexuel (Commentaires, Regard insistant et Toucher) que la victime a subis.
Métriques de performance
Pour la classification multi-étiquettes, les prédictions pour une instance sont un ensemble d’étiquettes et donc, nos prédictions peuvent être entièrement correctes, partiellement correctes ou entièrement incorrectes. Cela rend l’évaluation d’un classificateur multi-étiquettes plus difficile que l’évaluation d’un classificateur à une seule étiquette. Cependant, pour l’évaluation de la correction partielle, nous pouvons utiliser les métriques suivantes pour l’évaluation.
Exactitude – Ici, l’exactitude pour une instance est calculée comme la proportion des étiquettes correctes prédites par rapport au nombre total (prédit et réel) d’étiquettes. L’exactitude globale peut être obtenue en faisant la moyenne sur toutes les instances.
Ces métriques peuvent être calculées sur des étiquettes de classe individuelles, puis moyennées sur toutes les classes. Cela est appelé Macro Moyennage. Alternativement, nous pouvons calculer ces métriques globalement sur toutes les instances et toutes les étiquettes de classe. Cela est appelé Micro Moyennage.
Nous utilisons Macro F1-score et Micro F1-score comme métrique pour la classification multi-étiquettes.
La perte de Hamming est utilisée comme métrique pour la classification multi-étiquettes, cette métrique calcule la proportion d’étiquettes incorrectement prédites par rapport au nombre total d’étiquettes.
Prétraitement
Pour obtenir de meilleures informations, nous procédons au nettoyage de nos données (comme la suppression de symboles, de ponctuations, de caractères spéciaux, etc.). Lorsqu’il s’agit de données textuelles, le nettoyage ou le prétraitement est aussi important que la construction du modèle.
Voici les étapes de prétraitement que nous devons effectuer:
- Minuscule
- Suppression des chiffres
- Suppression de la ponctuation
- Suppression des caractères spéciaux
- Suppression des balises html
- Suppression des mots vides
- Expansion des contractions
Analyse exploratoire des données
Il est important de s’assurer que les données sont prêtes pour le travail de modélisation. L’analyse exploratoire des données (EDA) garantit la préparation des données pour l’apprentissage automatique. En fait, l’EDA garantit que les données sont plus utilisables. Sans une EDA appropriée, le travail d’apprentissage automatique souffre de problèmes d’exactitude et bien souvent les algorithmes ne fonctionnent pas. L’EDA nous aide à comprendre les données et à obtenir de meilleurs insights. Nous nous dirigeons donc vers l’EDA.
Vérification des valeurs nulles dans le jeu de données
df.isnull().sum()
Nous ajoutons une fonctionnalité supplémentaire au data frame qui calcule le nombre de mots d’une histoire de victime. Nous traçons un graphique de distribution en prenant en compte la colonne du nombre de mots de notre data frame.
- À partir du graphique ci-dessus, nous pouvons déduire que la plupart des victimes préfèrent partager leur expérience dans les 100 mots.
Graphique géographique
À partir de notre data frame, nous prenons en considération la colonne de localisation puis calculons le nombre de fois où les victimes ont subi du harcèlement dans une région particulière. Pour tracer le graphique géographique, nous construisons un data frame des pays (région où le harcèlement sexuel a été subi) et du nombre de victimes qui ont signalé cette région particulière.
- À partir du graphique ci-dessus, nous pouvons déduire que le nombre le plus élevé de victimes est signalé dans la région du Mexique (région jaune plus lumineuse).
Graphique à barres
Graphiques à barres pour vérifier le nombre d’histoires de victimes dans chaque catégorie.
Nous créons une colonne “label” comme suit :
- Nous étiquetons 1 lorsque la personne ne subit que du harcèlement verbal
- Nous étiquetons 2 lorsque la personne ne subit que du harcèlement visuel
- Nous étiquetons 3 lorsque la personne ne subit que du harcèlement physique
- Nous étiquetons 4 lorsque la personne subit à la fois du harcèlement verbal et visuel
- Nous étiquetons 5 lorsque la personne subit à la fois du harcèlement visuel et physique
- Nous étiquetons 6 lorsque la personne subit à la fois du harcèlement verbal et physique
- Nous étiquetons 7 lorsque la personne ne subit aucun harcèlement
- Nous étiquetons 8 lorsque la personne subit les trois types de harcèlement en même temps
À partir du graphique à barres ci-dessus, nous pouvons observer que les femmes du Mexique ont subi le plus grand nombre de harcèlements sexuels. Nous devons également obtenir une intuition claire des mots qui sont fréquemment utilisés dans chaque catégorie. Ci-dessous se trouvent les graphiques à barres des unigrammes, des bigrammes et des trigrammes les plus courants pour chaque catégorie.
Catégorie de commentaire
Catégorie d’observation
Catégorie de toucher
TSNE
Effectuer une vectorisation sur nos histoires de victimes afin de réduire la dimensionnalité pour une visualisation facile de la catégorie de harcèlement.
Comme nous le savons, TSNE est de nature stochastique, donc pour plusieurs exécutions, nous obtenons des visualisations différentes. J’ai donc exécuté plusieurs perplexités et itérations afin d’obtenir le graphique ci-dessus, qui indique clairement que chaque classe peut être séparée des autres.
Nuage de mots
Nous avons également implémenté un nuage de mots pour la visualisation des données fréquentes dans chaque catégorie.
Catégorie de commentaire
- D’après ce qui précède, nous pouvons déduire que pour le type de harcèlement sexuel de commentaire, la plupart des auteurs étaient des garçons et que ce type d’événement se produisait généralement à l’université, à la gare, dans le bus ou à l’école.
Catégorie d’observation
- D’après ce qui précède, nous pouvons déduire que pour le type de harcèlement sexuel d’observation, la plupart des auteurs étaient des garçons et que ce type d’événement se produisait généralement dans les rues alors que les victimes marchaient, passaient ou allaient à l’université.
Catégorie de toucher
- D’après ce qui précède, nous pouvons déduire que pour le type de harcèlement sexuel de toucher, la plupart des auteurs étaient des hommes et que ce type d’événement se produisait généralement dans des lieux publics comme dans un bus, à la gare alors qu’ils voyageaient dans des lieux bondés.
Scatter Text
En utilisant Scatter Text pour visualiser les termes uniques et leur fréquence. Le graphique Scatter Text fonctionne sur des données catégorielles en tant que classificateur binaire, nous créons donc des colonnes séparées pour chaque type de harcèlement avec des valeurs catégorielles.
Graphique Scatter Text pour la catégorie de commentaire
À partir de la figure ci-dessus, nous pouvons déduire les mots de commentaire les plus fréquents et les mots non commentés. Le coin supérieur droit du graphique représente les termes les plus partagés et le coin inférieur gauche représente les termes les moins fréquents des termes les plus partagés.
Graphique de texte de dispersion pour la catégorie ogling
À partir de la figure ci-dessus, nous pouvons déduire les mots les plus fréquents pour ogling et les mots les moins fréquents pour ogling. Le coin supérieur droit du graphique représente les termes les plus partagés et le coin inférieur gauche représente les termes les moins fréquents des termes les plus partagés.
Graphique de texte de dispersion pour la catégorie de groping
À partir de la figure ci-dessus, nous pouvons déduire les mots les plus fréquents pour groping et les mots les moins fréquents pour groping. Le coin supérieur droit du graphique représente les termes les plus partagés et le coin inférieur gauche représente les termes les moins fréquents des termes les plus partagés.
Modèles d’apprentissage automatique
Pour entraîner le modèle, nous avons effectué une division de base train-test et avons essayé différents modèles.
Nous avons effectué divers modèles d’apprentissage automatique en utilisant BOW, TFIDF, GLOVE 300 dimensions et nous avons observé les valeurs ci-dessous pour les métriques respectives.
De ce qui précède, nous pouvons déduire un score Macro F1 élevé de 0,63 à partir de Linear SVC en utilisant le vectoriseur BOW, en outre, les vectoriseurs BOW et TFIDF surpassent les vectoriseurs GLOVE dans chaque métrique.
Nous avons également procédé à la mise en œuvre de modèles d’apprentissage en profondeur.
Modèles d’apprentissage en profondeur
Modèle CNN
Nous avons construit un réseau neuronal convolutif en passant Glove 300 dimensions dans la couche d’incrustation.
Comme nous travaillons sur une classification multi-étiquettes, nous passons notre dernière couche en activation sigmoïde et nous appliquons une fonction de perte d’entropie croisée binaire.
Modèle CNN-LSTM
Nous avons également construit un réseau neuronal convolutif en passant Glove 300 dimensions dans la couche d’incrustation, puis nous avons ajouté une couche LSTM pour le modèle CNN-LSTM.
Résumé des deux modèles d’apprentissage en profondeur
À partir des métriques ci-dessus, nous choisissons le CNN comme meilleur modèle.
Déploiement du modèle
J’ai créé une application Web en utilisant Flask et déployé mon meilleur modèle. Ci-dessous se trouve la vidéo des instances en cours d’exécution de mon modèle déployé.
Conclusion
En conclusion, ce blog met en lumière le problème pressant du harcèlement sexuel et souligne l’incidence faible de déclaration comme un facteur contribuant à sa prévalence. Il souligne l’importance pour les victimes de signaler leurs expériences pour permettre aux autorités de guider les gens et de promouvoir un changement dans le comportement des contrevenants.
Ce blog traite également de la mise en œuvre de techniques de traitement du langage naturel, d’algorithmes d’apprentissage automatique traditionnels et de réseaux neuronaux convolutifs, le modèle CNN, augmenté d’une couche LSTM, générant des résultats supérieurs. À travers ce travail, l’objectif est de permettre aux individus, de fournir des orientations et de promouvoir un changement social dans la lutte contre le problème omniprésent du harcèlement sexuel.
Points clés
- Le modèle CNN a surpassé les algorithmes d’apprentissage automatique traditionnels dans la prédiction de la classification multi-étiquettes des formes de harcèlement.
- La couche LSTM utilisée dans le modèle CNN a entraîné une amélioration significative des métriques de performance.
- L’article met en évidence la supériorité du modèle CNN et l’impact de la couche LSTM sur ses performances.
Travaux futurs
- Nous devons recueillir plus de données pour nous aider à améliorer les valeurs de nos mesures de performance sur l’ensemble de données de test.
- Nous pouvons essayer les embeddings BERT et les embeddings de mots FastText.
- Nous pouvons travailler sur notre modèle personnalisé afin d’obtenir des valeurs améliorées sur les mesures de performance en modifiant l’architecture.
Vous pouvez trouver mon code complet ici.
Questions fréquentes
Références
- https://aclanthology.org/D18-1303.pdf
- https://stackoverflow.com/questions/19790188/expanding-english-language-contractions-in-python/47091490#47091490
- https://www.kdnuggets.com/2020/09/geographical-plots-python.html
- https://analyticsindiamag.com/visualizing-sentiment-analysis-reports-using-scattertext-nlp-tool/
Les médias présentés dans cet article n’appartiennent pas à Analytics Vidhya et sont utilisés à la discrétion de l’auteur.
We will continue to update IPGirl; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- Forged in Flames Une start-up fusionne l’IA générative et la vision par ordinateur pour lutter contre les incendies de forêt.
- AI Voit Ce Que Vous Voyez Mind’s Eye est un Modèle d’IA Qui Peut Reconstruire des Scans Cérébraux en Images
- Il était une fois… une histoire de RAPIDS Aller et Retour
- Écrire des chansons avec GPT-4 Partie 3, Mélodies
- Formation intensive gratuite Full Stack LLM
- Performance surhumaine sur la référence Atari 100K La puissance de BBF – Un nouvel agent RL basé sur la valeur de Google DeepMind, Mila et l’Université de Montréal.
- 10 cours courts gratuits pour maîtriser l’Intelligence Artificielle Générative.