SAMOVAR UMR 5157

  • Accueil
  • Accueil
  • Accueil
  • Accueil

CNRS

Rechercher




Accueil > Équipes > ACMES > Bilan scientifique 2008-2013 > Axes de recherche

Intelligence collective et sociale

  • Membres : Sadok Ben Yahia (HDR, depuis le 1/1/2012), Amel Bouzeghoub (HDR), Bruno Defude (HDR), Alda Gancarski, Daqing Zhang ;
  • Doctorants : 12 dont 3 soutenues
  • Post-doctorants : Pablo Samuel Castro Rivadeneira (2011-12), Bin Guo (2009-11), Vaskar Raychoudhury (2011), Zhiyong Yu (2012-13), Daqiang Zhang (2011-12)

La construction d’applications personnalisées ou adaptées aux utilisateurs est devenue incontournable ces dernières
années. Cela passe par la prise en compte de ce que l’on appelle généralement le contexte. L’essor des réseaux
sociaux et la multiplication des sources d’acquisition d’informations (capteurs de tout type) ont élargi le contexte
et permettent d’acquérir de l’information sur l’utilisateur beaucoup plus riche et plus dynamique. Les travaux que
nous menons dans cet axe se situent dans la modélisation, l’apprentissage et le raisonnement en vue de faire de
la prédiction basée sur ce contexte élargi au monde physique (capteurs) et aux interactions sociales, ce que nous
nommons l’intelligence collective et sociale (ICS). C’est un domaine de recherche à l’intersection de plusieurs disciplines
(réseau de capteurs, informatique mobile et ubiquitaire, apprentissage automatique, fouille de données et
sciences sociales) visant à révéler les modèles d’individus, de groupe et des comportements sociaux. Cela permet
de construire des services complètement novateurs dans des domaines comme la santé, le transport, la sécurité, la
gestion des ressources de la ville ou l’environnement.

L’architecture générale d’un tel système s’articule autour de 4 couches : La couche physique (application internet
et web social, dispositifs mobiles, capteurs physiques ou logiques, réseau ambiant, Internet des objets,...), la couche
données (passage du monde physique à des données brutes, avec des opérations éventuelles d’échantillonnage, de
lissage, de fusion,...), la couche sémantique (transforme les données brutes en connaissances exploitables par les
applications) et la couche application (inclut notamment des fonctions assistance aux utilisateurs construites à
partir des résultats de la couche sémantique). Cette décomposition est complétée par une dimension transversale
qui est la distribution. Nos travaux couvrent essentiellement les couches sémantique et application. Les points clés
de ces propositions portent sur la nature des données modélisées et analysées (données spatiales, temporelles, avec
dépendances causales, sociales), l’hétérogénéité (diversité des sources, fusion,...), l’échelle et le caractère centralisé
ou distribué de tout ou partie du processus de transformation des données (couche sémantique) ou des fonctions
d’assistance (couche application).

Reconnaissance d’activités humaines

Une première catégorie de nos travaux porte sur la reconnaissance d’activités humaines à partir d’informations
élémentaires (données d’accéléromètres par exemple). Cela concerne d’une part la reconnaissance
d’activités simples telles que marcher, courir, monter ou descendre des marches d’escalier, être à l’arrêt, à vélo, en
voiture, etc. Nous avons pour cela utilisé un algorithme de classification pour exploiter les données issues d’une
source de données unique, des téléphones portables dotés d’un accéléromètre que les utilisateurs gardent dans leur
poche. Ces travaux concernent d’autre part l’extraction de patrons d’association intra et inter activités. Nous avons
utilisé des règles d’association pour extraire des motifs fréquents à partir de traces spatio-temporelles d’activités
quotidiennes de personnes âgées. Ces patrons d’associations sont ensuite utilisés pour générer un modèle d’activité
humaine [158, 35]. Ces travaux ont été supportés par les projets du pôle Systematic et FEDER AQUEDUC (Améliorer
la Qualité DU service à la personne et au Citadin) et le projet européen FP7 Societies (Self-orchestrating
Community ambient Intelligence Spaces).

