DISPOSITIF ET PROCEDE DE DIFFÉRENCIATION DES CARACTERISTIQUES PAR RECONNAISSANCE DE MODELES DOMAINE TECHNIQUE DE L'INVENTION [001] La présente invention concerne la fourniture de contenu en ligne et plus précisément, la différenciation d'un ensemble de caractéristiques utilisateur, à partir d'un flux d'événements de communication en ligne pour attribuer des ensembles d'événements présents dans ces flux à un ensemble de caractéristiques utilisateur particulier afin de permettre la fourniture d'un contenu ciblé. ETAT DE LA TECHNIQUE ANTERIEURE [002] Du fait de l'utilisation croissante de moyens de transmission d'informations, comme par exemple l'Internet et la télévision (TV) numérique, il est souhaitable de pouvoir fournir un contenu à un utilisateur du moyen de communication d'informations qui soit particulièrement pertinent (c'est-à-dire ciblé) vis-à-vis de l'utilisateur. Dans un foyer typique, de multiples utilisateurs (personnes) peuvent utiliser et/ou partager de multiples plates-formes (par exemple, des ordinateurs personnels, des navigateurs différents, des lecteurs multimédia et des boîtiers décodeurs), qui partagent une même connexion (par exemple une ligne d'abonné numérique (DSL), ou un modem-câble) à un moyen de communication d'informations (tel qu'un réseau fournisseur de services Internet (FSI)). Comme la plupart des utilisateurs ne souhaitent pas être envahis par des éléments (par exemple, des agents) collectant et transmettant des données sur leurs plates-formes informatiques, une différenciation des utilisateurs d'un même foyer doit être effectuée par observation du flux de données (du trafic de données) global au sein du moyen de communication d'informations (par exemple sur le réseau FSI ou un réseau de télévision numérique). [003] Une démarche typique destinée à attribuer (associer) des parties du trafic de données à chacun d'une pluralité d'utilisateurs à des fins de renvoi de contenu ciblé (comme par exemple de la publicité) sur Internet consistait à utiliser des fichiers témoins du Protocole de Transfert Hypertexte (HTTP) (également appelés cookies Web). Les cookies sont des blocs de texte envoyés par un serveur à un client Web (typiquement, un navigateur) puis renvoyés tels quels par le client chaque fois qu'il accède à ce serveur. [4] L'utilisation de cookies pour associer un trafic de données à des utilisateurs individuels présente un grand nombre d'inconvénients, parmi lesquels : le fait que de multiples utilisateurs peuvent partager le même ordinateur, la même session de connexion ou le même navigateur et vont donc également partager les cookies ; le fait qu'un même utilisateur peut utiliser de multiples combinaisons d'ordinateurs, de sessions de connexion et de navigateurs, chacune avec un jeu de cookies unique et sans aucune association entre les jeux de cookies ; le fait qu'un utilisateur peut supprimer des cookies à tout instant, cela conduisant à l'affectation d'un nouveau cookie provenant d'un serveur donné sans aucune association à un cookie quelconque précédemment supprimé et provenant de ce serveur ; et le fait que, dans certains cas, des cookies qui ne sont associés qu'à des sites Web particuliers ont été utilisés, cela conduisant à des associations ne représentant qu'un sous-ensemble du réseau (par exemple de l'Internet). [5] Il existe donc un réel besoin d'une identification améliorée d'un ensemble de caractéristiques utilisateur partageant un même point d'accès. TECHNICAL FIELD OF THE INVENTION [001] The present invention relates to the provision of on-line content and more specifically, the differentiation of a set of user characteristics from a stream. online communication events to assign sets of events present in these streams to a particular set of user characteristics to enable delivery of targeted content. STATE OF THE PRIOR ART [002] Due to the increasing use of information transmission means, such as for example the Internet and digital television (TV), it is desirable to be able to supply content to a user of the medium. information communication that is particularly relevant (ie, targeted) to the user. In a typical home, multiple users (people) can use and / or share multiple platforms (for example, personal computers, different browsers, media players, and set-top boxes) that share the same connection (for example). a digital subscriber line (DSL), or a cable modem) to an information communication means (such as an Internet service provider (ISP) network). Since most users do not wish to be invaded by elements (for example, agents) collecting and transmitting data on their computing platforms, differentiation of users from the same household must be done by observing the data flow. (of the data traffic) overall within the means of communication of information (for example on the FSI network or a digital television network). [003] A typical approach for allocating (associating) portions of the data traffic to each of a plurality of users for purposes of returning targeted content (such as advertising) over the Internet was to use files. Hypertext Transfer Protocol (HTTP) cookies (also known as Web cookies). Cookies are blocks of text sent by a server to a Web client (typically a browser) and returned as is by the client each time it accesses that server. [4] The use of cookies to associate data traffic with individual users has a number of disadvantages, including: the fact that multiple users may share the same computer, the same login session, or the same browser and will therefore also share cookies; the fact that the same user can use multiple combinations of computers, login sessions and browsers, each with a unique set of cookies and no association between cookie sets; the fact that a user can delete cookies at any time, leading to the assignment of a new cookie from a given server without any association to any previously deleted cookie from that server; and the fact that, in some cases, cookies that are associated only with particular websites have been used, leading to associations representing only a subset of the network (eg the Internet). [5] There is therefore a real need for improved identification of a set of user characteristics sharing the same access point.
EXPOSE DE L'INVENTION [6] Conformément à un aspect de la présente invention, celle-ci concerne un procédé de différenciation d'ensemble de caractéristiques utilisateur de communications en ligne émanant d'un point d'accès d'abonné relié à un réseau. Le procédé consiste à : recevoir des événements générés par l'utilisateur en provenance de l'un d'une pluralité de dispositifs informatiques reliés au point d'accès, chaque événement étant associé à un identifiant (ID) d'abonné et à un identifiant (ID) de session, les événements étant générés par une session de communication entre l'un de la pluralité de dispositifs informatiques et un point terminal de communication par l'intermédiaire du réseau ; générer une empreinte de -2- session en utilisant une pluralité d'événements reçus correspondant à l'ID d'abonné et à l'ID de session associés, l'empreinte de session comprenant un vecteur de caractéristiques basé sur les données contenues dans les événements reçus, et stocker un enregistrement d'ensemble de caractéristiques utilisateur comprenant l'empreinte générée, un identifiant (ID) d'ensemble de caractéristiques utilisateur associé et l'ID d'abonné. [7] Conformément à un aspect de la présente invention, celle-ci concerne également un appareil d'identification d'ensemble de caractéristiques utilisateur destiné à la différenciation d'ensembles de caractéristiques utilisateur de communications en ligne émanant d'un point d'accès d'abonné relié à un réseau. Le module comprend : un processeur ; une mémoire fournissant des instructions destinées à être exécutée par le processeur, les instructions permettant de recevoir des événements générés par l'utilisateur en provenance de l'un d'une pluralité de dispositifs informatiques reliés au point d'accès, chaque événement étant associé à un identifiant (ID) d'abonné et à un identifiant (ID) de session, les événements étant générés par une session de communication entre l'un de la pluralité de dispositifs informatiques et un point terminal de communication par l'intermédiaire du réseau ; générer une empreinte de session en utilisant une pluralité d'événements reçus pour l'ID d'abonné et l'ID de session associés, l'empreinte de session comprenant un vecteur de caractéristiques basé sur des données contenues dans les événements reçus ; et stocker un enregistrement d'ensemble de caractéristiques utilisateur comprenant l'empreinte générée, un identifiant (ID) d'ensemble de caractéristiques utilisateur associé et l'ID d'abonné. [8] D'autres aspects et caractéristiques de l'invention apparaîtront plus clairement aux personnes normalement compétentes dans le domaine ou la science s'y rapportant à la lecture de la description qui suit de modes de réalisation particuliers de l'invention en association avec les dessins annexés. DESCRIPTION DES FIGURES [9] D'autres caractéristiques et avantages de l'invention ressortiront plus 30 clairement à la lecture de la description détaillée qui suit en référence aux dessins annexés, dans lesquels : [0010] la figure 1 représente schématiquement une différenciation d'un ensemble de caractéristiques utilisateur par reconnaissance de modèles ; [0011] la figure 2 représente schématiquement un système fournissant une différenciation d'un ensemble de caractéristiques utilisateur pour la sélection de profils ; [0012] la figure 3 représente schématiquement un appareil destiné à la différenciation d'un ensemble de caractéristiques utilisateur par reconnaissance de modèles ; [0013] la figure 4 est un organigramme représentant un procédé destiné à 10 générer une empreinte d'ensemble de caractéristiques utilisateur; et [0014] la figure 5 est un organigramme représentant un procédé de différenciation d'ensemble de caractéristiques utilisateur par reconnaissance de modèles. [0015] Il est à noter que des éléments analogues sont identifiés dans toutes 15 les figures par des références numériques identiques. DESCRIPTION DÉTAILLÉE DE L'INVENTION, [0016] Des modes de réalisation de l'invention sont décrits ci-après à titre non limitatif d'exemple en référence aux figures 1 à 5. [0017] L'invention concerne un procédé, un appareil et un système destinés à 20 la différenciation d'ensemble de caractéristiques utilisateur (ou caractère) par reconnaissance de modèles. On observe une séquence d'événements qui ont été générés par une session ou une connexion donnée et on détermine si la séquence d'événements est susceptible de provenir d'un ensemble de caractéristiques utilisateur existant ou connu, ou si les événements proviennent d'un ensemble de 25 caractéristiques utilisateur précédemment inconnu. Un identifiant (ID) d'ensemble de caractéristiques utilisateur est utilisé pour marquer l'événement (c'est-à-dire pour y être associé) en vue d'un traitement ultérieur par un autre système pouvant par exemple fournir un contenu différent en fonction de l'ensemble de caractéristiques utilisateur identifié et d'un profil de préférences associé. L'identification d'un -4- ensemble de caractéristiques utilisateur (ou d'une personnalité) associé à un flux de données aide à identifier des utilisateurs individuels potentiels associés à des sessions de navigation ou d'interaction uniques émanant d'un abonné tel qu'un foyer. La possibilité d'identifier des ensembles de caractéristiques utilisateur ou des personnalités uniques permet de sélectionner et de fournir à l'utilisateur un contenu approprié en sélectionnant un profil de préférences de contenu approprié. Chaque utilisateur peut être associé à un ou plusieurs identifiants d'ensembles de caractéristiques utilisateur sur la base de ses préférences de navigation ou de contenu qui peuvent varier en fonction d'un nombre quelconque de facteurs tels que le type de dispositif utilisé pour l'interaction, l'heure, le type de contenu consulté, ou la source de contenu (point terminal de connexion). De plus, un ensemble de caractéristiques utilisateur unique peut être associé à plusieurs utilisateurs si leurs profils de navigation sont semblables. [0018] La figure 1 représente la différenciation d'un ensemble de caractéristiques utilisateur par reconnaissance de modèles dans un environnement d'utilisation typique. La différenciation d'un caractère ou d'une personnalité peut être définie dans le contexte d'un réseau de communication de données à haut débit (tel que l'Internet). En variante, elle peut être utilisée dans d'autres contextes, par exemple dans celui d'un réseau de distribution de télévision numérique ou d'autres moyens de communication d'informations semblables proposés par un fournisseur de services de réseau 150. [0019] Le fournisseur de services peut être un fournisseur quelconque tel qu'un fournisseur de services internet (FSI) ou un opérateur de télécommunications, tel qu'un opérateur de télécommunications sans fil, fournissant un réseau 150 permettant à des abonnés d'utiliser un dispositif informatique pour accéder à des services à base de réseau. Les utilisateurs d'un foyer qui sont abonnés au fournisseur de services sont connectés au réseau fournisseur de services 150 par un point d'accès 132 constitué par un modem, par exemple un modem de ligne d'abonné numérique (DSL), un modem à la norme DOCSIS (spécification d'interface de service de données sur câble), ou un modem sans fil. Les utilisateurs accèdent au réseau à l'aide de dispositifs informatiques reliés en réseau tels qu'un système de télévision sur protocole Internet (IPTV) ou des boîtiers décodeurs 130a, des dispositifs mobiles tels que des ordinateurs portables, des ordinateurs bloc-notes (notebooks), des mini portatifs (netbooks) 130b, ou des dispositifs informatiques de bureau 130c, pour accéder à des contenus fournis par des points terminaux de connexion tels que des services Web ou des serveurs de contenu reliés au réseau. SUMMARY OF THE INVENTION [6] In accordance with one aspect of the present invention, the present invention relates to a method for differentiating the set of online communications user characteristics from a subscriber access point connected to a network. . The method includes: receiving user-generated events from one of a plurality of computing devices connected to the access point, each event being associated with a subscriber identifier (ID) and an identifier Session ID (s), the events being generated by a communication session between one of the plurality of computing devices and a communication endpoint via the network; generating a session impression using a plurality of received events corresponding to the associated subscriber ID and session ID, the session footprint including a feature vector based on the data contained in the received events, and storing a user feature set record including the generated fingerprint, an associated user feature set identifier (ID), and the subscriber ID. [7] In accordance with an aspect of the present invention, the present invention also relates to a user feature set identification apparatus for differentiating sets of on-line communications user characteristics from an access point. subscriber connected to a network. The module comprises: a processor; a memory providing instructions to be executed by the processor, the instructions for receiving user-generated events from one of a plurality of computing devices connected to the access point, each event being associated with a subscriber identifier (ID) and a session identifier (ID), the events being generated by a communication session between one of the plurality of computing devices and a communication endpoint via the network; generating a session fingerprint using a plurality of received events for the associated subscriber ID and session ID, the session fingerprint comprising a feature vector based on data contained in the received events; and storing a user feature set record including the generated fingerprint, an associated user feature set identifier (ID), and the subscriber ID. [8] Other aspects and features of the invention will become more apparent to those of ordinary skill in the relevant field or science upon reading the following description of particular embodiments of the invention in association with the attached drawings. DESCRIPTION OF THE FIGURES [9] Other features and advantages of the invention will become more apparent from the following detailed description with reference to the accompanying drawings, in which: [0010] FIG. 1 schematically represents a differentiation of FIG. a set of user characteristics by pattern recognition; [0011] FIG. 2 diagrammatically represents a system providing a differentiation of a set of user characteristics for the selection of profiles; [0012] FIG. 3 diagrammatically represents an apparatus intended for the differentiation of a set of user characteristics by pattern recognition; FIG. 4 is a flowchart showing a method for generating a user characteristics set fingerprint; and [0014] Fig. 5 is a flowchart showing a method of differentiating user characteristics set by pattern recognition. It should be noted that similar elements are identified in all the figures by identical reference numerals. DETAILED DESCRIPTION OF THE INVENTION [0016] Embodiments of the invention are described below by way of non-limiting example with reference to FIGS. 1 to 5. The invention relates to a method, an apparatus and a system for differentiating user characteristics set (or character) by pattern recognition. A sequence of events that has been generated by a given session or connection is observed and it is determined whether the sequence of events is likely to come from an existing or known set of user characteristics, or whether the events originate from an set of 25 previously unknown user characteristics. A user characteristics set identifier (ID) is used to mark the event (i.e., to be associated with it) for later processing by another system which may for example provide different content in a different way. depending on the identified set of user characteristics and an associated preference profile. Identifying a set of user characteristics (or personality) associated with a data flow helps to identify potential individual users associated with unique browsing or interaction sessions from a subscriber such as than a home. The ability to identify sets of user characteristics or unique personalities selects and provides the user with appropriate content by selecting an appropriate content preference profile. Each user may be associated with one or more user feature set identifiers based on his or her navigation or content preferences that may vary depending on any number of factors such as the type of device used for the interaction. , the time, the type of content accessed, or the content source (terminal connection point). In addition, a single set of user characteristics can be associated with multiple users if their navigation profiles are similar. Figure 1 shows the differentiation of a set of user characteristics by pattern recognition in a typical environment of use. The differentiation of a character or personality can be defined in the context of a high-speed data communication network (such as the Internet). Alternatively, it may be used in other contexts, such as in a digital television distribution network or other similar information communication means provided by a network service provider 150. [0019] The service provider may be any provider such as an Internet Service Provider (ISP) or a telecommunications operator, such as a wireless carrier, providing a network 150 enabling subscribers to use a computing device. to access network-based services. Home users who are subscribed to the service provider are connected to the service provider network 150 through an access point 132 constituted by a modem, for example a DSL modem, a home modem, or a home modem. DOCSIS (Cable Data Service Interface Specification), or a wireless modem. Users access the network using networked computing devices such as an Internet Protocol Television (IPTV) system or set-top boxes 130a, mobile devices such as laptops, notebooks (notebooks ), netbooks 130b, or desktop computing devices 130c, for accessing content provided by connection endpoints such as web services or content servers connected to the network.
Le réseau fournisseur de services 150 permet un accès direct à des services Web fournis à partir du réseau, tels que des sites Web 152 ou d'autres sources de contenu 154, ou à des services reliés à l'Internet 160 (ou à d'autres réseaux de communication publics), tels qu'un site Web 162 ou que des sources de contenu 164. Un filtre de trafic et d'événements 110 reçoit des données d'application de réseau telles qu'un trafic d'abonné 134 transitant par le réseau 150 en provenance d'abonnés 130a-130c par l'intermédiaire du point d'accès 132 et génère des événements Web en fonction du trafic reçu. Le trafic peut être destiné aux serveurs Web 152 ou aux serveurs de contenu 154 reliés, ou en faisant partie du réseau fournisseur de services 150 ou à un réseau externe 160 tel qu'un serveur Web 162 et des serveurs de contenu 164 qui peuvent être connectés par l'intermédiaire d'un réseau tel que l'Internet. [0020] Les événements sont traités et affectés à une session émanant du point d'accès 132, en provenance d'un foyer ou d'un lieu défini. Les événements filtrés sont ensuite fournis à une unité 115 d'identification d'ensemble de caractéristiques utilisateur avec un identifiant de session. L'unité 115 d'identification d'ensemble de caractéristiques utilisateur détermine l'ensemble de caractéristiques utilisateur associé à la session en générant une empreinte sur la base d'événements Web associés et lui affecte un ID d'ensemble de caractéristiques utilisateur. Une unité de fourniture de contenu ciblé 120 traite les événements Web et utilise les données afin de générer des profils d'utilisateurs associés aux événements Web et à l'ID d'ensemble de caractéristiques utilisateur pour permettre la fourniture d'un contenu ciblé aux utilisateurs présents au sein du foyer. [0021] Le filtre de trafic et d'événements 110 fournit des événements provenant d'une connexion réseau 134 (telle qu'une ligne DSL) au module 115 d'identification d'ensemble de caractéristiques utilisateur. Les types d'événements pouvant être identifiés peuvent être propres au contexte de communication d'informations (c'est-à-dire à l'application). Les événements peuvent comprendre des visualisations de pages, des visualisations d'annonces, des clics sur des liens ou des événements de recherche dans le cas d'un trafic Internet sur un réseau FSI. Dans le cas d'un boîtier décodeur ou d'une application multimédia, les événements peuvent comprendre des métadonnées de changement de chaîne de télévision ou des métadonnées de consommation de contenu multimédia. Les événements sont identifiés par un ID d'abonné et par un ID de session qui fournissent en fait au module 115 d'identification d'ensemble de caractéristiques utilisateur un flux d'événements pour chaque session simultanée établie à partir d'un foyer ou d'une connexion d'abonné 134. La connexion 134 est établie entre un site (tel qu'un foyer) comportant une pluralité de plates-formes informatiques et/ou de navigateurs 130a-130c, et une infrastructure de réseau (telle qu'un réseau FSI) 150. L'ID de foyer est un identifiant utilisé pour distinguer les abonnés (les foyers) les uns des autres. L'ID de session est affecté par le filtre de trafic et d'événements. [0022] Le module 115 d'identification d'ensemble de caractéristiques utilisateur applique des algorithmes destinés à reconnaître des modèles dans le flux d'événements afin d'apparier le flux avec un ensemble de caractéristiques utilisateur connu. Si aucun appariement n'est trouvé, un nouvel ensemble de caractéristiques utilisateur est créé. Pour éviter la prolifération d'ensembles de caractéristiques utilisateur associés à des sessions uniques anormales, un ensemble de caractéristiques utilisateur global supplémentaire représentant la totalité du flux d'événements du foyer est conservé afin de pouvoir utiliser un niveau de ciblage de base. [0023] L'algorithme de reconnaissance de modèles est conçu de manière modulaire. Plus précisément, la logique ou les règles appliquées dans l'algorithme peuvent être modifiées et/ou complétées. L'algorithme peut par exemple prendre en compte divers facteurs liés aux activités initiales de la session de navigation d'un utilisateur. Une empreinte peut être déterminée pour une session en considérant les "n" (nombre d'événements configurable) premiers événements de navigation après une période d'Inactivité configurable de la connexion. Des facteurs supplémentaires pouvant être pris en compte dans l'algorithme comprennent l'heure ou le jour de la semaine où se produit la session ainsi qu'une classification des sites Web ayant été consultés (c'est-à-dire des pages visualisées). Une empreinte de session est fondamentalement un "vecteur de caractéristiques" dans lequel des caractéristiques ont été sélectionnés pour représenter des informations importantes qui permettront de distinguer une session de navigation d'une autre. Les caractéristiques utilisées dans le cas d'une application de publicité sur Internet peuvent comprendre un vocabulaire de mots et des jetons qui sont habituellement présents dans les noms d'hôtes de sites Web sur lesquels un utilisateur navigue, ainsi que des informations d'heure et de catégorie majeure. Dans le cas d'un boîtier décodeur ou d'une application multimédia, les exemples de caractéristiques peuvent comprendre des événements de changement de chaîne, des événements d'heure ou des informations de métadonnées contenant des noms de titres, des descriptions et des catégories de programmes (par exemple sport, cinéma, théâtre). [0024] De multiples algorithmes peuvent être utilisés simultanément lors d'une session en direct (c'est-à-dire active) pour permettre des comparaisons A1B afin de déterminer l'efficacité d'un ajustement des divers paramètres du système. La comparaison entre de multiples algorithmes actifs peut être utilisée pour déterminer l'algorithme le plus efficace en déterminant l'efficacité relative de la sélection d'un contenu approprié. A titre d'exemple, dans une application de publicité sur Internet, si un algorithme est systématiquement meilleur en ce qui concerne la présentation d'annonces sur lesquelles un utilisateur peut cliquer, cet algorithme est alors beaucoup plus efficace que l'autre algorithme. [0025] Contrairement aux systèmes classiques qui tentent d'effectuer un suivi d'utilisateurs individuels, le module 115 d'identification d'ensemble de caractéristiques utilisateur cherche à apparier des ensembles de caractéristiques utilisateur se manifestant pendant la navigation ou au cours d'une autre session de consommation de contenu. Dans le cas où deux membres d'une famille partagent des intérêts et des comportements analogues, ceux-ci seront identifiés comme étant un même ensemble de caractéristiques utilisateur aux fins du ciblage. Aucune information personnelle identifiable (IPI) n'est utilisée lors de la sélection d'ensembles de caractéristiques utilisateurs. [0026] Comme illustré sur la figure 2, le foyer abonné 130 accède à un contenu à partir d'un navigateur Web 202 par l'intermédiaire du réseau fournisseur de services 150. Le serveur 202 peut être connecté directement au réseau 150, -8- comme c'est le cas des serveurs 152 et 154, ou peut être relié à un réseau externe 160, comme c'est le cas des serveurs 162 et 164, qui peuvent être connectés par l'intermédiaire d'un réseau tel que l'Internet. L'unité de filtrage de trafic et d'événements 110 comprend un ou plusieurs éléments ou dispositifs déployés au sein du réseau fournisseur de services 150 ou reliés au réseau fournisseur de services 150. [0027] Les éléments peuvent comprendre un ou plusieurs éléments d'applications de réseau 210 déployés dans le réseau fournisseur de services. Chaque unité d'application de réseau 110 comprend au moins un processeur 214, une mémoire 216, et une interface réseau (non représentée), un ou plusieurs éléments 230 de préparation de données et de génération d'événements comprenant au moins un processeur 232, une mémoire 234 et une interface réseau (non représentée). Un processeur d'événements 240 comprenant au moins un processeur 242, une mémoire 244 et une interface réseau (non représentée) fournit des événements Web filtrés à une unité 115 d'identification d'ensemble de caractéristiques utilisateur, comprenant au moins un processeur 262 et une mémoire 264, et une interface réseau (non représentée). L'unité 115 d'identification d'ensemble de caractéristiques utilisateur peut également assurer le stockage 266 d'ensembles de caractéristiques utilisateur déterminés. Une fois qu'une empreinte d'un ensemble de caractéristiques utilisateur a été affectée, l'événement Web et l'identifiant d'ensemble de caractéristiques utilisateur déterminé sont fournis au profileur 270 qui comprend au moins un processeur 272, une mémoire 274 et une interface réseau (non représentée). Le profileur 270 conserve un profil de préférences de l'utilisateur associé à chaque ensemble de caractéristiques utilisateur déterminé qui peut être enregistré dans une unité de stockage 276 en vue d'une extraction lorsque nécessaire. Un serveur de contenu 280 comprenant au moins un processeur 282, une mémoire 284 et une interface réseau (non représentée), obtient du profileur des informations de profil et sélectionne un contenu adapté au profil pour le fournir à l'utilisateur final. Bien que l'unité d'application de réseau 110 et que l'unité de fourniture de contenu ciblé 120 soient décrites comme comprenant des éléments et/ou des unités individuels dont chacun est exécuté par des processeurs et des mémoires individuels, les fonctionnalités de l'unité d'application de réseau 110 et de l'unité de fourniture de contenu ciblé peuvent chacune être combinées et exécutées sur un même processeur ou une même plate-forme informatique, selon la topologie du réseau. De même, ces fonctionnalités peuvent être réparties entre de multiples plates-formes informatiques selon les nécessités. [0028] L'unité d'application de réseau 110 prend en charge l'acquisition et le traitement de données d'applications de réseau, du trafic Web ou d'activités Web, entre l'abonné 120 et le serveur Web 202. Le terme "Web" fait référence à l'accès à des données accessibles sur le réseau comprenant un contenu tel que du texte, des images, des vidéos et autres données multimédia par l'intermédiaire de liens hypertexte. L'élément d'application de réseau 210 prend également en charge l'exportation ou permet un accès externe à ces activités de trafic Web. Le trafic Web est typiquement constitué d'un trafic faisant appel au protocole de transfert hypertexte (HTTP) qui utilise le port 80 de la partie de contrôle de transmission (TCP). Les activités Web sont constituées d'un trafic Web résumé pouvant par exemple comprendre : la consultation d'un site Web, le téléchargement de vidéos, des interactions de commerce électronique sur un site Web, des recherches effectuées et d'autres activités Internet de ce type. L'unité d'application de réseau 110 peut comprendre un ou plusieurs types d'éléments d'applications de réseau 210 sur la base de leur intégration au réseau fournisseur de services. Les éléments d'applications de réseau peuvent être intégrés au trajet de communication entre le point d'accès et le point terminal de communication ou la liaison de raccordement au trajet de communication sur lequel des copies ou des doubles des événements sont réexpédiés à l'élément d'application de réseau en provenance d'un dispositif se trouvant sur le trajet de communication. [0029] Chaque élément 230 de préparation de données et de génération d'événements assure un interfaçage avec un ou plusieurs éléments d'applications de réseau 210 (de divers types) et est responsable de l'accès aux données d'applications de réseau, par exemple au trafic Web ou à des activités Web qui, en variante, sont réexpédiées ou consignées par les éléments d'applications de réseau 210. Après avoir reçu le trafic Web ou les activités Web, l'élément 210 de préparation des données et de génération d'événements est responsable de l'élimination de données inutiles (en éliminant par exemple la partie formant contenu -10- du trafic Web HTTP, en éliminant la partie formant contenu d'un flux vidéo basé sur le Web, etc.) et en formulant finalement le trafic ou les activités Web sous la forme d'événements Web bien définis en vue d'un traitement en aval. Des exemples d'événements Web comprennent des événements de recherche, des événements de consultation de sites Web, des événements de clics sur des publicités (annonces), des événements d'interaction de commerce électronique, des événements de sélection de vidéos en ligne, et d'autres événements semblables. Ces événements, qui sont accompagnés d'un identifiant (ID) d'abonné, comme par exemple une adresse de protocole Internet (IP) associée au foyer abonné 130, sont envoyés à l'unité de fourniture de contenu ciblé 120 en vue de leur traitement. [0030] Le processeur d'événements 240 permet de collecter et de combiner des événements provenant des éléments 230 de préparation des données et de génération d'événements. Les données d'applications de réseau, par exemple les événements Web, sont en outre filtrées (par exemple par élimination des éventuelles informations personnelles ou sensibles). Les événements et l'ID de session associé sont traités par l'unité 115 d'identification d'ensemble de caractéristiques utilisateur. L'unité 115 d'identification d'ensemble de caractéristiques utilisateur détermine une empreinte pour la session et détermine un identifiant d'ensemble de caractéristiques utilisateur 266 correspondant à la session, comme décrit à propos de la figure 4, et réexpédie les événements Web, l'identifiant d'abonné et l'identifiant d'ensemble de caractéristiques utilisateur au profileur 270 en vue d'un traitement supplémentaire. [0031] Le profileur 270 est un composant temps réel de l'unité de fourniture de contenu ciblé 120. Le profileur 270 prend en entrée chaque événement filtré, chaque ID d'abonné et chaque ID d'ensemble de caractéristiques utilisateur provenant du processeur d'événements 240 et génère ou met à jour des profils stockés 276 en utilisant le ou les algorithme(s) de profilage. Le profil peut concerner les intérêts liés aux ensembles de caractéristiques utilisateur au sein du foyer abonné. Le profileur 270 fonctionne en temps réel et les profils générés sont rendus disponibles au serveur de contenu 280. [0032] Le serveur de contenu 280, lorsqu'il reçoit une demande de contenu ciblé (par exemple une publicité, un extrait vidéo, un fichier musical, etc.) d'un -11- utilisateur de contenu, interroge le profileur 270 pour obtenir des informations de profil concernant l'utilisateur de contenu ; et/ou des informations de profil concernant le contexte de la demande (celle-ci pourrait par exemple inclure le contexte du fournisseur de contenu, l'éditeur, le genre de contenu demandé, etc.). Le serveur de contenu 280 peut demander au profileur 270 des informations de profil générées en utilisant un ou plusieurs algorithmes de modélisation de profil. Sur la base' des informations de profil reçues, le contenu le mieux adapté est sélectionné et délivré à l'utilisateur de contenu. Les critères de sélection peuvent être fondés sur la pertinence vis-à-vis de l'utilisateur, sur l'aptitude à générer des revenus, ou d'autres règles liées à l'utilisateur de contenu ou au contenu ciblé. Le serveur de contenu 280 peut choisir d'utiliser des informations de profil générées à l'aide de différents algorithmes de modélisation de profil lors de demandes de contenu ciblé successives afin d'effectuer des tests A/B (comparaison d'alternatives) et d'optimiser en continu les performances. [0033] La figure 3 représente schématiquement le module 115 d'identification d'ensemble de caractéristiques utilisateur destiné à différencier les ensembles de caractéristiques utilisateur par reconnaissance de modèles. Le module 115 d'identification d'ensemble de caractéristiques utilisateur comprend un récepteur d'événements 310, un collecteur d'événements 320, un calculateur d'ensemble de caractéristiques utilisateur 330, un moteur d'appariement 340, un référentiel d'algorithmes d'appariement 350, un dispositif de création/mise à jour d'ensemble de caractéristiques utilisateur 360, et un référentiel d'ensembles de caractéristiques utilisateur 370. Le récepteur d'événements 310 reçoit un trafic d'événements et extrait un ID de foyer et un ID de session. Le collecteur d'événements 320 assure le stockage des événements jusqu'à ce que leur nombre soit suffisant pour le traitement. Le calculateur d'ensemble de caractéristiques utilisateur 330 a pour fonction de créer une empreinte d'ensemble de caractéristiques utilisateur sur la base d'une pluralité d'événements se produisant lors d'une session. Le moteur d'appariement 340 a pour fonction d'apparier un ensemble de caractéristiques utilisateur candidat avec l'un d'une pluralité d'ensemble de caractéristiques utilisateur connus. L'appariement fait appel à des algorithmes d'appariement fournis par le référentiel d'algorithmes d'appariement 350. Le dispositif de création/mise à jour d'ensemble de caractéristiques utilisateur 360 a pour fonction de créer un -12- nouvel ensemble de caractéristiques utilisateur et de mettre à jour l'empreinte d'un ensemble de caractéristiques utilisateur existant. Une pluralité d'ensembles de caractéristiques utilisateur peuvent être stockés dans et extraits du référentiel d'ensemble de caractéristiques utilisateur 370, qui peut être relié à un référentiel de stockage externe 266. [0034] Le procédé de la présente invention peut être mis en oeuvre au moyen du module 115 d'identification d'ensemble de caractéristiques utilisateur décrit ci-dessus en référence aux figures 1 à 3. En variante, le procédé de la présente invention peut être mis en oeuvre au moyen d'instructions de programmes exécutables sur ordinateur et stockées dans une mémoire de stockage lisible par ordinateur. [0035] La figure 4 est un organigramme représentant un procédé 400 de différenciation d'ensemble de caractéristiques utilisateur (ou de la personnalité) par reconnaissance de modèles. Les événements générés sont reçus en 402 de l'un d'une pluralité d'ordinateurs se trouvant dans un foyer, connectés à un point d'accès. Chaque événement est associé à un identifiant (ID) d'abonné et à un identifiant (ID) de session et est généré en association avec une session de communication entre l'un de la pluralité de dispositifs informatiques et un point terminal de communication tel qu'un serveur Web ou de contenu par l'intermédiaire du réseau. En 404, une empreinte de session est générée en utilisant une pluralité d'événements reçus correspondant à l'ID d'abonné et à l'ID de session associés. L'empreinte de session comprend un vecteur de caractéristiques basé sur des données contenues dans les événements reçus. Un enregistrement d'ensemble de caractéristiques utilisateur est ensuite stocké en 406, l'enregistrement comprenant l'empreinte générée, à savoir un identifiant (ID) d'ensemble de caractéristiques utilisateur associé et l'ID d'abonné. [0036] La figure 5 est un organigramme représentant un procédé 500 de différenciation d'ensemble de caractéristiques utilisateur par reconnaissance de modèles. Un événement est reçu en 502, l'événement est associé à un ID de foyer (ou à un ID d'abonné) et à un ID de session. L'ID de session est affecté par le dispositif de filtrage de trafic et d'événements 110 sur la base de techniques de calcul d'empreinte de l'OS et de détection de session. L'ID de session est -13- également défini sur la base d'une période définie d'utilisations, les périodes d'inactivité recommençant une session. [0037] Pour chaque événement entrant, une vérification est effectuée en 504 pour déterminer si un ensemble de caractéristiques utilisateur a déjà été affecté à une session. Lorsque l'ID de session a déjà été affecté à un ensemble de caractéristiques utilisateur (OUI en 504), il est déterminé si la session a récemment été active en 506. Lorsque la session a été active (OUI en 506), l'événement est affecté à l'ensemble de caractéristiques utilisateur associé à la session en 508 et l'événement est retransmis à l'unité de fourniture de contenu 120 afin de déterminer un profil associé. La détermination de l'activité de session peut être faite sur la base d'un intervalle de temps défini, par exemple de 15 minutes, au cours duquel des événements associés doivent être reçus pour maintenir active une session. [0038] Lorsqu'il n'y a pas eu d'activité récente au cours de la session (NON en 506), des événements sont collectés en 510. Il est déterminé si suffisamment d'événements ont été reçus pour exécuter l'algorithme de reconnaissance de formes. Tant qu'un nombre suffisant d'événements n'a pas été reçu pour affecter un ensemble de caractéristiques utilisateur (NON en 512), un ensemble de caractéristiques utilisateur de foyer global est attribué à chaque événement en 514. [0039] Une fois que les événements nécessaires ont été collectés (OUI en 512), l'empreinte d'ensemble de caractéristiques utilisateur d'une session est calculée en 516. Chaque empreinte d'ensemble de caractéristiques utilisateur est représentée sous la forme d'un vecteur de caractéristiques qui représente les attributs des parties initiales de la session de navigation. L'empreinte est constituée de jetons extraits d'une liste de vocabulaire ayant par exemple pour base les 5 (ce nombre pouvant être ajusté) premiers événements d'une session de navigation sur le Web. Plus précisément, le nom de l'hôte extrait de l'événement Web est décomposé en deux jetons. Ces jetons forment le vecteur de caractéristiques qui représente un terme associé à un nom d'hôte et à un poids définissant le taux d'occurrence du terme dans les événements collectés. En additionnant les uns aux autres les vecteurs de caractéristiques de chacun des cinq événements, on génère un vecteur de caractéristiques qui représente l'empreinte de la session. Une empreinte échantillon est représentée dans le tableau 2. -14- [0040] L'ensemble de caractéristiques utilisateur calculé est comparé à des ensembles de caractéristiques utilisateur connus existants en 518 pour le foyer. L'algorithme d'appariement n'est pas absolu (c'est-à-dire qu'un appariement parfait n'est pas nécessaire pour conclure qu'il s'agit du même ensemble de caractéristiques utilisateur). L'algorithme d'appariement initial utilisé est une application d'une adaptation d'un traitement bien connu du langage naturel. [0041] De multiples vecteurs de caractéristiques peuvent être comparés du point de vue de la ressemblance à l'aide d'une technique telle que celle de la ressemblance angulaire. L'algorithme d'appariement, utilisant par exemple la ressemblance angulaire, comprend un calcul consistant à déterminer l'angle entre deux vecteurs. La ressemblance angulaire est une technique connue dans le domaine de la recherche de textes et de données. Elle mesure la ressemblance entre deux vecteurs de mêmes dimensions en analysant le cosinus de l'angle les séparant. La sortie de l'algorithme est une note comprise entre 0 et 1. Lorsque l'angle formé entre l'empreinte de la session et l'empreinte de l'ensemble de caractéristiques utilisateur est faible, les sessions sont considérées comme étant appariées. Le seuil utilisé pour déterminer que deux sessions sont appariées peut être ajusté et configuré afin d'obtenir le niveau souhaité d'appariement. [0042] Si la ressemblance entre le meilleur appariement et la session en cours est supérieure à un certain seuil (par exemple de 0,5), cet ensemble de caractéristiques utilisateur est alors choisi (OUI en 518), tous les événements provenant de cette session sont affectés à l'ensemble de caractéristiques utilisateur connu en 520 et l'empreinte est mise à jour en 522. S'il existe une empreinte d'ensemble de caractéristiques utilisateur existante, les empreintes des ensembles de caractéristiques utilisateur de la session en cours sont moyennées et l'ensemble de caractéristiques utilisateur existant est mis à jour (c'est-à-dire remplacé) par un résultat du moyennage. Cela signifie que les ensembles de caractéristiques utilisateur sont obtenus par apprentissage continu afin d'intégrer les petites différences par rapport à l'empreinte de l'ensemble de caractéristiques utilisateur initiale. [0043] Lorsqu'aucun appariement approprié ne peut être trouvé parmi les ensemble de caractéristiques utilisateur existants (NON en 518), on crée un nouvel -15- ensemble de caractéristiques utilisateur qui représente le nouveau comportement de navigation initial ayant été observé en 524.. On peut établir une limite imposée au nombre d'ensemble de caractéristiques utilisateur pouvant être définis pour un foyer donné, et on peut définir un processus de vieillissement qui est utilisé pour éliminer des ensembles de caractéristiques utilisateur n'ayant pas été observés récemment dans le contexte du foyer et pour les remplacer par le nouvel ensemble de caractéristiques utilisateur. L'ensemble de caractéristiques utilisateur associé à la session et à l'événement est transmis à l'unité de fourniture de contenu 120. [0044] La structure de données d'ensemble de caractéristiques utilisateur 10 peut être définie dans un enregistrement tel que celui indiqué dans le tableau 1. ID Foyer <ENTIER> ID ens. de caract. util. <ENTIER> Dernier instant d'activité <MARQUEUR TEMPOREL> Empreinte <ENREGISTREMENT> Tableau 1 : Structure d'un ensemble de caractéristiques utilisateur [0045] L'ID de foyer peut être basé sur un nombre quelconque d'identifiants tels que l'adresse IP, le client radius l'identifiant de connexion de l'utilisateur ou toute donnée statique associée au point d'accès du foyer. L'ID de l'ensemble de 15 caractéristiques utilisateur est un identifiant permettant d'identifier de manière unique l'ensemble de caractéristiques utilisateur. Un marqueur temporel d'activité identifie la dernière mise à jour ou création de l'ensemble de caractéristiques utilisateur. A chaque ensemble de caractéristiques utilisateur est associée une empreinte, comme illustré dans le tableau 2. Indice Poids 75 1 132 2 198 1 345 1 364 4 20 Tableau 2 : Structure de l'empreinte -16- [0046] L'empreinte représente une session comportant 5 jetons uniques, avec un total de 9 occurrences mutuelles. Le vecteur de caractéristiques est stocké de façon non compacte. Tous les indices pour lesquels un jeton correspondant ne s'est pas produit ne sont simplement pas stockés. L'indice est mis en correspondance avec l'indice d'une source de termes trouvés dans, ou associés à, des métadonnées d'événements ou des termes identifiés dans l'adresse Web (URL) de l'événement. [0047] Il apparaîtra à l'homme du métier que de nombreuses modifications et variantes des modes de réalisation particuliers décrits ici peuvent être réalisées 10 sans sortir du cadre de la présente description. The service provider network 150 provides direct access to web services provided from the network, such as websites 152 or other content sources 154, or services connected to the Internet 160 (or other public communication networks), such as a website 162 or content sources 164. A traffic and event filter 110 receives network application data such as subscriber traffic 134 passing through the network 150 from subscribers 130a-130c through the access point 132 and generates web events based on the received traffic. The traffic may be for the linked web servers 152 or content servers 154, or as part of the service provider network 150 or an external network 160 such as a web server 162 and content servers 164 that can be connected via a network such as the Internet. The events are processed and assigned to a session from the access point 132 from a home or a defined location. The filtered events are then provided to a user feature set identification unit 115 with a session identifier. The user characteristics set identification unit 115 determines the set of user characteristics associated with the session by generating a fingerprint based on associated web events and assigns it a user feature set ID. A targeted content delivery unit 120 processes the web events and uses the data to generate user profiles associated with the web events and the user feature set ID to enable delivery of targeted content to the users. present in the home. The traffic and event filter 110 provides events from a network connection 134 (such as a DSL line) to the user feature set identification module 115. The types of events that can be identified may be specific to the information communication context (i.e. the application). Events may include page views, ad views, clicks on links, or search events in the case of Internet traffic on an ISP network. In the case of a set-top box or a multimedia application, the events may include television channel change metadata or multimedia content consumption metadata. The events are identified by a subscriber ID and a session ID that in fact provide the user characteristics set identification module 115 with an event flow for each concurrent session established from a home or a home. A subscriber connection 134. The connection 134 is established between a site (such as a home) having a plurality of computing platforms and / or browsers 130a-130c, and a network infrastructure (such as a ISP network) 150. The focus ID is an identifier used to distinguish subscribers (homes) from each other. The session ID is affected by the traffic and event filter. The user characteristics set identification module 115 applies algorithms for recognizing templates in the event stream to match the stream with a known set of user characteristics. If no match is found, a new set of user characteristics is created. To avoid the proliferation of sets of user characteristics associated with abnormal unique sessions, an additional set of global user characteristics representing the entire home event stream is maintained in order to use a basic targeting level. The pattern recognition algorithm is designed in a modular manner. More precisely, the logic or the rules applied in the algorithm can be modified and / or completed. The algorithm may for example take into account various factors related to the initial activities of a user's browsing session. A fingerprint can be determined for a session by considering the "n" (number of configurable events) first navigation events after a period of configurable Inactivity of the connection. Additional factors that may be considered in the algorithm include the time or day of the week in which the session occurs and a classification of the websites that were viewed (ie, pages viewed). . A session thumbprint is basically a "feature vector" in which features have been selected to represent important information that will distinguish one browsing session from another. The features used in the case of an Internet advertising application may include a word vocabulary and tokens that are usually present in the host names of websites on which a user is browsing, as well as time and date information. major category. In the case of a set-top box or multimedia application, the example features may include string change events, time events, or metadata information containing title names, descriptions, and categories of features. programs (eg sports, cinema, theater). Multiple algorithms can be used simultaneously during a live session (ie active) to allow comparisons A1B to determine the effectiveness of an adjustment of the various parameters of the system. The comparison between multiple active algorithms can be used to determine the most efficient algorithm by determining the relative efficiency of selecting an appropriate content. For example, in an advertising application on the Internet, if an algorithm is always better in terms of the presentation of advertisements that a user can click, this algorithm is then much more effective than the other algorithm. Unlike conventional systems that attempt to track individual users, the user characteristics set identification module 115 seeks to match sets of user characteristics that manifest themselves during navigation or during a particular time period. another session of content consumption. In the case where two family members share similar interests and behaviors, these will be identified as the same set of user characteristics for targeting purposes. No personally identifiable information (IPI) is used when selecting sets of user characteristics. As illustrated in Figure 2, the subscriber home 130 accesses content from a web browser 202 through the service provider network 150. The server 202 can be directly connected to the network 150, -8 - as is the case of the servers 152 and 154, or can be connected to an external network 160, as is the case of the servers 162 and 164, which can be connected via a network such as the 'Internet. The traffic and event filtering unit 110 comprises one or more elements or devices deployed within the service provider network 150 or connected to the service provider network 150. The elements may comprise one or more elements of network applications 210 deployed in the service provider network. Each network application unit 110 comprises at least one processor 214, a memory 216, and a network interface (not shown), one or more elements 230 for data preparation and event generation comprising at least one processor 232, a memory 234 and a network interface (not shown). An event processor 240 including at least one processor 242, a memory 244 and a network interface (not shown) provides filtered web events to a user feature set identification unit 115, including at least one processor 262 and a memory 264, and a network interface (not shown). The user characteristic set identification unit 115 may also provide storage 266 of sets of user characteristics determined. Once a fingerprint of a set of user characteristics has been assigned, the web event and the determined user characteristics set identifier are provided to the profiler 270 which includes at least one processor 272, a memory 274 and a memory card 274. network interface (not shown). The profiler 270 maintains a user preference profile associated with each set of user characteristics that can be stored in a storage unit 276 for extraction when necessary. A content server 280 including at least one processor 282, a memory 284, and a network interface (not shown) obtains profile information from the profiler and selects content adapted to the profile to provide it to the end user. Although the network application unit 110 and the targeted content delivery unit 120 are described as comprising individual elements and / or units each of which is executed by individual processors and memories, the functionalities of the target application unit 120 are defined. The network application unit 110 and the targeted content delivery unit can each be combined and run on the same processor or computer platform, depending on the network topology. Similarly, these features can be distributed among multiple computer platforms as needed. The network application unit 110 supports the acquisition and processing of network application data, web traffic or web activities between the subscriber 120 and the web server 202. The "Web" refers to access to network-accessible data that includes content such as text, images, videos, and other multimedia data via hypertext links. The network application element 210 also supports exporting or allows external access to these web traffic activities. Web traffic typically consists of hypertext transfer protocol (HTTP) traffic that uses port 80 of the transmission control portion (TCP). Web activities consist of summary web traffic that may include, but are not limited to, website consultation, video downloads, e-commerce interactions on a website, searches conducted, and other Internet activities of that website. type. The network application unit 110 may comprise one or more types of network application elements 210 based on their integration with the service provider network. The network application elements may be integrated with the communication path between the access point and the communication endpoint or the connection link to the communication path on which copies or duplicates of the events are forwarded to the element network application from a device on the communication path. Each element 230 for data preparation and event generation provides an interface with one or more network application elements 210 (of various types) and is responsible for accessing the network application data, for example, to web traffic or web activities which, alternatively, are forwarded or logged by the network application elements 210. After receiving the web traffic or web activities, the data preparation and data preparation element 210 event generation is responsible for eliminating unnecessary data (for example by eliminating the content portion of HTTP web traffic, eliminating the content portion of a web-based video stream, etc.) and ultimately formulating web traffic or activities as well-defined web events for downstream processing. Examples of web events include search events, website consultation events, ad click events, ecommerce interaction events, online video selection events, and other similar events. These events, which are accompanied by a subscriber identifier (ID), such as an Internet Protocol (IP) address associated with the subscriber's home 130, are sent to the targeted content delivery unit 120 with a view to their treatment. The event processor 240 collects and combines events from the data preparation and event generation elements 230. Network application data, for example web events, are further filtered (for example by eliminating any personal or sensitive information). The events and the associated session ID are processed by the user feature set identification unit 115. The user characteristics set identifying unit 115 determines a fingerprint for the session and determines a user feature set identifier 266 corresponding to the session, as described with reference to FIG. 4, and forwards the Web events, the subscriber identifier and the user characteristics set identifier to the profiler 270 for further processing. The profiler 270 is a real-time component of the targeted content delivery unit 120. The profiler 270 takes as input each filtered event, each subscriber ID, and each user feature set ID from the processor. 240 and generates or updates stored profiles 276 using the profiling algorithm (s). The profile may relate to the interests related to user feature sets within the subscriber's home. The profiler 270 operates in real time and the generated profiles are made available to the content server 280. The content server 280, when it receives a request for targeted content (for example an advertisement, a video clip, a file musical, etc.) of a content user, queries the profiler 270 to obtain profile information about the content user; and / or profile information about the context of the request (this could include, for example, the context of the content provider, the publisher, the type of content requested, etc.). Content server 280 may request profiler 270 for profile information generated using one or more profile modeling algorithms. Based on the received profile information, the most suitable content is selected and delivered to the content user. Selection criteria may be based on user relevance, revenue-generating ability, or other rules related to the user of the content or the targeted content. The content server 280 may choose to use profile information generated using different profile modeling algorithms for successive targeted content requests to perform A / B (comparison of alternatives) and continuously optimize performance. FIG. 3 schematically represents the user characteristics set identification module 115 intended to differentiate sets of user characteristics by pattern recognition. The user characteristics set identification module 115 comprises an event receiver 310, an event collector 320, a user characteristics set calculator 330, a matching engine 340, a repository of algorithms for the user characteristics set. pairing 350, a user feature set creation / update device 360, and a user feature set repository 370. Event receiver 310 receives event traffic and retrieves a focus ID and a session ID. Event collector 320 stores events until their number is sufficient for processing. The purpose of the user characteristics set calculator 330 is to create a user characteristics set fingerprint based on a plurality of events occurring during a session. The match engine 340 functions to match a set of candidate user characteristics with one of a plurality of known user feature sets. The pairing makes use of matching algorithms provided by the matching algorithm repository 350. The function of creating / updating the set of user characteristics 360 is to create a new set of user characteristics and update the fingerprint of an existing set of user characteristics. A plurality of sets of user characteristics may be stored in and extracted from the user feature set repository 370, which may be connected to an external storage repository 266. The method of the present invention may be implemented by means of the user characteristic set identification module 115 described above with reference to FIGS. 1-3. Alternatively, the method of the present invention may be implemented by means of computer-executable program instructions. and stored in a computer-readable storage memory. Figure 4 is a flowchart showing a method 400 of differentiation of set of user characteristics (or personality) by pattern recognition. The generated events are received at 402 from one of a plurality of computers in a home connected to an access point. Each event is associated with a subscriber identifier (ID) and a session identifier (ID) and is generated in association with a communication session between one of the plurality of computing devices and a communication endpoint such as a web server or content via the network. At 404, a session fingerprint is generated using a plurality of received events corresponding to the associated subscriber ID and session ID. The session fingerprint includes a feature vector based on data contained in the received events. A user feature set record is then stored at 406, the record including the generated fingerprint, namely an associated user feature set identifier (ID) and the subscriber ID. Figure 5 is a flowchart showing a method 500 of differentiation of set of user characteristics by pattern recognition. An event is received at 502, the event is associated with a focus ID (or subscriber ID) and a session ID. The session ID is assigned by the traffic and event filtering device 110 based on OS footprint calculation and session detection techniques. The session ID is also set based on a defined period of use, periods of inactivity restarting a session. For each incoming event, a check is performed at 504 to determine if a set of user characteristics has already been assigned to a session. When the session ID has already been assigned to a set of user characteristics (YES at 504), it is determined whether the session was recently active at 506. When the session was active (YES at 506), the event is assigned to the set of user characteristics associated with the session at 508 and the event is forwarded to the content delivery unit 120 to determine an associated profile. The determination of the session activity can be made on the basis of a defined time interval, for example 15 minutes, during which associated events must be received to keep a session active. When there has been no recent activity during the session (NOT in 506), events are collected in 510. It is determined if enough events have been received to execute the algorithm. pattern recognition. As long as a sufficient number of events have not been received to affect a set of user characteristics (NO at 512), a set of global focus user characteristics is assigned to each event at 514. [0039] Once the necessary events have been collected (YES at 512), the user characteristics set fingerprint of a session is computed at 516. Each user characteristics set fingerprint is represented as a feature vector which represents the attributes of the initial parts of the navigation session. The impression consists of tokens extracted from a vocabulary list having for example the basis for the 5 (this number can be adjusted) first events of a web browsing session. Specifically, the host name retrieved from the Web event is broken down into two tokens. These tokens form the feature vector which represents a term associated with a host name and a weight defining the rate of occurrence of the term in the collected events. By adding together the feature vectors of each of the five events, a feature vector is generated that represents the session footprint. A sample fingerprint is shown in Table 2. The calculated user feature set is compared to known known user feature sets at 518 for the focus. The matching algorithm is not absolute (that is, perfect matching is not necessary to conclude that it is the same set of user characteristics). The initial matching algorithm used is an application of an adaptation of a well-known natural language processing. Multiple feature vectors can be compared from the point of view of resemblance using a technique such as that of angular similarity. The matching algorithm, using for example the angular similarity, comprises a calculation consisting in determining the angle between two vectors. Angular similarity is a known technique in the field of text and data search. It measures the resemblance between two vectors of the same dimensions by analyzing the cosine of the angle separating them. The output of the algorithm is a note between 0 and 1. When the angle formed between the session footprint and the footprint of the set of user characteristics is small, the sessions are considered to be matched. The threshold used to determine that two sessions are matched can be adjusted and configured to achieve the desired level of matching. If the resemblance between the best match and the current session is greater than a certain threshold (for example 0.5), this set of user characteristics is then chosen (YES in 518), all the events coming from this session is assigned to the known user feature set in 520 and the fingerprint is updated to 522. If there is an existing user feature set fingerprint, the fingerprints of user feature sets for the current session are averaged and the existing user feature set is updated (i.e., replaced) by an averaging result. This means that the sets of user characteristics are obtained by continuous learning in order to integrate the small differences with respect to the fingerprint of the initial user characteristics set. When no appropriate matching can be found among the set of existing user characteristics (NOT at 518), a new set of user characteristics is created which represents the new initial browsing behavior observed at 524. A limit can be set on the number of sets of user characteristics that can be defined for a given focus, and an aging process can be defined that is used to eliminate sets of user characteristics that have not been observed recently in the environment. home context and to replace them with the new set of user characteristics. The set of user characteristics associated with the session and the event is transmitted to the content delivery unit 120. The user characteristics set data structure 10 may be defined in a record such as shown in Table 1. Fireplace ID <ENTIER> ID ens. of character util. <ENTIER> Last moment of activity <TEMPORAL MARKER> Fingerprint <RECORDING> Table 1: Structure of a set of user characteristics [0045] The focus ID can be based on any number of identifiers such as the address IP, the client radius the login ID of the user or any static data associated with the access point of the household. The ID of the set of user characteristics is an identifier for uniquely identifying the set of user characteristics. An activity timestamp identifies the latest update or creation of the user feature set. To each set of user characteristics is associated a footprint, as shown in Table 2. Index Weight 75 1 132 2 198 1 345 1 364 4 Table 2: Footprint Structure [0046] Footprint represents a session with 5 unique tokens, with a total of 9 mutual occurrences. The feature vector is stored noncompactly. Any indexes for which a corresponding token has not occurred are simply not stored. The index is mapped to the index of a source of terms found in, or associated with, event metadata or terms identified in the web address (URL) of the event. It will be apparent to those skilled in the art that many modifications and variations of the particular embodiments described herein can be made without departing from the scope of the present description.