Analyse
Analyse du corpus
Loi de Zipf
Étapes de l'analyse
Journal debug
[info] Prêt.
Corpus
Corpus importé
Prévisualisation
Importez un fichier texte pour afficher un extrait ici.
Annotation
Annotation du corpus
Import de add_expression_fr.csv, prévisualisation annotée
et gestion du dictionnaire d'expressions de session.
Aide : le plus simple est de surligner, copier puis coller les expressions à transformer dans le dictionnaire. Par exemple, intelligence artificielle deviendra intelligence_artificielle.
Vous pouvez enregistrer votre dictionnaire d'expressions, mais vous pouvez également ajuster (supprimer) et enrichir (ajouter) un dictionnaire déjà annoté.
Vous pouvez réimporter un fichier d'expressions déjà annoté ; il doit impérativement être nommé add_expression_fr.csv.
CHD
Résultats CHD
Paramétrage
Dendrogramme CHD
Résultat
Paramétrage
Stats CHD
Les tableaux sont organisés par classe, comme dans l'UI R.
Tableaux statistiques CHD par classe
Paramétrage
Concordancier
Affichage des segments classés et du concordancier HTML exporté.
Résultat
Paramétrage
Nuages de mots CHD
Le nombre de mots affichés suit le réglage des nuages de mots de l'analyse.
Résultat
AFC
Analyse factorielle des correspondances
AFC des classes
AFC des termes
Modalités et valeurs propres
Table des mots projetés
Trajectoire
Trajectoire lexicale
Il n'est pas nécessaire de lancer une CHD avant ce test. La trajectoire lexicale est indépendante et compare des entretiens ordonnés dans le temps, soit dans leur forme lexicale brute, soit via une couche émotionnelle issue d'un lexique dédié.
Paramètres principaux : la variable étoilée de la trajectoire ordonne les entretiens, le
filtre restreint le sous-corpus, l'ordre chronologique définit le sens
de lecture, et le nombre de termes évolutifs règle combien de mots sont affichés par comparaison.
Ce test est indépendant de la CHD. Il réutilise le nettoyage courant de l'application et le dictionnaire
lexique_fr.
Principe du test : chaque entretien est transformé en distribution lexicale sur un vocabulaire commun. La divergence de Jensen-Shannon mesure ensuite l'écart entre deux distributions. La comparaison à la première séance prend pour référence la première modalité dans l'ordre choisi.
Le filtrage morphosyntaxique réellement utilisé par la trajectoire lexicale est rappelé ci-dessus et réexporté dans le cadre de la trajectoire lexicale.
Couche active par défaut : trajectoire lexicale brute. En mode émotionnel, la divergence porte sur des distributions d'émotions reconnues par FEEL ou NRC, et non plus directement sur les mots.
Cadre de la trajectoire lexicale
Indicateurs par entretien
Ordre indique la position de l'entretien dans la série. Unite correspond à la modalité suivie : séance, date, mois, année ou phase.
Tokens_total est le nombre total de mots observés après prétraitement. Types_total est le nombre de mots différents.
Entropie_lexicale mesure la dispersion interne du vocabulaire de la séance. Entropie_normalisee ramène cette dispersion entre 0 et 1 pour comparer plus facilement les entretiens. Redondance_relative vaut 1 - entropie normalisée : plus elle est élevée, plus le discours est concentré sur un lexique resserré et répétitif.
Courbe de l'entropie lexicale
Courbe de la redondance relative
La redondance relative mesure le degré de concentration du discours. Plus elle est élevée, plus le vocabulaire est resserré autour d'un nombre limité de mots ou de formes récurrentes.
Profils émotionnels
Ce sous-onglet est activé par la trajectoire émotionnelle. Il résume, pour chaque entretien, la répartition relative des émotions reconnues par le lexique choisi.
Résumé de valence positive / négative
Ce résumé reste secondaire : il synthétise les émotions reconnues en deux pôles de valence quand le lexique émotionnel le permet.
Divergence de Jensen-Shannon entre séances successives
La divergence de Jensen-Shannon mesure l'écart entre deux distributions lexicales. Ici, elle compare chaque séance à la précédente. Dans le tableau, Unite_depart est la séance de départ, Unite_arrivee la séance suivante, et Divergence_Jensen_Shannon la force de l'écart lexical entre les deux.
Divergence de Jensen-Shannon par rapport à la première séance
Cette lecture compare chaque entretien à la première séance de l'ordre choisi, qui sert de référence.
Dans le tableau, Unite_reference est la première séance, Unite_comparee la séance comparée, et Divergence_Jensen_Shannon l'écart lexical entre les deux.
Elle aide à repérer une évolution progressive, un retour vers le point de départ ou une rupture plus durable.
Détection explicite des ruptures discursives
Cette lecture part des divergences de Jensen-Shannon entre périodes successives et cherche les pics de rupture.
Une rupture détectée correspond ici à un pic local dont le niveau est suffisamment au-dessus du profil moyen de la série. Ce n'est pas une preuve absolue, mais un signal interprétatif pour repérer les moments de bascule.
Le tableau indique les périodes comparées, la divergence observée, un Score_standardise, la présence d'un Pic_local, le statut Rupture_detectee, un Niveau_rupture et les Termes_explicatifs les plus contributifs.
Termes qui évoluent entre les séances
Ce tableau mesure le sens du changement lexical. Il sert à voir ce qui apparaît, disparaît, monte ou recule entre deux entretiens. Les termes sont classés en hausse, baisse, nouveau ou disparu à partir des fréquences relatives comparées entre deux entretiens. Mode_comparaison indique si la lecture porte sur la séance précédente ou sur la première séance. Unite_depart et Unite_arrivee donnent les deux entretiens comparés. Frequence_relative_depart et Frequence_relative_arrivee donnent le poids lexical du terme dans chaque entretien. Difference_relative résume le sens et l'ampleur du déplacement.
Contribution des termes à la divergence
Ce tableau mesure la contribution explicative des mots au score global. Il sert à comprendre pourquoi la divergence de Jensen-Shannon est forte ou faible entre deux entretiens.
Cette table ne montre pas seulement les mots en hausse ou en baisse. Elle isole les termes qui expliquent le plus la différence globale entre deux distributions lexicales.
Contribution_Jensen_Shannon indique la part relative du terme dans l'écart entre les deux entretiens comparés. Plus la valeur est élevée, plus le terme contribue au score global.
Il n'y a donc pas doublon : le premier tableau décrit la direction du changement lexical, tandis que celui-ci identifie les mots qui portent le plus l'écart global mesuré.
Un clic sur un Terme ouvre le concordancier JSD et affiche les segments de texte contenant ce terme dans les deux entretiens comparés.
Matrice de divergence de Jensen-Shannon
Cette matrice compare toutes les paires d'entretiens. Les lignes et les colonnes correspondent aux entretiens. Chaque cellule contient la divergence de Jensen-Shannon entre les deux séances croisées. Une valeur faible indique des profils lexicaux proches, une valeur forte signale un écart lexical plus net.
Frise des émergences
Cette frise temporelle relit la trajectoire des termes les plus changeants à travers les transitions entre entretiens. Chaque ligne correspond à un terme, chaque colonne à une transition, et la couleur indique s'il s'agit d'un nouveau, d'une hausse, d'une baisse ou d'un terme disparu. Le premier graphe compare la première séance à toutes les suivantes. Le second compare les séances successives entre elles. Ce rendu aide à voir, sur l'ensemble de la série, comment les émergences et les reculs se distribuent dans le temps.
Barres divergentes des termes évolutifs
Chaque graphe compare deux entretiens et place les termes en recul à gauche de zéro, les termes en hausse à droite. La longueur de la barre correspond à la Difference_relative du terme entre les deux entretiens. Ce rendu aide à voir très vite quels mots tirent le discours vers un déplacement positif ou négatif.
Waterfall des contributions
Chaque waterfall montre, pour une comparaison donnée, les termes qui fabriquent le plus l'écart global mesuré par la divergence de Jensen-Shannon. Chaque barre ajoute la contribution d'un mot au cumul total. La dernière barre rappelle le total de divergence expliqué par les termes affichés. Ce rendu complète le tableau de contribution : il hiérarchise visuellement les mots qui portent le plus la différence entre deux entretiens.
Nuages de mots par entretien
LDA
Analyse LDA
L'analyse LDA est particulièrement adaptée aux corpus très volumineux. Un de ses atouts ici est le paramétrage sur les bigrammes.
`P(mot | topic)` décrit les mots caractéristiques d'un topic. `P(topic | segment)` indique à quel topic un segment de texte est le plus rattaché.
Tableau général des probabilités par mot
Tableaux par topic
Détail par topic
Segments de texte par topic
Visualisation pyLDAvis
Heatmap mots × topics
Réseau topics × mots
Nuages de mots par topic
Similitudes
Analyse de similitudes
Réalisez d'abord une CHD. L'analyse de similitudes réutilise ensuite les termes les plus fréquents issus de la CHD.
Résultat
Multimodale
Analyse Multimodale
Préparation d'une chaîne multimodale synchronisant texte, audio et vidéo. Le téléchargement YouTube
repose sur yt-dlp et peut utiliser un fichier cookies.txt ou
.cookies exporté depuis l'extension Cookies.
Téléchargement de la vidéo YouTube
Si la vidéo a besoin d'une session connectée, ajoutez un fichier exporté par l'extension Cookies au
format cookies.txt ou .cookies.
Aucune URL YouTube renseignée.
Aucun fichier cookies sélectionné.
Importer un fichier vidéo
Formats conseillés : mp4, mov, mkv, avi ou
webm.
Aucun fichier vidéo sélectionné.
Dossier de sortie multimodal
Choisissez ici le dossier où seront écrits les exports multimodaux. Chaque traitement créera ensuite
ses sous-dossiers alignement, audio ou mouvements.
Dossier par défaut : multimodale/exports.
Fichiers à préparer
Les images utilisent la cadence choisie ci-dessous : 1 fps ou 25 fps.
L’option segments de texte avec timestamp lance automatiquement la transcription Whisper et exporte un fichier de segments horodatés réutilisable ensuite dans l’onglet Alignement.
Paramètres d'extraction des images
Extraction configurée sur toute la vidéo, en 1 image par seconde, en définition standard (1024 px).
Préparation des sources multimodales
Prêt.
Analyse audio
Si tu es déjà passé par Extraction des sources, l’audio extrait est repris automatiquement. Sinon, tu peux charger un fichier audio ici puis lancer l’analyse.
L’analyse produit des segments horodatés, des temps de pause, un débit de parole et des anomalies d’amplitude. Les résultats s’affichent juste en dessous.
Importer un fichier audio
Formats conseillés : mp3, wav, m4a, flac,
ogg ou opus.
Si l’audio vient déjà de Extraction des sources, laisse ce champ vide.
Aucun fichier audio sélectionné.
Filtrage des amplitudes atypiques
Le filtre travaille sur des observations d'une seconde. Pour chaque seconde, on calcule la moyenne
μ et l'écart-type σ des amplitudes, puis on conserve les valeurs dans
l'intervalle [μ - k·σ ; μ + k·σ]. En augmentant k, le filtre devient moins
sensible ; en le réduisant, il élimine davantage d'observations atypiques.
La piste est standardisée en WAV mono 16 kHz. Le signal complet contient donc
environ 16 000 observations par seconde. Pour garder un rendu exploitable, le
graphe d'anomalies regroupe ensuite le signal par bins d'une seconde et affiche
pour chaque bin le minimum, le maximum, la moyenne et les bornes μ ± k·σ.
Lancement de l'analyse audio
Après le lancement, les graphiques et les tableaux apparaissent juste en dessous.
Prêt.
Résultats audio affichés ci-dessous
1. Silences détectés
Durée des silences détectés directement dans le signal audio, en secondes, pour repérer les pauses acoustiques réelles.
2. Débit de parole
Nombre de mots par seconde pour chaque segment, afin de suivre les accélérations et ralentissements du débit.
3. Anomalies d'amplitude
Signal regroupé par bins d'une seconde, avec les bornes du filtre μ ± k·σ et les observations atypiques.
4. Concordancier synchronisé
Segments de texte recouvrant les fenêtres audio atypiques, pour relier l'anomalie sonore au contenu verbal.
Segments transcrits
Tableau complet des segments horodatés et des indicateurs audio calculés pour chaque segment.
Analyse des images
Ce sous-onglet travaille à partir d’une séquence d’images. Si tu es déjà passé par Extraction des sources, les images extraites peuvent être réutilisées ici automatiquement ; sinon, importe ta séquence manuellement.
L’analyse calcule le mouvement entre images successives et produit plusieurs rendus visuels. Les résultats s’affichent juste en dessous.
Séquence d'images
Importe ici les vignettes à analyser. L'optical flow est calculé entre images successives dans l'ordre de la séquence.
Si les images ont déjà été extraites dans Extraction des sources, tu n’as pas besoin de les recharger ici.
Aucune image sélectionnée.
Mode anatomique
Le pipeline conserve les vues magnitude, HSV, vecteurs et superposition, puis ajoute une couche anatomique sur la zone choisie.
OpenCV est plus léger et robuste pour une ROI simple. MediaPipe apporte des landmarks plus fins pour le visage et le corps, donc une lecture anatomique plus détaillée, mais il est un peu plus exigeant.
Visage principal calcule les métriques sur un seul visage de référence. Multivisage prépare en plus un suivi par face_id et un export dédié par visage quand la zone d'analyse est réglée sur visage.
En mode sélection à la souris, l'application essaie d'utiliser ArcFace pour ré-identifier la personne choisie. Si aucun modèle ArcFace n'est disponible localement, le pipeline retombe sur le suivi local existant et l'indique dans le statut.
Aucune sélection manuelle de visage.
Lancement de l'analyse des mouvements
Après le lancement, la courbe, les galeries d’images et les tableaux apparaissent juste en dessous.
Prêt.
Résultats de l'analyse des images
Cette vue combine deux lectures :
à gauche, l'image avec les vecteurs de déplacement ;
à droite, un histogramme des directions qui montre si le mouvement part dans une direction dominante ou dans de nombreuses directions différentes.
Si l'histogramme est concentré, l'entropie est plus faible ; s'il est dispersé, l'entropie est plus élevée.
Les barres bleues montrent la répartition des directions et la barre orange signale le secteur de direction dominant.
L'image affiche aussi le calcul : entropie observée / entropie maximale, puis le ratio normalisé en pourcentage, ce qui permet de comprendre pourquoi la lecture est classée faible, moyenne ou élevée.
Le cercle des directions est découpé en 12 secteurs de 30° :
1 = 0°-30°, 2 = 30°-60°, ..., 12 = 330°-360°.
Repères utiles : 1 ≈ droite, 4 ≈ bas, 7 ≈ gauche, 10 ≈ haut.
Alignement automatique
Si tu es passé par Extraction des sources, puis par Analyse audio et Analyse des images, l’alignement récupère automatiquement les fichiers déjà produits. Tu n’as rien à recharger dans le cas normal.
Le chargement manuel d’un CSV n’est utile que si tu veux remplacer les segments repris automatiquement.
Aucune source multimodale préparée pour l'alignement.
Raccourcis d'alignement
Ces boutons servent de raccourcis vers les étapes qui alimentent l'alignement : transcription audio et source visuelle.
Indicateurs à superposer
Superposition courante : images, segments de texte.
Alignement images, texte et horodatage
L’alignement prend les résultats déjà calculés et les synchronise par timestamp.
Le fichier final regroupe : texte, images, horodatage, indicateurs de mouvement et présence ou absence d’anomalie audio.
CSV des segments (optionnel)
Fichier à charger seulement si tu veux forcer une entrée manuelle :
segments_texte_global_complet.csv.
Sinon, laisse ce champ vide : le CSV déjà produit par Analyse audio est repris automatiquement.
segments_texte_global_complet.csv = tous les segments de texte transcrits.
segments_texte_anomalies_complet.csv = seulement les segments touchés par une anomalie audio.
Pour l’alignement, il faut utiliser le fichier global.
Aucun CSV de segments sélectionné.
Synchronisation multimodale
Si tu es déjà passé par Extraction des sources, Analyse audio et Analyse des images, ce bouton aligne automatiquement les fichiers déjà produits pour générer segments_texte_sync.csv.
Prêt.
Résultats d'alignement
La vue d'alignement devient une timeline multimodale : une règle de temps en haut, puis des pistes superposées comme dans un logiciel de montage. Tu peux afficher soit l'image brute, soit une vue issue de Analyse mouvements : magnitude, entropie directionnelle, HSV, vecteurs, superposition ou annotée.
Pistes affichées : Images, Texte, Anomalies audio si elles existent, Mouvement moyen et Entropie directionnelle. Le vrai fichier de sortie attendu ici reste le CSV multimodal synchronisé. Si ce fichier final n'a pas encore été généré, l'interface construit une timeline immédiate à partir du CSV brut des segments et des images déjà analysées.
Les indicateurs continus sont affichés en courbes avec les points réels.
Comparaison de deux vidéos
Ce sous-onglet lance un pipeline complet pour deux séries distinctes : extraction, audio, mouvements, alignement, puis une comparaison A/B sur les séries synchronisées. La comparaison est faite sur des séries temporelles alignées, pas sur les fichiers bruts.
Tu peux renseigner soit deux URLs YouTube différentes, soit deux vidéos locales.
Si une vidéo locale est sélectionnée pour une série, elle est prioritaire sur l’URL.
Le fichier cookies défini dans Extraction des sources est réutilisé si nécessaire.
Vidéo A
Aucune sélection manuelle pour A.
Laisser vide pour comparer toute la vidéo A.
Aucune source A sélectionnée.
Vidéo B
Aucune sélection manuelle pour B.
Laisser vide pour comparer toute la vidéo B.
Aucune source B sélectionnée.
Pipeline A/B
Pour chaque série, le pipeline produit :
extraction, audio, mouvements, alignement.
Ensuite le module comparaison_ab.py écrit :
comparaison_ab_summary.json,
comparaison_ab_timeline.csv,
comparaison_ab_indicateurs.csv.
Dossier A/B par défaut : multimodale/exports/comparaison_ab.
Résultats de comparaison
Carte réseau multimodale
Ce sous-onglet part de l’alignement et de l’entropie directionnelle pour construire une carte de nœuds.
Le calcul regroupe les images voisines à forte entropie en événements visuels, puis les relie aux segments de texte synchronisés. Les liens distinguent : coïncidence temporelle, proximité visuelle, proximité lexicale.
Clique sur un nœud pour voir son image, son extrait texte et son horodatage.
Prêt.
Résultats du graphe
Aucun graphe de nœuds n'est disponible pour le moment.
Aide
Documentation
help/help.md...
help/pos_lexique.md...
help/lda.md...
help/jsd.md...
help/suivi.md...
help/multimodale.md...