Une variante de ce problème est l’identification de situations. L’un des défis pour un grand nombre d’applications
est d’identifier en temps réel la situation de l’utilisateur pour des actions d’adaptation ou d’assistance
et des notifications de recommandation. Nos travaux ont dans un premier temps consisté à proposer un modèle
formel basé sur les ontologies pour représenter le contexte et les situations. Nous utilisons des règles logiques et un
mécanisme de raisonnement à partir de cas pour la reconnaissance de situations [231]. Cette modélisation formelle
offre une spécification commune partagée des données de contexte facilitant l’interopérabilité, la réutilisabilité et
la portabilité des modèles entre différents systèmes et domaines d’application. Elle permet en outre de vérifier l’intégrité
et la cohérence des situations et fournit un haut niveau d’abstraction et un formalisme pour la spécification
des situations. Cependant, elle requièrt l’intervention humaine pour la spécification des situations et des règles
d’inférence. Pour réduire cette limite, nous avons proposé des modèles hybrides soit en combinant cette approche
avec une approche de fouille de données (règles d’association) pour de la recherche d’information contextuelle basée
sur la prédiction des intérêts des utilisateurs et leurs relations sociales [51], soit en la combinant avec une approche
orientée processus qui apporte un gain notamment en terme de temps de réponse car les processeurs de contexte
COSMOS fournissent la donnée de contexte la plus récente sans avoir besoin d’interroger les sources de données
[186].

Systèmes de recommandation sensibles au contexte

Nous avons également travaillé sur les systèmes de recommandation sensibles au contexte. Ces systèmes
doivent recommander aux utilisateurs des actions en tenant compte d’une part du contexte spatio-temporel et d’autre part du modèle de l’utilisateur (incluant les situations dans lesquelles il se trouve). Pour cela, deux problèmes
doivent être abordés, l’acquisition automatique d’un profil riche d’un utilisateur et d’autre part la définition
d’algorithmes de recommandation adaptés. L’identification de situation est ici réalisée directement à partir de données
brutes issues des capteurs, en utilisant des techniques d’apprentissage permettant de découvrir directement
des associations entre les données. Pour définir notre système de recommandation, nous avons choisi une méthode
d’apprentissage par renforcement qui permet de gérer au mieux le compromis à trouver entre exploration et exploitation.
On doit exploiter ce que l’on connaît déjà pour obtenir une récompense, mais on doit aussi explorer
pour faire de meilleures actions dans le futur. Le dilemme est que ni l’exploration ni l’exploitation ne peuvent
être poursuivies exclusivement sans faillir à la tâche. Nous proposons de modéliser un système de recommandation
sensible au contexte comme un problème de bandit où le système doit choisir entre maximiser ses récompenses
en tenant compte de la connaissance courante (exploitation) et en apprendre plus sur les préférences non connues
de l’utilisateur (exploration). Nous introduisons de plus la notion de niveau de risque associé à chaque situation
courante de l’utilisateur. Il peut en effet être dangereux ou inapproprié de recommander des items non désirés dans
certaines situations dont le niveau de risque est élevé. Ce travail a été réalisé dans le cadre de la thèse CIFRE avec
Nomalys (http://www.nomalys.com/). Nous avons mené des expérimentations en-ligne (avec de vrais utilisateurs
de Nomalys) et hors-ligne et avons utilisé des données spatio-temporelles et sociales. Ces évaluations ont montré
la pertinence de nos choix pour augmenter de façon significative les performances du système de recommandation
[107, 109].

Fusion de données multi-sources

Une autre catégorie de travaux fusionne des données de différentes natures (spatio-temporelles, sociales) en utilisant
des techniques de clustering et de classification. Il s’agit de l’extraction et l’analyse des traces GPS de taxis
à grande échelle, des fichiers logs de téléphones portables et des données sociales émanant du réseau social Twitter
et du réseau spatio-temporel Foursquare. Avec les traces GPS de 7800 taxis sur plus d’une année à Hangzhou, en
Chine, nous pouvons comprendre où et quand les passagers montent ou descendent d’un taxi, quelle route un taxi
prend pour une course donnée, quelle est la vitesse et la direction dans chaque réseau routier, etc.. Avec ce grand
volume de données GPS, nous avons étudié des questions de recherche comme la compréhension de stratégies de
service de taxi efficaces et inefficaces (pour guider des chauffeurs de taxi pour augmenter leur chiffre d’affaires ou
pour consommer moins de carburant), la détection des trajectoires de conduite anormales (pour éviter de faire des
détours), la prévision des conditions de trafic de chaque réseau routier en temps réel, la planification des bus de nuit
afin de fournir des chemins plus économiques et écologiques. Ces travaux ont été publiés dans [180, 111, 112, 23, 78].

Confiance dans les réseaux sociaux

