Fiabilité inter-évaluateur pour les événements d'une série chronologique avec incertitude sur le temps de l'événement

13

J'ai plusieurs codeurs indépendants qui essaient d'identifier les événements dans une série chronologique - dans ce cas, je regarde une vidéo de conversation en face à face et je recherche des comportements non verbaux particuliers (par exemple, des hochements de tête) et le codage de l'heure et de la catégorie de chacun un événement. Ces données pourraient raisonnablement être traitées comme une série temporelle discrète avec un taux d'échantillonnage élevé (30 images / seconde) ou comme une série temporelle continue, selon ce qui est plus facile à utiliser.

J'aimerais calculer une certaine mesure de la fiabilité inter-évaluateurs, mais je m'attends à ce qu'il y ait une certaine incertitude quant au moment où les événements se sont produits; c'est-à-dire que je m'attends à ce qu'un codeur puisse, par exemple, coder qu'un mouvement particulier a commencé un quart de seconde plus tard que d'autres codeurs ne le pensaient. Ce sont des événements rares, si cela aide; généralement au moins plusieurs secondes (des centaines d'images vidéo) entre les événements.

Existe-t-il un bon moyen d'évaluer la fiabilité inter-évaluateurs qui examine ces deux types d'accord et de désaccord: (1) les évaluateurs conviennent-ils de l' événement qui s'est produit (le cas échéant), et (2) conviennent-ils du moment où il s'est produit? Le second est important pour moi parce que je suis intéressé à regarder le moment de ces événements par rapport à d'autres choses qui se passent dans la conversation, comme ce que les gens disent.

La pratique standard dans mon domaine semble être de diviser les choses en tranches de temps, disons 1/4 de seconde environ, d'agréger les événements signalés par chaque codeur par tranche de temps, puis de calculer le kappa de Cohen ou une mesure similaire. Mais le choix de la durée de tranche est ad-hoc, et je n'ai pas une bonne idée de l'incertitude dans le temps des événements.

La meilleure pensée que j'ai jusqu'à présent est que je pourrais calculer une sorte de courbe de fiabilité; quelque chose comme kappa en fonction de la taille de la fenêtre dans laquelle je considère deux événements comme étant codés en même temps. Je ne sais pas vraiment où aller à partir de là, cependant ...

chl
la source
Cela ressemble à une situation où des méthodes d'analyse de données fonctionnelles peuvent être appliquées. Les avez-vous considérés?
mpiktas
J'avais pensé à l'analyse des données fonctionnelles, mais ce n'est pas un domaine que je connais très bien. Je travaille à travers le livre de Ramsay et Silverman maintenant. Mais je ne vois pas immédiatement comment gérer une variable de résultat multinomiale ...?
Existe-t-il un étalon-or disponible pour ces mesures (c.-à-d., Savez-vous quand les événements d'intérêt se produisent)? Combien de codeurs sont inclus dans cette étude? À combien d'événements distincts pouvons-nous nous attendre?
chl

Réponses:

2

Voici quelques façons de penser.

1

A) Vous pouvez traiter chaque séquence complète de codages comme un ensemble ordonné d'événements (c'est-à-dire ["hochement de tête", "hochement de tête", "hochement de tête", "lever les sourcils"]) et ["hochement de tête", "hochement de tête" , "sourcil levé"]), puis alignez les séquences à l'aide d'un algorithme qui vous semble logique ( http://en.wikipedia.org/wiki/Sequence_alignment ). Vous pouvez ensuite calculer la fiabilité inter codeur pour la séquence entière.

B) Ensuite, en utilisant à nouveau les séquences alignées, vous pouvez comparer quand ils ont dit qu'un événement s'est produit, étant donné qu'ils ont tous les deux observé l'événement.

2) Alternativement, vous pouvez modéliser cela comme un modèle de Markov caché et utiliser quelque chose comme l'algorithme de Baumn-Welch pour imputer les probabilités que, compte tenu d'un événement réel, chaque codeur ait réellement codé les données correctement. http://en.wikipedia.org/wiki/Baum-Welch_algorithm

fgregg
la source
Cette technique semble être similaire à ce que Grafsgaard 2012 a fait pour une tâche de sondage similaire.
KevinL
0

Plutôt que de découper les données en morceaux arbitraires, vous pouvez considérer les différences de temps réelles. Le codeur 1 rapporte le temps et l'action:

049 D
113 C
513 C
724 G

Un moyen simple de voir quel codeur est le plus fiable selon les autres codeurs est de lui donner un score comme ceci:

Add a point for each other coder that reported a D between (049-025) and (049+025)
Add a point for each other coder that reported a C between (113-025) and (113+025)
Add a point for each other coder that reported a C between (513-025) and (513+025)
Add a point for each other coder that reported a C between (724-025) and (724+025)
Subtract a point for each reported action.

Si la proximité est importante pour vous, envisagez des alternatives comme celles-ci:

Add 25/(Time_Thiscoder-Time_Othercoder)^2 points for each other coder that reported a matching observation.

Avec toutes les informations sur les problèmes disponibles, il ne devrait pas être difficile de mettre en œuvre cette idée de manière pratique.

Dennis Jaheruddin
la source
1
D'où viennent les "25"? Avez-vous des références ou pouvez-vous expliquer la théorie qui justifie cette proposition?
whuber