Nous avons également mené des travaux sur les données issues des réseaux sociaux et notamment sur la notion
de confiance. L’idée de base est de pouvoir inférer une relation de confiance permettant d’attribuer une note de
confiance à des pairs qui ne figurent pas dans la liste directe d’amis. Nos principales contributions ont porté sur
l’inférence des relations de confiance directes et indirectes dans les réseaux sociaux. Les valeurs de confiance directe
sont calculées à partir des interactions directes entre utilisateurs, leurs types de relations et la similarité de leurs
intérêts. Les valeurs de confiance indirectes sont inférées en propageant les valeurs directes du noeud source vers le
noeud cible. Les expérimentations ont été menées sur les données du réseau social Advogato avec 14000 utilisateurs
et 55000 relations. Les résultats ont montré l’efficacité des algorithmes proposés en termes de précision et rappel
et que notre approche passait à l’échelle [117, 80].


Acquisition et exploitation distribuées

Les travaux précédemment cités supposent tous que (i) on dispose de toutes les données brutes dans une base
unique et centralisée et (ii) que l’interprétation de ces données se fait également de manière centralisée. Dans de
nombreux contextes, cette hypothèse de centralisation est irréaliste puisque les données brutes vont être produites
de manière distribuée. La centralisation est alors impossible soit pour des raisons de coût (cela nécessiterait trop de
communications pour échanger les données), soit pour respecter l’autonomie des sources, soit pour des raisons de
respect de la vie privée. Nous avons donc mené des travaux s’intéressant d’une part à la construction décentralisée
des modèles utilisateurs et d’autre part à l’exploitation décentralisée de ces modèles.

Nos premiers travaux ont porté sur la gestion d’événements dans les réseaux inter-véhiculaires. Le
but ici est d’aider les conducteurs dans leurs choix en utilisant une information de nature statistique sur des
observations d’événements de nature spatio-temporelle (libération d’une place de parking, accidents, passage d’un véhicule d’urgence,...), sachant que nous supposons que l’observation de ces événements est faite au niveau des
véhicules sans recours à une infrastructure centralisée. Pour cela, nous avons proposé (i) une structure de données
compacte permettant à chaque véhicule de stocker des fréquences d’occurrences d’un événement dans une zone
spatio-temporelle donnée ; (ii) un mécanisme d’échange entre véhicules basé sur des communications opportunistes
ainsi qu’un processus de fusion des structures de données échangées en détectant les doublons ; (iii) des algorithmes
d’aide à la décision basés sur ces fréquences. Ces propositions ont été validées par simulations effectuées sur un
simulateur développé en collaboration avec le LAMIH [42, 144].

Nous nous sommes également intéressés aux systèmes de recherche d’informations en pair-à-pair non
structuré (de type Gnutella), en cherchant à améliorer d’une part le routage des requêtes (choisir les meilleurs pairs
pour une requête donnée) et d’autre part l’interclassement des résultats fournis par les différents pairs contributeurs.
De nombreuses méthodes proposent d’utiliser l’historique des requêtes pour améliorer l’efficacité (rappel/précision)
et la performance de recherche (diminuer le nombre de messages échangés) des méthodes classiques de routage.
Cependant, elles souffrent de trois principaux inconvénients, à savoir : la représentation du profil utilisateur ; le
problème du démarrage à froid ; le problème d’échec de sélection. En réponse à ces problèmes, nous avons proposé
(i) un modèle de routage sémantique basé sur l’historique des requêtes. Le profil de l’utilisateur est représenté par
un ensemble d’intérêts et est construit automatiquement en utilisant l’analyse formelle de concept (FCA). Chaque
intérêt représente des relations sémantiques entre les requêtes passées, leurs termes et les pairs positifs. Ensuite,
ce modèle est utilisé pour définir notre propre méthode de routage par apprentissage. Pour palier le problème de
démarrage à froid, (ii) nous proposons une méthode prédictive de l’intention de l’utilisateur qui construit une base
de connaissances initiale pour chaque pair. Cette base de connaissances initiale est construite au démarrage du
système. Enfin, (iii) nous proposons une méthode de routage hybride pour traiter le problème d’échec de sélection
[61, 52]. L’interclassement de résultats est le processus symétrique du routage qui consiste à fusionner n listes de
résultats (retournés par les n pairs répondant à une requête donnée) en une liste unique. Si l’on suppose que les
systèmes de recherche d’informations sous jacents sont hétérogènes (tant en collection, qu’en modèle de recherche
d’information), le problème est complexe. Nous avons proposé une solution basée sur l’exploitation de profils
utilisateurs construits sur le même principe que dans le cas du routage. Le but est d’estimer l’importance d’un pair
relativement à une requête et l’importance d’une requête relativement à un pair. Un mécanisme de rafraichissement
des profils a été également proposé permettant de recalculer de manière incrémentale et distribuée les seuls profils
nécessaires. Ces propositions ont été validées par simulation dans des contextes réalistes.