Brevet FR3071087A1 — publié le 20190315

UNE MÉTHODE ET UN SYSTÈME POUR LA SEGMENTATION DE VOYAGEURS EN LIGNE EN TEMPS REEL A L'AIDE DE L'APPRENTISSAGE AUTOMATIQUE DOMAINE DE L'INVENTION [0001] La présente invention concerne l'application de modèle d'apprentissage automatique pour classer les utilisateurs en ligne. Notamment, des modes de réalisation de l'invention classent les utilisateurs non identifiés en temps réel dans une ou plusieurs catégories ou segments, à l'aide d'informations limitées qui peuvent être disponibles sur chaque utilisateur dans le contexte en 10 ligne spécifique des systèmes de recherche de voyages, d'informations et de réservation. L'invention peut s'appliquer à des systèmes de publicité en ligne, par exemple pour sélectionner les publicités les mieux adaptées à la présentation à un utilisateur, et/ou pour déterminer un prix d'offre approprié pour une vue ou un clic sur la publicité présentée à un utilisateur. 15 CONTEXTE DE L'INVENTION [0002] La publicité en ligne (par ex., basée sur le web, mobile ou dans l'application) diffère de la publicité dans les médias traditionnels en termes de ciblage personnalisé d'audience. Par exemple, tandis que la publicité multimédia de diffusion, tels que la publicité à la télévision, a pour but d'atteindre une 20 caractéristique démographique cible définie par des caractéristiques larges telles qu'un groupe d'âge, un statut socio-économique et/ou des intérêts généraux, la publicité en ligne a pour but d'atteindre les individus ayant un intérêt particulier pour le produit, le service ou les informations qui sont présentées. [0003] La technologie de ciblage d'audience hautement personnalisée a 25 conduit au développement de modèles d'affaires qui sont spécifiques à la publicité en ligne. Par exemple, il est commun pour les sites Web qui fournissent des nouvelles, des informations agrégées et un autre contenu d'intérêt à des 2 utilisateurs en particulier, d'héberger des publicités tierces comme moyen pour générer des revenus. Les annonceurs dont les publicités apparaissent sur ces sites Web peuvent payer l'opérateur sur la base de la vue d'opportunités ou d'impressions (communément mesurées en tant que « coût par mille impressions », c.-à-d. CPM), sur la base du coût par clic (CPC) ou selon une autre mesure de la performance. La sélection actuelle d'une publicité à placer sur une page Web présentée à un utilisateur individuel peut se baser, au moins en partie, sur un processus d'offre où un annonceur qui est disposé à payer un CPM, CPC ou autre mesure de coût plus élevé(e) est plus susceptibles d'avoir sa publicité présentée à l'utilisateur. [0004] Selon un modèle commun, le processus d'offres est facilité par une « plate-forme d'échange de publicités ». Un échange de publicités est une plate- forme technologique qui met en oeuvre une place de marché numérique permettant aux annonceurs et aux éditeurs de sites Web et autre contenu en ligne d'acheter et de vendre de l'espace publicitaire, souvent via des ventes aux enchères en temps réel. DoubleClickTM (détenue par GoogleTM), APPNeXUSTM, MicrosoftTM Ad ExchangerM et OpenXTM sont des plates-formes d'échange de publicités connues. [0005] Un échange de publicités maintient un « pool » d'impressions de publicité. Les éditeurs contribuent à leurs impressions de publicité, par exemple des encarts publicitaires intégrées dans des pages Web desservies à des utilisateurs, dans le pool. Les acheteurs peuvent alors faire une offre pour les impressions qu'ils souhaitent acheter. Les décisions de soumission sont souvent prises en temps réel sur la base des informations telles que le comportement précédent de l'utilisateur auquel une publicité est desservie, l'heure de la journée, le type d'appareil, la position de la publicité, et coetera. En pratique, ces décisions de soumission doivent doit elles-mêmes être prises très rapidement, par exemple au plus en quelques dizaines de millisecondes, à l'aide des plates-formes technologiques communément connues sous le nom de plates-formes côté demande (DSP). Puisque le coût réel pour l'annonceur existe lors de l'achat d'impressions via un échange de publicités, la performance des technologies et algorithmes déployés dans une DSP pour évaluer la « valeur » potentielle d'un utilisateur afin de prendre une décision d'offre peut avoir un aspect commercial important. 5 [0006] Les annonceurs ont typiquement des informations importantes dans leur propre base de données concernant leurs clients. Par exemple, un prestataire de services de réservation de voyages aura des informations sur une base de clients individuels concernant lesdites caractéristiques telles que la fréquence, la durée, la classe, l'origine et la destination du voyage. 10 Collectivement, ces informations peuvent être utilisées pour définir des catégories de voyageurs ou des segments marchés, tels que « grand voyageur », « voyageur d'affaires », « voyageur de luxe », « voyageur à budget », « voyageur aventurier », et coetera. Par conséquent, si un utilisateur en ligne présenté par l'intermédiaire d'un échange de publicités pouvait être identifié avec un client particulier dans la 15 base de données du prestataire de services de réservation de voyages, il serait possible de sélectionner des publicités qui sont hautement ciblées sur les intérêts et préférences de voyage connus de l'utilisateur, et/ou son segment de marché connu et à la DSP du prestataire de faire une offre agressive pour placer ces publicités de grande valeur. 20 [0007] En pratique cependant, les informations utilisateurs disponibles par l'intermédiaire d'un échange de publicités sont insuffisantes pour identifier uniquement un utilisateur individuel. Ainsi, alors qu'un annonceur peut avoir la possibilité de distinguer individuellement ses clients dans ses propres bases de données, les utilisateurs en ligne doivent en général être considérés comme non 25 identifiés. Pour faire court, il manque un lien entre les données du client hors- ligne de l'annonceur et les informations de l'utilisateur en ligne. [0008] Une approche possible pour attribuer un segment de marché à un utilisateur en ligne non identifié consiste à demander simplement, par ex. à présenter l'utilisateur avec une demande telle que « Êtes-vous un grand voyageur ? » La réponse de l'utilisateur peut être enregistrée, par exempte en association avec un cookie de navigateur ou similaire, de sorte qu'elle devient disponible via l'échange de publicités lors de l'accès futur par l'utilisateur à des sources de contenu hébergeant des publicités pertinentes. Cependant, cette approche souffre d'un certain nombre de problèmes, notamment de la difficulté de présenter et de recevoir une réponse à la demande, de l'impact négatif éventuel des demandes d'information gênantes sur la perception de l'annonceur par l'utilisateur et le potentiel des utilisateurs à se déclasser. [0009] Une autre approche consiste à collecter et à stopper informations 10 cumulatives supplémentaires sur des utilisateurs en ligne non identifiés, à nouveau à l'aide d'un cookie de navigateur ou similaire pour suivre et conserver ces informations au fil du temps. De cette manière, il peut être possible de relier un utilisateur en ligne à un client que l'on peut distinguer individuellement dans la base de données de l'annonceur, permettant aux données riches disponibles 15 concernant le comportement passé d'un client, ses préférences et la segmentation du marché à utiliser pour sélectionner des publicités hautement ciblées. Cependant, il existe de nombreux problèmes significatifs avec cette approche, notamment : le volume élevé de données qui doivent être gérées ; 20 e la complexité de la logique de mise en correspondance, c.-à-d la disponibilité, la sélection et la vérification des informations qui peuvent être utilisées pour la correspondance et les différentes manières dont les informations peuvent être associées pour déterminer si une correspondance a été trouvée ; 25 la faible couverture, c.-à-d. qu'une correspondance peut être uniquement faite pour les utilisateurs en ligne qui sont actuellement présents dans la base de données clients de l'annonceur, ce qui peut être une très petite proportion des utilisateurs en ligne ; 5 les problèmes de confidentialité des données, c.-à-d. que les divers lois et règlements nationaux limitent l'utilisation des informations personnelles détenues par les sociétés pour cibler et suivre les individus, ce qui restreint fortement le montant de données utilisables avec une identification 5 explicite; et les problèmes de performance, c.-à-d. qu'il n'est pas possible de calculer une correspondance en quelques dizaines de millisecondes, tel que requis. [0010] Par conséquent, il existe un net besoin en technologies, des procédés 10 des systèmes mis en oeuvre par ordinateur en temps réel qui peuvent être déployés dans la DSP et qui sont capables de prendre des décisions améliorées concernant la sélection des publicités et les offres par l'intermédiaire d'échanges de publicités. Il serait très bénéfique de profiter des riches données disponibles dans une base de données d'un annonceur d'informations clients qui peuvent 15 être distingués individuellement, tout en utilisant uniquement les informations utilisateurs significativement plus limitées disponibles par l'intermédiaire d'un échange de publicités dans un contexte en ligne, dans [e but que la DSP prenne une décision. Afin de respecter les exigences techniques, et de s'assurer que les temps de chargement des pages ne sont pas indûment augmentés par le 20 processus de sélection et d'offres, il est nécessaire de prendre une décision en quelques dizaines de millisecondes maximum. La présente invention vise à répondre à ses besoins. RESUME DE L'INVENTION [0011] Dans un aspect, la présente invention fournit un procédé mis en oeuvre 25 par ordinateur comprenant : l'accès à au moins un magasin de données hors ligne qui contient des enregistrements de réservations de voyages antérieures d'une pluralité de voyageurs que l'on peut distinguer individuellement, dans lequel une étiquette associée dans le magasin de données est attribuée à chaque voyageur que l'on peut distinguer individuellement en tant que membre ou non d'une catégorie de voyageurs prédéterminée basés sur une ou plusieurs réservations de voyages antérieures du voyageur que l'on peut distinguer individuellement; la détermination dune pluralité de caractéristiques associées à la catégorie de voyageurs prédéterminée, dans laquelle chaque catégorie est sélectionnée de sorte qu'une valeur correspondante de celle-ci puisse être obtenue pour un utilisateur non identifié dans un contexte en ligne ; pour chaque enregistrement d'un ensemble d'entraînement 10 d'enregistrements sélectionnés à partir du magasin de données hors ligne, le calcul d'un vecteur de caractéristiques comprenant les valeurs correspondantes pour la pluralité des caractéristiques ; l'entraînement d'un classificateur d'apprentissage automatique à l'aide de vecteurs de caractéristiques calculés et des étiquettes associées 15 correspondant aux enregistrements dans l'ensemble d'entraînement ; la réception, sur un processeur configure pour exécuter le classificateur d'apprentissage automatique, d'un vecteur de caractéristiques comprenant des valeurs de la pluralité des caractéristiques correspondant à l'utilisateur non identifié dans le contexte en ligne ; et 20 la détermination et l'estimation, par le processeur exécutant le classificateur d'apprentissage automatique, quant au fait de savoir si l'utilisateur non identifié est membre ou non de la catégorie de voyageurs prédéterminée. [0012] Avantageusement, des modes de réalisation de l'invention emploient des données riches typiquement détenues par des prestataires de services de 25 réservation de voyages dans leurs bases de données clients hors ligne afin d'« étiqueter » les voyageurs que l'on peut distinguer individuellement conformément à des catégories prédéterminées, telles que des segments de marché. Par exemple, un voyageur individuel peut être étiqueté comme « grand voyageur » sur la base du nombre de voyages effectués sur une période 30 prédéterminée, telle qu'une année civile, comme « voyageur d'affaires » sur la base d'un nombre ou d'un taux de voyages d'affaires effectués ou comme « voyageur de luxe » sur la base d'un coût moyen de chaque voyage effectué. Cependant, en général, ce niveau de détail n'est pas disponible pour un utilisateur non identifié dans un contexte en ligne. Dans un scénario anticipé par des modes de réalisation de l'invention, les informations utilisateurs en ligne disponibles peuvent être limitées aux caractéristiques d'un seul voyage dans le 5 contexte dans lequel l'utilisateur peut actuellement être, ou avoir récemment été, à la recherche de ce voyage en ligne. Des modes de réalisation de l'invention peuvent par conséquent déterminer avantageusement un ensemble de caractéristiques (par ex., les caractéristiques du voyage) qui sont disponibles dans le contexte en ligne, et calculer les valeurs de ces caractéristiques 10 correspondant à des enregistrements hors ligne de réservations de voyages antérieures de voyageurs que l'on peut distinguer individuellement et étiquetés. Les vecteurs de caractéristiques et les classifications associées en résultant sont alors appliqués pour entraîner un modèle d'apprentissage automatique supervisé qui peut ensuite être déployé, par exemple dans une DSP, pour prendre des 15 décisions de classification très rapides (par ex' 30 ms ou moins) dans le contexte en ligne. [0013] Tandis que le nombre de caractéristiques pour lesquels des valeurs peuvent être obtenues pour un utilisateur non identifié dans un contexte en ligne est relativement petit, par ex. entre cinq et 10-20 caractéristiques dans certains 20 modes de réalisation, les inventeurs ont étonnamment trouvé que la bonne performance peut être atteinte par le classificateur d'apprentissage automatique en résultant. Par exemple, dans un mode de réalisation particulier, il a été trouvé que seulement huit caractéristiques peuvent être utilisées pour atteindre un vrai taux positif (TPR) de classification sur un segment « grand voyageur » (c.-à-d. la 25 classification correcte des grands voyageurs) de 66 %, avec un faux taux positif (FPR, c.-à-d. les voyageurs non fréquents classés de manière incorrecte) de 22 %. Pour ce mode de réalisation, la zone sous la courbe caractéristique de fonctionnement du récepteur (AUROC) s'est avérée être à 0,80, ce qui est généralement considéré par les hommes du métier dans l'apprentissage 30 automatique comme une bonne performance. Une AUROC au-dessus de 0,80 était également atteinte pour un classificateur entraîné à l'aide de cinq caractéristiques uniquement pour faire la distinction entre voyage « d'affaires » et « de loisirs ». [0014] On remarquera qu'un voyageur que l'on peut distinguer individuellement ayant des enregistrements dans un magasin de données hors 5 ligne peut être classé dans une pluralité de catégories de voyageur prédéterminée et que les enregistrements individuels peuvent être associés à zéro, une ou plusieurs catégories. Par exemple, un voyageur peut être étiqueté comme « grand voyageur », « voyageur d'affaires » et « voyageur de luxe » et peut avoir des enregistrements associés correspondant à la fois aux voyages 10 d'affaires et aux voyages de loisirs aux fins d'entraînement d'un classificateur d'apprentissage automatique. [0015] Par ailleurs, des modes de réalisation de l'invention peuvent employer un classificateur ou de multiples classificateurs. Par exemple, un classificateur multiclasse peut être entraîné à sélectionner entre des catégories mutuellement 15 exclusives, telles que « voyageur de luxe », « voyageur moyen prix » et « voyageur à budget », tandis qu'un ou plusieurs classificateurs binaires séparés peuvent être entraînés à classer un utilisateur en ligne comme « grand voyageur » et/ou « voyageur d'affaires ». [0016] Par conséquent, une pluralité d'étiquettes associées dans le magasin 20 de données peut être attribuée à chaque voyageur que l'on peut distinguer individuellement, chaque étiquette identifiant le voyageur comme un membre ou non d'une pluralité correspondante de catégories de voyageur prédéterminées sur la base d'une ou plusieurs réservations de voyage antérieure(s) du voyageur que l'on peut distinguer individuellement. Une pluralité distincte de 25 caractéristiques peut être associée à chaque pluralité de catégories de voyageur prédéterminées et l'étape d'entraînement peut comprendre l'entraînement d'un ou de plusieurs classificateurs d'apprentissage automatique à raide de vecteurs de caractéristiques calculés comprenant les valeurs de la pluralité distincte de caractéristiques associées à chaque catégorie de voyageurs prédéterminée correspondante. L'étape déterminante peut comprendre l'exécution par le processeur, de chaque classificateur d'apprentissage automatique pour déterminer et estimer si l'utilisateur non identifié est membre ou non de chaque catégorie de voyageur prédéterminée correspondante. [0017] De préférence, le classificateur d'apprentissage automatique est configure pour générer une valeur correspondant à un niveau de confiance pour estimer si l'utilisateur non identifié est membre ou non de la catégorie de voyageur prédéterminée. Par exemple, la valeur peut être l'estimation d'une probabilité selon laquelle l'utilisateur non identifié est membre de la catégorie. 10 Une décision peut être prise sur la base d'une estimation, par exemple en appliquant un seuil sur la valeur générée. Si la valeur est une estimation de probabilité, le seuil peut être fixé à 0,5. [0018] Selon un mode de réalisation de l'invention, le classificateur d'apprentissage automatique est mis en oeuvre comme une machine 15 d'amplification de gradient. Les personnes de métier dans l'apprentissage automatique remarqueront cependant que d'autres modèles d'apprentissage machine puissent être employés dans des modes de réalisation de l'invention notamment mais sans s'y limiter sur les machines vectorielles de soutien (SVM), les classificateurs de Bayes naïfs, des classificateurs de régression logistiques et 20 les réseaux neuronaux. [0019] Dans un autre aspect, invention fournit un appareil informatique qui met en oeuvre une plate-forme côté demande, l'appareil informatique comprenant un processeur ; 25 au moins un dispositif de mémoire accessible par le processeur; et une interface de communication de données fonctionnellement associée au processeur, dans lequel le dispositif de mémoire contient un corps d'instructions de programme, notamment un classificateur d'apprentissage automatique qui est 10 exécutable par le processeur et configuré pour déterminer et estimer si un utilisateur en ligne non identifié est membre ou non d'une catégorie de voyageurs prédéterminée sur la base d'un vecteur de caractéristiques d'entrée comprenant les valeurs d'une pluralité de caractéristiques, le classificateur ayant été entraîné à l'aide d'un ensemble d'entraînement d'enregistrements de réservations de voyages antérieures d'une pluralité de voyageurs que l'on peut distinguer individuellement au sein desquels chaque voyageur que l'on peut distinguer individuellement est étiqueté comme membre ou non de la catégorie de voyageurs prédéterminée sur la base d'une ou de plusieurs réservations de 10 voyages antérieures du voyageur que l'on peut distinguer individuellement, chaque caractéristique étant sélectionnée de sorte qu'une valeur correspondante de celle-ci puisse être obtenue pour l'utilisateur en ligne non identifié, le corps des instructions de programme inclut par ailleurs des instructions qui, lorsqu'elles sont exécutées par le processeur, amènent l'appareil 15 informatique à mettre en oeuvre un procédé comprenant les étapes : de réception, via l'interface de communication de données, d'un message de demande d'offres incluant les informations sur le site et l'utilisateur de l'utilisateur en ligne non identifié ; de calcul, basé sur les informations reçues sur le site et 20 l'utilisateur, un vecteur de caractéristiques comprenant les valeurs de la pluralité de caractéristiques correspondant à l'utilisateur en ligne non identifié d'exécution du classificateur d'apprentissage automatique à l'aide du vecteur de caractéristiques calculé en tant qu'entrée, pour obtenir une estimation quant au fait de savoir si l'utilisateur non identifié est membre ou non 25 de la catégorie de voyageurs prédéterminée ; et de détermination d'une décision d'offre sur la base d'une estimation. [00201 Selon des modes de réalisation de l'invention, la décision d'offre peut comprendre une décision d'offre positive ou une décision d'offre négative. Dans 30 le cas où la décision d'offre est une décision positive, un prix d'offre correspondant peut être déterminé, et une réponse d'offre comprenant le prix d'offre peut être transmise. Le prix d'offre peut être, par exemple un prix d'offre 11 fixe ou un prix d'offre variable qui est calculé conformément à tout algorithme approprié. [00211 Dans un autre aspect, l'invention fournit un programme informatique comprenant des instructions de code de programme pour exécuter les étapes du 5 procédé conformément au premier aspect, si ledit programme est exécuté sur un ordinateur. Les instructions de codes de programme peuvent, par exemple être stocké sur un support tangible, lisible par machine. [0022] D'autres aspects, avantages et caractéristiques des modes de réalisation de l'invention seront apparents aux personnes du métier concernées à 10 partir de la description suivante de divers modes de réalisation. On remarquera cependant que l'invention ne se limite pas aux modes de réalisation décrits qui sont fournis dans le but d'illustrer les principes de l'invention, tels que définis dans les précédentes déclarations et dans les revendications annexées, et d'assister les personnes de métier dans la mise en pratique de ces principes. 15 BRÈVE DESCRIPTION DES DESSINS [0023] Des modes de réalisation de l'invention sont à présent décrits en référence aux dessins, dans lesquelles les chiffres de référence similaires se réfèrent aux caractéristiques similaires ; et dans lesquels La Figure 1 est un diagramme schématique illustrant un système en 20 réseau exemplaire mettant en oeuvre l'invention ; La Figure 2 montre une ligne temporelle de communication entre un dispositif utilisateur, un serveur Web et un serveur d'échange de publicités, et une DSP mettant en oeuvre l'invention ; La Figure 3 est un diagramme schématique illustrant un système pour 25 l'entraînement hors-ligne d'un modèle d'apprentissage automatique mettant en oeuvre l'invention La Figure 4 montre un organigramme d'un procédé d'entraînement hors-ligne mettant en oeuvre l'invention ; 12 La Figure 5 montre un organigramme d'un procédé de détermination d'une décision d'offre par une DSP mettant en oeuvre l'invention; La Figure 6 est une courbe caractéristique de fonctionnement du récepteur (ROC) pour un classificateur de grands voyageurs mettant en oeuvre l'invention ; et La Figure 7 est une courbe ROC exemplaire pour un classificateur de voyageurs d'affaires mettant en oeuvre l'invention DESCRIPTION DÉTAILLÉE DES MODES DE RÉALISATION [0024] La Figure 1 est un diagramme bloc illustrant un système en 10 réseau 100 exemplaire incluant un serveur de plateforme côté demande 102 (DSP) qui est configure pour mettre en oeuvre un procédé de détermination d'une offre de placement de contenu publicitaire selon un mode de réalisation de l'invention. Le serveur DSP 102 peut comprendre un système informatique ayant une architecture conventionnelle. En particulier, le serveur DSP 102, comme 15 illustré, comprend un processeur 104. Le processeur 104 est associé de façon opérationnelle à un dispositif de mémoire/stockage non volatile 106, par ex. par l'intermédiaire d'un ou de plusieurs bus d'adresses/de données 108, comme indiqué. Le stockage non volatile 106 peut être un lecteur de disque dur, et/ou peut inclure une mémoire non volatile à semi-conducteurs telle qu'une ROM, un 20 mémoire flash, un disque statique à semi-conducteurs (SSD) ou similaire. Le processeur 104 est également interface avec le stockage volatile 110, tel qu'une RAM, qui contient les instructions de programme et les données transitoires liées au fonctionnement du serveur DSP 102. [0025] Dans une configuration conventionnelle, le dispositif de stockage 106 25 maintient le programme connu et le contenu des données relatif au fonctionnement normal du serveur DSP 102. Par exemple, le dispositif de stockage 106 peut contenir des programmes de système d'exploitation et des données ainsi qu'un autre logiciel d'application exécutable nécessaire pour les fonctions visées du serveur d'authentification 102. Le dispositif de stockage 106 13 contient également des instructions de programme qui, lorsqu'elles sont exécutées par le processeur 104, amènent le serveur DSP 102 à effectuer des opérations liées à un mode de réalisation de l'invention, telles que décrites plus en détail ci-après, et en référence aux Figures 2 et 5 en particulier. En fonctionnement, les instructions et les données conservées sur le dispositif de stockage 106 sont transférées à la mémoire volatile 110 pour exécution sur demande. [0026] Le processeur 104 est également associé de manière opérationnelle à une interface de communication 112 de manière conventionnelle. L'interface de 10 communication 112 facilite l'accès à un réseau de communication de données étendu, tels qu'Internet 116. [0027] En utilisation, te dispositif de stockage 110 contient un corps correspondant 114 d'instructions de programme transféré â partir du dispositif de stockage 106 et configuré pour exécuter le traitement et d'autres opérations 15 mettant en oeuvre les caractéristiques de la présente invention. Les instructions de programme 114 comprennent une contribution technique spécifique à l'état de la technique conformément à l'invention, comme décrit plus en détail ci-dessous. [0028] Concernant l'aperçu précédant du serveur DSP 102 et d'autres systèmes et dispositifs de traitement décrit dans la présente spécification, les 20 termes tels que « processeur », « ordinateur », etc, sauf si le contexte exige Je contraire, doivent être compris comme faisant référence à une gamme de mise en oeuvre possible de dispositifs, d'appareils et de systèmes comprenant une combinaison de matériel et de logiciel. Cela inclut des dispositifs et appareils à processeur unique et à processeurs multiples, notamment les dispositifs 25 portables, les ordinateurs du bureau et divers types de systèmes de serveurs, notamment les plates-formes matérielles et logicielles coopérantes qui peuvent être coiocalisées ou distribuées. Les processeurs physiques incluent des CPU à usage général, des processeurs de signaux numériques, des unités de traitement graphique (CPU), et/ou d'autres dispositifs logiciels appropriés pour une 14 exécution efficace des programmes et algorithmes requis. Les systèmes informatiques peuvent inclure des architectures informatiques personnelles conventionnelles ou d'autres plates-formes matérielles à usage général. Le logiciel peut inclure un logiciel de système d'exploitation à source ouverte et/ou commercialement disponible en combinaison avec divers programmes de services et d'application. Autrement, des plates-formes informatiques ou de traitement peuvent comprendre des architectures logicielles et/ou matérielles personnalisées. Pour une extensibilité améliorée, les systèmes de calcul et de traitement peuvent comprendre des plates-formes d'informatique en nuage, 10 permettant aux ressources logicielles physiques d'être allouées dynamiquement en réponse aux demandes de services. Alors que toutes ces variations relèvent de la présente invention, pour faciliter l'explication et la compréhension, les modes de réalisation exemplaires décrits dans les présentes se basent sur des plates-formes de calcul à processeur unique et à usage général, des plates- 15 formes de systèmes d'exploitation communément disponibles et/ou des produits de consommation largement disponibles tels que les PC de bureau, les ordinateurs portables, les smartphones, les tablettes, etc. [0029] En particulier, le terme « unité de traitement » est utilisé dans cette spécification (notamment les revendications) pour faire référence à toute 20 combinaison appropriée de matériel et de logiciel configuré pour réaliser une tâche particulière définie, telle que l'accès et le traitement hors-ligne ou en ligne de données, l'exécution d'étapes d'entraînement d'un modèle d'apprentissage automatique ou l'exécution d'étapes de classification d'un modèle d'apprentissage automatique. Une telle unité de traitement peut comprendre un 25 module de codes exécutables s'exécutant en un seul emplacement sur un dispositif de traitement unique, ou peut comprendre des modules de code exécutable coopérants qui s'exécutent dans de multiples emplacements et/ou sur de multiples dispositifs de traitement. Par exemple, dans certains modes de réalisation de l'invention, la classification et le traitement de décision de l'offre 30 peuvent être entièrement réalisés par l'exécution du code sur le serveur DSP 102, alors que dans d'autres modes de réalisation le traitement 15 correspondant peut être réalisé de manière distribuée sur une pluralité de serveurs DSP. [0030] Les composants logiciels, par ex. les instructions de programme 114, mettant en oeuvre les caractéristiques de l'invention peuvent être développées à l'aide de tout langage de programmation approprié, environnement de développement ou combinaison de langages et d'environnements de développement, comme cela sera familier aux personnes de métier dans l'ingénierie des logiciels. Par exemple, logiciel approprié peut être développé à l'aide du langage de programmation C, du langage de programmation Java, du 10 langage de programmation C++, du langage de programmation Go et/ou d'une gamme de langages appropriés pour la mise en oeuvre du réseau ou de services basés sur le Web, tels que JavaScript, HTML, PHP, ASP, JSP, Ruby, Python, Perl etc. Ces exemples ne sont aucunement limitatifs et on remarquera que des langages ou systèmes de développement appropriés peuvent être employés, 15 conformément aux exigences du système. Les descriptions, diagrammes bloc, organigrammes, etc présentés dans la présente spécification sont fournis, à titre d'exemple, pour permettre aux personnes de métier dans l'ingénierie logicielle et l'apprentissage automatique de comprendre et d'apprécier les caractéristiques, la nature et l'étendue de l'invention, et de mettre à exécution un ou plusieurs modes 20 de réalisation de l'invention en mettant en oeuvre le code logiciel approprié selon cette révélation sans exercer une ingéniosité inventive supplémentaire. [0031] Revenant à la Figure 1, le système 100 comprend par ailleurs des serveurs DSP supplémentaires, par ex. 118, 120 qui, en fonctionnement, rivalisent avec le serveur DSP 102 pour offrir le placement de contenu publicitaire 25 dans des encarts en ligne (par ex., pour les « impressions ») offertes via un serveur d'échange de publicités 122. Le serveur d'échange de publicités 122 met en oeuvre une place de marché numérique permettant aux annonceurs et aux éditeurs de sites Web et autres contenu en ligne d'acheter et de vendre de l'espace publicitaire sous la forme d'une vente aux enchères en ligne en temps 30 réel pendant laquelle chaque serveur DSP 102, 118, 120 est un soumissionnaire 16 automatique à grande vitesse Le serveur d'échange de publicités 122 comprend une base de données 124 dans laquelle il conserve les détails des prestataires de contenus en ligne (serveurs Web) et annonceurs (DSP) dans le but d'exploiter une place de marché publicitaire numérique. Les fonctions des plates-formes 5 d'échange de publicités telles que DoubleClick TM (détenue par GoogleTM), AppNexus TM, MicrosoftTM Ad Exchange Tm et OpenXTM sont bien connues et ne seront par conséquent quand pas décrites plus en détail dans les présentes, autrement que nécessaire pour illustrer de manière adéquate le fonctionnement des modes de réalisation de l'invention. 10 [0032] Le système 100 comprend par ailleurs des dispositifs de terminal utilisateur, représentés par exemple par le dispositif de terminal 126. Les dispositifs de terminal 126 peuvent être, par exemple, des PC de bureau ou portables, des Smartphones, des tablettes ou d'autres dispositifs informatiques personnels, et chacun comprend un processeur 128 interfacé, par ex. par 15 l'intermédiaire d'un bus d'adresses/de données 130, avec un stockage volatile 132, un stockage non volatile 134 et au moins une interface de communication de données 136. Le processeur 128 est également interfacé à une ou plusieurs interfaces d'entrée/sortie (I/O) d'utilisateur 140. Le stockage volatile 132 contient des instructions de programmes et des données transitoires 20 liées au fonctionnement du dispositif de terminal 126. [0033] Le stockage du dispositif de stockage 132, 134 peut contenir un programme et le contenu de données relatif au fonctionnement normal du dispositif 126. Cela peut inclure des programmes de système d'exploitation et des données (par ex. associés à Windows, Android, iOS, Mac0S. Linux ou autre 25 système d'exploitation), ainsi qu'un autre logiciel d'application exécutable généralement non lié à la présente invention. Le stockage 132 inclut également des instructions de programme 138 qui, lorsqu'elles sont exécutées par le processeur 128 permettent au dispositif de terminal de fournir à l'utilisateur l'accès à du contenu en ligne. Tandis que de nombreuses applications sont 30 connues pour fournir un tel accès, pour la simplicité de la présente description, il 17 est supposé que les instructions de programme 138 mettent en oeuvre un navigateur Web ayant une interface utilisateur graphique (GUI) présentée via l'interface I/O utilisateur 140. [0034] Par conséquent, si un utilisateur dispositif de terminal 126 accède à un 5 serveur Web 142, l'affichage 144 d'une page Web correspondante est généré par l'intermédiaire du dispositif UI 140. L'affichage 144 inclut le contenu du site Web 146 et une ou plusieurs encarts publicitaires, par ex. 148, 150. Un nombre d'étapes de communication ont ensuite lieu afin de remplir ces encarts, c.-à-d. pour fournir aux annonceurs en ligne des impressions publicitaires au sein de 10 l'affichage la page Web 144. Ces étapes de communication sont maintenant décrites en référence à la ligne temporelle 200 illustrée à la Figure 2. [0035] Initialement, le terminal utilisateur 126 par l'intermédiaire de l'application de navigateur Web d'exécution 138, en réponse à une entrée d'utilisateur, transmet 202 une demande HTTP au serveur Web 142 qui inclut une 15 URL du contenu Web souhaité. Le serveur Web 142 répond en transmettant 204 le contenu, par ex. une page Web au format HTML au dispositif utilisateur 126. Les personnes de métier dans la programmation Web noteront que la population complète et le rendu l'affichage d'une page Web 144 peuvent nécessiter de multiples demandes et réponses, et peuvent impliquer d'autres transactions avec 20 le serveur Web 142 et/ou avec d'autres serveurs en ligne, tels que les serveurs de réseau de distribution de contenu (CDN) et autres serveurs Web fournissant du contenu intégré. À des fins de simplicité et pour faciliter l'accent sur les communications mettant en oeuvre des caractéristiques de la présente invention, toutes lesdites transactions supplémentaires connues sont représentées par une 25 seule communication exemplaire 206 à la Figure 2. [0036] Afin d'obtenir le contenu publicitaire pour remplir les encarts 148, 150, la page Web transmise par le serveur Web 142 dispositif utilisateur 126 inclus typiquement une référence hypertexte (« href ») invitant le navigateur 138 récupérer le contenu du serveur d'échange de publicité 122 conformément à une 18 interface de programmation d'application (API) définie et fournie par l'opérateur concerné du serveur 122. Par conséquent, le dispositif utilisateur 126 transmet 208 une demande HTTP au serveur d'échange de publicités 122. La demande inclut les informations du site Web et les informations utilisateur liées à 5 l'utilisateur du dispositif de terminal 126. Les informations utilisateurs disponibles peuvent inclure des informations que le serveur Web 142 a collectées et peuvent inclure des informations côté client, telles que l'identité du dispositif et du navigateur et des détails techniques, des informations d'identification et des contenus de cookies de navigateur, et similaires. De nombreux mécanismes en 10 ligne pour la collecte, la conservation et le suivi des informations utilisateurs et sur le dispositif sont bien connus et disponibles pour les personnes de métier dans la programmation Web et ne seront par conséquent pas décrits plus en détail ici. [0037] Le serveur d'échange de publicités 122 reçoit la demande, identifie les 15 serveurs DSP 102, 118, 120 pertinents dans sa base de données 124 et transmet 210 les messages demande d'offres à chaque serveur DSP sélectionné. Un tel message de demande d'offres, incluant les informations du site et de l'utilisateur, est reçu sur le serveur DSP 102 mettant en oeuvre la présente invention, qui exécute un processus 212 conformément à sa programmation 20 spécifique 114 afin de classer l'utilisateur et d'arriver à une décision d'offre. Au cas où une décision est prise pour faire une offre pour l'impression proposée, et une valeur d'offre est déterminée, le serveur DSP102 transmet alors 214 l'offre au serveur d'échange de publicités 122. [0038] Le serveur d'échange de publicités 122 reçoit toutes les offres 25 transmises à partir des serveurs DSP, notamment le serveur 102 et sélectionne une offre gagnante. Il récupère ensuite le contenu publicitaire correspondant à l'offre gagnante à partir de sa base de données 124 et transmet 216 le contenu publicitaire au dispositif utilisateur 126 pour un rendu dans l'encart publicitaire correspondante, par ex. 148 ou 150. 19 [0039] Il est bien connu que la vitesse de chargement de la page est une caractéristique importante d'un site Web du point de vue de l'utilisateur, et qu'il n'est pas souhaitable que la durée requise de chargement complet d'une page Web soit excessive. Typiquement, il est préférable que ie temps de chargement 5 ne dépasse pas quelques secondes, par ex. 3 secondes 218. Il existe, comme décrit ci-dessus, de nombreuses étapes nécessaires pour servir intégralement tout le contenu d'une page web complexe, ce qui peut impliquer des serveurs multiples sur l'Internet global. fi est, par conséquent critique que la durée du processus d'offre facilité par le serveur d'échange publicitaire 202 soit strictement 10 limitée. Actuellement, on considère qu'il est souhaitable que le serveur DSP 102 prenne une décision d'offre en quelques dizaines de millisecondes, par exemple en moins de 30 millisecondes 220. Cette décision doit être prise avec des informations utilisateur limitées et compte tenu du fait qu'une mauvaise décision peut avoir des conséquences significatives pour l'annonceur. Par exemple, si le 15 serveur DSP détermine faussement que l'utilisateur est une cible souhaitable pour une publicité en particulier (c.-à-d. calcule un « faux positif »), il peut placer une offre gagnante relativement élevée et engager un coût réel avec peu ou pas de potentiel de retour. Inversement, si le serveur DSP détermine faussement que l'utilisateur n'est pas une cible souhaitable pour la publicité (c.-à-d. calcule un 20 « faux négatif »), il ne peut placer aucune offre, ou une offre à faible perte et amener l'annonceur à manquer une opportunité pour obtenir une impression avec un réel potentiel de retour, [0040] Afin d'atteindre une prise de décision de qualité à grande vitesse dans le contexte des services de réservation de voyages, les modes de réalisation de 25 la présente invention emploient une approche d'apprentissage automatique. En particulier, les données hors ligne, telles que les contenus d'une base de données clients contenant des enregistrements détaillés de clients et de réservation de voyages, peuvent être utilisées pour classer les voyageurs conformément à un ou plusieurs segments de marché ou catégories. Sans 30 limitation, les catégories ou segments appropriés peuvent inclure « grand voyageur », « voyageur d'affaires », « voyageur de luxe », « voyageur à budget » et « voyageur intermédiaire ». Les segments et les caractéristiques appropriés, 20 peuvent être déterminés conformément à une compréhension du marché pour des services de voyage. Par exemple, un voyageur individuel peut être étiqueté comme « grand voyageur » sur la base du nombre de voyages effectués sur une période prédéterminée, telle qu'une année civile, comme « voyageur d'affaires » sur la base d'un nombre ou d'un taux de voyage d'affaires effectués ou comme « voyageur de luxe » sur la base du coût moyen de chaque voyage effectué. [0041] La méthode avec laquelle les catégories sont déterminées n'est pas pertinente pour la mise en oeuvre du système d'apprentissage automatique mettant en oeuvre l'invention et peut être réalisée manuellement, de manière 10 heuristique ou par tout autre moyen approprié. Le résultat final requis est que chaque enregistrement de réservation de voyages soit étiqueté avec au moins une catégorie. Les enregistrements de réservation et les catégories associées peuvent ensuite former la base de l'entraînement d'un modèle d'apprentissage automatique mettant en oeuvre l'invention. 15 [0042] La Figure 3 est un diagramme bloc illustrant un système 300 pour l'entraînement hors ligne d'un modèle d'apprentissage automatique. Le système 300 inclut un ou plusieurs systèmes informatiques haute performance 302 comprenant de préférence le matériel et/ou le logiciel qui est optimisé pour une exécution efficace d'un ou de plusieurs modèles 20 d'apprentissage automatique. Chaque système informatique 302 comprend un processeur central 304 interfacée, par ex. par l'intermédiaire d'un bus d'adresses/de données 306, avec un stockage volatile 308, un stockage non volatile 310 et au moins une interface de communication de données 312. Le système informatique peut également inclure un ou plusieurs GPU (non 25 affiché(s)), compte du fait que certains modèles d'apprentissage automatique, tels que les modèles de réseau neuronal et d'apprentissage en profondeur sont connus pour être efficacement mis en oeuvre à l'aide d'algorithmes hautement parallèles vectorisés pour lesquels les GPU sont particulièrement bien adaptés. Le stockage volatile 308 contient des instructions de programmes et des données 30 transitoires liées au fonctionnement du système informatique 302. 21 [0043] Le stockage du système informatique 308, 310 contenir un programme et du contenu de données pertinents pour son fonctionnement normal, pouvant inclure des programmes de systèmes d'exploitation et des données (par ex. associés à Windows, MacOS, Linux ou autre système d'exploitation) ainsi qu'une autre application exécutable et/ou logiciel système généralement non lié â la présente invention. Le stockage 308 inclut également des instructions de programme 324 qui, lorsqu'elles sont exécutées par le processeur 128 mettent en oeuvre un processus d'entraînement hors-ligne pour un modèle d'apprentissage automatique. En particulier, les enregistrements de réservation de voyages et les 10 catégories associées peuvent être récupérés à partir d'un serveur de base de données hors ligne 316 et employés pour l'entraînement du modèle d'apprentissage automatique. [0044] La Figure 4 est un organigramme 400 illustrant un procédé d'entraînement hors ligne mettant en oeuvre l'invention, tel qu'il peut être mis en 15 oeuvre par le système informatique 302. Conformément à ce procédé, à l'étape 402 les enregistrements de réservation de voyages et les catégories associées (qui peuvent être alternativement appelés « étiquettes », « classes » ou « classifications » en fonction du contexte) sont récupérés dans la base de données 316. À l'étape 404, un ensemble de vecteurs de caractéristiques est 20 calculé à l'aide des contenus des enregistrements de réservation de voyages. C'est une étape importante du procédé, qui a un effet de liaison des données hors ligne détaillées correspondant aux voyageurs que l'on peut distinguer individuellement disponibles dans la base de données 316 avec des informations utilisateurs plus limitées que celles disponibles dans le contexte en ligne, c.-à-d. 25 telles que transmises 210 au DSP 102. [00451 Plus particulièrement, une caractéristique est un élément d'information (par ex., une valeur numérique, catégorique ou booléenne) qui peut provenir à la fois des données hors ligne détaillées et des données en ligne plus limitées. Par exemple, les données en ligne pertinentes pour les services de réservation de 30 voyages et capturées à partir des activités en ligne d'un utilisateur non identifié 22 liées à un voyage actuel ou éventuel (par ex. basées sur des demandes de recherches, des recherches le site de réservation ou demandes, et/ou des réservations en ligne actuelles) peuvent inclure l'origine du voyage, la destination du voyage, la date de départ, la date arrivée et la durée du voyage. Cependant, les détails supplémentaires qui peuvent être disponibles dans la base de données hors ligne 316, tels que le nom du voyageur, la classe de voyage, le coût du voyage, l'historique du voyageur, et cætera ne sont généralement pas disponibles dans le contexte en ligne. [0046] Un vecteur de caractéristiques est un ensemble de caractéristiques 10 pouvant être dérivées à la fois des données en ligne et hors ligne qui sont collectivement utilisées pour l'entraînement du modèle d'apprentissage automatique et pour la classification en ligne ultérieure par le serveur DSP 102. La conception/sélection des caractéristiques est une étape importante dans te développement de systèmes d'apprentissage automatique efficaces, et des 15 exemples de vecteurs de caractéristiques développés conformément aux modes de réalisation de l'invention sont décrits plus en détail ci-dessous, en référence aux Figures 6 et 7. [0047] À l'étape 406, un modèle d'apprentissage automatiquement entraîné est initialisé. Cette étape a impliqué la création et l'initialisation de structures de 20 données comprenant le modèle, ainsi que le réglage des paramètres/hyperparamètres pertinents pour le processus d'entraînement. Elle peut égaiement impliquer la sélection de modèles et dans certains modes de réalisation de modèle peut en effet associer de multiples modèles (apprentissage d'ensemble). Â l'étape 408, le système informatique 302 exécute une ou 25 plusieurs procédures d'entraînement conformément à l'algorithme ou aux algorithmes d'apprentissage automatique sélectionné(s). L'entraînement implique la saisie d'au moins une partie des vecteurs de caractéristiques calculés et des étiquettes correspondantes comme un ensemble d'entraînement, et l'application d'une procédure d'entraînement adaptée pour minimiser une fonction objective 30 qui reflète une précision du modèle entraîné en classant les vecteurs de 23 caractéristiques conformément aux étiquettes connues. Ensuite, à l'étape 410, le modèle entraîné peut être testé à l'aide d'un ensemble de tests, et/ou d'un ensemble de validation croisée qui peut, par exemple, comprendre une partie des vecteurs de caractéristiques calculées et des étiquettes correspondantes 5 retenues à partir de l'étape d'entraînement 408 à cette fin. [0048] À l'étape de décision 412, les résultats de l'étape de test 410 peuvent être évalués pour déterminer s'ils répondent à un critère approprié de qualité (dont les exemples sont décrits ci-dessous en référence aux Figures 6 et 7). Sinon, alors à l'étape 414, les paramètres/hyperparamètres du modèle peuvent 10 être mis à jour et le modèle est réinitialisé pour un nouvel entraînement à l'étape 408. Autrement, si le modèle est considéré comme étant de qualité suffisante, une représentation du modèle entraîné est sauvegardée à l'étape 416. Cette représentation est apte à être chargée et exécutée par le serveur DSP, comme décrit ci-dessous en référence à la Figure 5. 15 [0049] À titre d'exemple, dans un mode de réalisation de l'invention particulier, un modèle d'apprentissage automatique eXtreme Gradient Boosting (XGBoost) est employé, à l'origine développé par Tianqi Chen et Carlos Guestrin, à l'université de Washington. Avantageusement, le système XGBoost est hautement extensible, largement utilisé et testé, et une mise en oeuvre dans 20 C/C++ est disponible en tant que paquet de source ouverte, avec des liens à d'autres langages utilisés dans le calcul technique tels que Python, R et Julia. Les résultats de ce mode de réalisation sont présentés ci-dessous en référence aux Figures 6 et 7. [0050] En passant à la Figure 5, un organigramme 500 d'un procédé de 25 détermination d'une décision d'offre par le serveur DSP 102 est présenté. À l'étape 502, les informations d'un utilisateur identifié et du site sont reçues, c.-àpar l'intermédiaire de la transmission 210 à partir du serveur d'échange de publicités 122. Ces informations sont utilisées à l'étape 504 pour calculer un vecteur de caractéristiques qui est saisi dans le modèle d'apprentissage 24 automatique exécuté à l'étape 506. En particulier, cette exécution de modèles se base sur la représentation sauvegardée à l'étape 406 du processus 400. La sortie du modèle est une estimation de la classification de l'utilisateur basée sur le vecteur de caractéristiques calculé qui peut être, en cas d'algorithme XGBoost par exemple, une valeur numérique générée représentant un niveau de confiance pour estimer si l'utilisateur non identifié est membre ou non de la catégorie pour laquelle modèle était entraîné. Par exemple, la valeur peut être l'estimation d'une probabilité que l'utilisateur en ligne non identifié est membre de la catégorie. [0051] À l'étape 510, une décision d'offre est prise sur la base de l'estimation. 10 La décision peut inclure le fait de déterminer s'il faut ou non faire une offre, et/ou un prix particulier à offrir pour l'impression disponible. Par exemple, un seuil peut être appliqué à la valeur générée, de sorte que si la valeur est en dessous du seuil alors aucune offre n'est faite. Dans certains modes de réalisation, un montant d'offre peut être déterminé sur la base de la magnitude de la valeur 15 générée, de sorte qu'un prix plus élevé est proposé si le modèle indique une confiance plus élevée dans la classification de l'utilisateur non identifié. Si une décision est prise pour faire une offre pour l'impression, les informations de l'offre sont renvoyées 214 au serveur d'échange de publicités 122 à l'étape 512. [0052] L'utilisation d'un modèle d'apprentissage automatique, tel que décrit ci- 20 dessus, a de nombreux avantages, et règle les problèmes particuliers présents dans des approches antérieures de l'art. Premièrement, il surmonte les limites en liant les données hors ligne et en ligne. En particulier, le modèle d'apprentissage automatique lui-même qui est entraîné sur des données et ensuite exécuté sur les données en ligne, devient efficacement le moyen de liaison. Deuxièmement, il 25 n'est pas pertinent que les utilisateurs en ligne non identifiés ne puissent pas correspondre à l'un des quelconques clients ayant des enregistrements dans la base de données hors ligne. Par conséquent, 100 % des utilisateurs en ligne peuvent être classés par le modèle, tant que les informations minimum requises pour calculer les vecteurs de caractéristiques sont disponibles. Troisièmement, le 30 procédé et le système évitent les contraintes de confidentialité, parce que la 25 représentation enregistrée du modèle d'apprentissage automatique entraîné comprend des structures de données qui ne contiennent aucune donnée personnelle identifiable individuellement de tout client dans la base de données hors ligne. Les informations déployées sur le serveur DSP 102 sont par conséquent entièrement anonymisées. Quatrièmement, bien que le processus d'entraînement puisse être très intensif du point de vue des calculs, exigeant des ressources de calcul haute performance et des périodes étendues, l'exécution du modèle entraîné résultant sur un seul vecteur de caractéristiques peut être extrêmement rapide, satisfaisant facilement l'exigence de calcul d'une décision 10 en 30 millisecondes ou moins. [0053] Afin d'illustrer l'efficacité des modes de réalisation de l'invention, un certain nombre d'exemples seront maintenant décrits. EXEMPLE 1 [0054] Aux fins de classification des utilisateurs non identifiés comme étant 15 des « grands voyageurs » ou « pas des grands voyageurs », l'ensemble de caractéristiques suivant a été développé : distance entre l'origine et la destination nombre de jours avant le départ longitude d'origine 20 - latitude d'origine longitude de destination latitude de destination 26 jour de départ de la semaine (DOW) jour d'arrivée de la semaine [0055] Une base de données commerciale a été employée pour l'entraînement hors ligne, contenant des enregistrements nettoyés dans lesquels les voyageurs que l'on peut distinguer individuellement ont été rapprochés avec un total de 1 328 694 voyages. Dans cette base de données, un « grand voyageur » a été défini comme étant une personne qui a fait cinq voyages ou plus dans toute période de 12 mois. À l'aide de ces définitions, 5,3 % des voyages dans l'ensemble de données ont été automatiquement étiquetés comme des 10 voyages de « grand voyageur ». Un modèle XGBoost avec 489 arbres a été entraîné à l'aide des vecteurs de caractéristiques comprenant l'ensemble de caractéristiques ci-dessus, calculé à l'aide des voyages étiquetés. Une courbe ROC 600 en résultant est présentée à la Figure 6, sur laquelle l'axe horizontal 602 représente le faux taux positif (FPR), l'axe vertical 604 représente 15 le vrai taux positif (TPR) et la ROC 606 générée en balayant le seuil entre 0,0 et 1,0 au niveau duquel la sortie de modèle est déterminée pour indiquer un « grand voyageur ». Dans ce cas, l'AUROC 608 est 0,08 qui compare avec la valeur de 0,5 qui serait obtenue en prenant une décision purement aléatoire et est considérée comme une bonne performance du classificateur d'apprentissage 20 automatique. À l'aide d'un seuil de décision de 0,5, le TPR (grands voyageurs classés correctement) pour ce modèle est de 66 % et le FPR (pas des grands voyageurs mal classés) est de 22 %. Le modèle peut par conséquent être employé pour les décisions d'offres permettant d'obtenir des résultats significativement meilleurs que de la chance pure. 25 EXEMPLE 2 [0056] Aux fins de classification des utilisateurs identifiés comme étant des « voyageurs d'affaires » ou « pas des voyageurs d'affaires » (c.-à-d. « des voyageurs de loisir »), l'ensemble de caractéristiques suivantes a été développé : 27 durée du voyage (nombre de jours) jour de départ de la semaine jour d'arrivée de la semaine nombre de jours avant le départ 5 inclut la nuit de samedi (booléen) [00571 Concernant les données disponibles en ligne pour les voyageurs que l'on peut distinguer individuellement (121 146 voyages provenant de la base de données commerciale décrite ci-dessus), 51,3 % des exemples ont été identifiés comme des voyages d'affaires. Un modèle XGBoost a été à nouveau entraîné 10 sur les vecteurs de caractéristiques générés à partir de cet ensemble de données. Une ROC 700 en résultant est présentée à la Figure 6, sur laquelle l'axe horizontal 702 représente le FPR, l'axe vertical 704 représente le TPR et la ROC 606 est générée en balayant le seuil au niveau duquel la sortie de modèle est déterminée pour indiquer un « voyageur d'affaires » entre 0,0 et 1,0. Dans ce 15 cas, l'AUROC 703 est 0,82 et est à nouveau considérée comme une bonne performance du classificateur d'apprentissage automatique. EXEMPLE 3 [0058] Aux fins de classification des utilisateurs non identifiés comme étant des « voyageurs de luxe » ou « voyageurs à budget » ou « voyageurs 20 intermédiaires », l'ensemble de caractéristiques suivant a été développé : la ville d'origine de l'achat d'une parité de puissance (PPP) basée sur le produit domestique brut (GDP) 28 le pays d'origine de l'achat d'une parité de puissance basée sur le GDP la ville de destination de l'achat d'une parité de puissance basée sur le GDP le pays de destination de l'achat d'une parité de puissance basée sur e GDP - le jour de départ de la semaine - le jour d'arrivée de la semaine - inclut la nuit de samedi (booléen) durée du voyage (nombre de jours) 10 - heure de départ (nombre de jours - voyage intérieur (booléen) voyage international (booléen) [0059} A partir d'un ensemble de données initiales de plus de 50 000 exemples, 4 723 voyages ont été sélectionnés qui pourraient être bien identifiés 15 comme « de luxe » ou « à budget ». Ces voyages comportent 3,15 % et 5,84 % de l'ensemble de données totales respectivement, avec tous les autres (91,01 %) considérés comme étant « intermédiaires ». Ces 4 723 exemples ont été utilisés pour générer des vecteurs de caractéristiques comprenant l'ensemble de caractéristiques ci-dessus afin d'entraîner un modèle binaire XGBoost. Le modèle 20 a été configure pour produire une estimation de sortie représentant un niveau de confiance pour savoir si un voyage correspondant à un vecteur de 29 caractéristiques d'entrée est associé à un « voyageur de luxe », sur une échelle de 0,0 à 1,0. L'AUROC qui a été trouvée pour ce classificateur binaire s'est avérée être à 0,83. 10060] Deux seuils ont été établis pour classer les utilisateurs non identifiés 5 dans les catégories « de luxe », « à budget » et « intermédiaire ». En particulier, si l'estimation de sortie du classificateur XGBoost était inférieure à 0,2, l'utilisateur était classé comme étant un « voyageur à budget »; si l'estimation de sortie était supérieure à 0,8, l'utilisateur était classé comme étant un « voyageur de luxe », tous les autres ont été classés comme étant « intermédiaires ». À l'aide de 10 l'ensemble de tests, notamment une gamme complète d'exemples, la matrice de confusion suivante été obtenue. Prédiction Budget De luxe Intermédiaire Budget 585 37 373 De luxe 70 190 268 Intermédiaire 5708 2503 7629 [0061] Par exemple, 36 % des cas « de luxe » ont été correctement prédits, la majorité des classifications erronées (50 % des cas de luxe) étant attribuée à « intermédiaire », tandis que 58,8 % des cas « à budget » ont été correctement 15 classés. CONCLUSION [00621 En résumé, des modes de réalisation de la présente invention fournissent des systèmes et des procédés employant des modèles d'apprentissage automatique pour classer les utilisateurs en ligne identifiés, à 20 l'aide d'informations limitées, dans différentes catégories de voyageurs à l'aide de données d'entraînement dérivées de bases de données contenant des enregistrements liés aux voyageurs que l'on peut distinguer individuellement. De 30 cette manière, les modèles d'apprentissage automatique fournissent efficacement un lien « intelligent » entre les données hors ligne riches et les données en ligne limitées. Les utilisateurs en ligne ne doivent pas avoir été précédemment rencontrés par le système, la classification peut être réalisée pour tout utilisateur 5 tant que les informations minimum requises pour calculer les vecteurs de caractéristiques de modèle sont disponibles. Le système protège la confidentialité, en ce qu'aucune donnée personnelle identifiable individuellement de tout client dans la base de données hors ligne n'est reflétée dans le modèle d'apprentissage automatique déployé. Une fois que le modèle a été entraîné, la 10 classification des utilisateurs en ligne observés récemment peut être extrêmement rapide, par exemple 30 millisecondes ou moins. [0063] Étonnamment, malgré les informations très limitées disponibles sur les utilisateurs non identifiés dans le contexte en ligne, avec une bonne conception de modèle conformément aux principes de l'invention, des modèles avec une 15 bonne puissance prédictive peuvent être développés. Les prédictions générées par les modèles peuvent par conséquent être utilisées avec confiance pour la prise de décision en ligne, en temps réel, à grande vitesse, comme lors d'une offre d'impressions sur une place du marché publicitaire numérique facilitée par un serveur d'échange de publicités. 20 [0064] Il faut noter que tandis que des modes de réalisation particuliers et des variations de l'invention ont été décrits dans les présentes, d'autres modifications et alternatives seront apparentes aux hommes du métier. En particulier, les exemples sont proposés par voie d'illustration des principes de l'invention et pour fournir de nombreux procédés spécifiques et arrangements pour mettre ces 25 principes à exécution. En général, les modes de réalisation de l'invention s'appuient sur la fourniture d'arrangements techniques où la prise de décision en ligne, en temps réel automatique liée à une catégorie de voyageurs ou à un segment sur un utilisateur non identifié est conduite à l'aide d'informations utilisateur limitées sur la base d'un classificateur d'apprentissage automatique qui 31 a été entraîné à l'aide de données hors ligne détaillées de voyageurs que l'on REVENDICATIONS: 1. Un appareil informatique (102) qui met en oeuvre une plate-forme côté demande, l'appareil informatique comprenant : un processeur (104) ; au moins un dispositif de mémoire (106, 110) accessible par le processeur ; et une interface de communication de données (112) connectée de façon opérationnelle au processeur, dans lequel le dispositif de mémoire contient un corps d'instructions de programme (114), notamment un classificateur d'apprentissage automatique qui est exécutable par le processeur et configuré pour déterminer et estimer si un utilisateur en ligne non identifié est membre ou non d'une catégorie de voyageurs prédéterminée sur la base d'un vecteur de caractéristiques d'entrée comprenant les valeurs d'une pluralité de caractéristiques, le classificateur ayant été entraîné à l'aide d'un ensemble d'apprentissage d'enregistrements de réservations de voyages antérieures d'une pluralité de voyageurs que l'on peut distinguer individuellement au sein desquelles chaque voyageur que l'on peut distinguer individuellement été étiqueté comme membre ou non de la catégorie de voyageurs prédéterminée sur la base d'une ou de plusieurs réservations de voyages antérieures du voyageur que l'on peut distinguer individuellement, chacune des caractéristiques ayant été sélectionnée de sorte qu'une valeur correspondante de celle-ci puisse être obtenue pour l'utilisateur en ligne non identifié, le corps des instructions de programme inclut par ailleurs des instructions qui, lorsqu'elles sont exécutées par le processeur, amènent l'appareil informatique à mettre en oeuvre un procédé de classification en temps réel, reliant des données hors ligne riches et des données en ligne limitées, comprenant les étapes : de réception (210), via l'interface de communication de 33 données, d'un message de demande d'offres incluant les informations sur le site utilisateur de l'utilisateur en ligne non identifié ; de calcul (504), basé sur les informations reçues sur le site et sur l'utilisateur, un vecteur de caractéristiques comprenant les valeurs 5 de la pluralité de caractéristiques correspondant à l'utilisateur en ligne non identifié ; d'exécution (506) du classificateur d'apprentissage automatique à l'aide du vecteur de caractéristiques calculé en tant qu'entrée, pour estimer si l'utilisateur non identifié est membre ou non de la catégorie de voyageurs 10 prédéterminée ; et de détermination d'une décision d'offre sur la base d'une estimation. 2. L'appareil informatique selon la revendication 1, dans lequel la réponse d'offre comprend une décision d'offre positive et un prix d'offre, dans lequel les instructions exécutées par le processeur amènent par ailleurs l'appareil 15 informatique à transmettre (214), par l'intermédiaire de l'interface de communication de données (112), une réponse d'offre comprenant le prix d'offre. 3. L'appareil informatique selon la revendication 1 ou 2, dans lequel le classificateur d'apprentissage automatique est configuré pour générer une valeur correspondant à un niveau de confiance pour estimer si l'utilisateur en ligne non 20 identifié est membre ou non de la catégorie de voyageur prédéterminée. 4. L'appareil informatique selon la revendication 3, dans lequel la valeur générée est une estimation de la probabilité que l'utilisateur non identifié est membre la catégorie de voyageurs prédéterminée. 5. L'appareil informatique selon la revendication 3, dans lequel la 25 détermination de la réponse d'offre comprend l'application d'un seuil sur la valeur générée. 34 6. L'appareil informatique selon l'une quelconque des revendications 1 à 5, dans lequel le classificateur d'apprentissage automatique comprend une machine d'amplification de gradient. 7. Un procédé de classification en temps réel, reliant des données hors ligne 5 riches et des données en ligne limitées, mis en oeuvre par ordinateur comprenant : l'accès (402) à au moins un magasin de données en ligne (316) qui contient des enregistrements de réservation de voyages antérieures d'une pluralité de voyageurs que l'on peut distinguer individuellement, dans lequel une 10 étiquette associée dans le magasin de données est attribuée à chaque voyageur que l'on peut distinguer individuellement en tant que membre ou non d'une catégorie de voyageurs prédéterminée basée sur une ou plusieurs réservations de voyages antérieures du voyageur que l'on peut distinguer individuellement ; la détermination d'une pluralité de caractéristiques associées à la 15 catégorie de voyageurs prédéterminée, dans laquelle chaque caractéristique est sélectionnée de sorte qu'une valeur correspondante de celle-ci puisse être obtenue pour un utilisateur non identifié dans un contexte en ligne ; pour chaque enregistrement d'un ensemble d'apprentissage d'enregistrements sélectionnés à partir du magasin de données hors ligne, la 20 calcul (404) d'un vecteur de caractéristiques comprenant les valeurs correspondantes pour la pluralité des caractéristiques ; l'entraînement (408) d'un classificateur d'apprentissage automatique à l'aide des vecteurs de caractéristiques calculés et des étiquettes associées correspondant aux enregistrements dans l'ensemble d'apprentissage ; 25 la réception (210), sur un processeur (104) configuré pour exécuter le classificateur d'apprentissage automatique, d'un vecteur de caractéristiques comprenant les valeurs de la pluralité des caractéristiques correspondant à l'utilisateur non identifié dans le contexte en ligne ; et la détermination (506) et l'estimation, par le processeur exécutant le 35 classificateur d'apprentissage machine, quant au fait de savoir si l'utilisateur non identifié est membre ou un non de la catégorie de voyageurs prédéterminée. 8. Le procédé selon la revendication 7 dans lequel : Une pluralité d'étiquettes associées dans le magasin de données est 5 attribuée à chaque voyageur que l'on peut distinguer individuellement, chaque étiquette identifiant le voyageur comme membre ou non d'une pluralité correspondante de catégories de voyageurs prédéterminées sur la base d'une ou de plusieurs réservations de voyages antérieures du voyageur que l'on peut distinguer individuellement ; 10 une pluralité distincte caractéristique est associée à chaque pluralité des catégories de voyageurs prédéterminées ; l'étape d'entraînement comprend l'entraînement d'un ou de plusieurs classificateurs d'apprentissage automatique à l'aide de vecteurs de caractéristiques calculés comprenant les valeurs de la pluralité distincte de 15 caractéristiques associée à chaque catégorie de voyageur prédéterminée correspondante ; et l'étape de détermination comprend l'exécution, par le processeur, de chacun des classificateurs d'apprentissage automatique pour déterminer et estimer si l'utilisateur non identifié est membre ou non de chaque catégorie de 20 voyageurs prédéterminée correspondante. 9. Le procédé selon la revendication 8, dans lequel les catégories de voyageurs prédéterminées comprennent un ou plusieurs : « grand voyageur », « voyageurs d'affaires », « voyageur de loisirs », « voyageur de luxe », « voyageur à budget » et « voyageur intermédiaire ». 25 10. Le procédé selon l'une quelconque des revendications 7 à 9, dans lequel la catégorie de voyageurs prédéterminée est « grand voyageur », et une ou plusieurs pluralités de caractéristiques est/sont sélectionnées dans le groupe comprenant : 36 la distance entre l'origine et la destination ; l'heure de départ ; la longitude d'origine ; la latitude d'origine ; 5 la longitude de destination ; la latitude de destination ; le jour de départ de la semaine (DOW) ; et le jour d'arrivée de la semaine. 11. Le procédé selon l'une quelconque des revendications 7 à 10, dans lequel 10 la catégorie de voyageurs prédéterminée est « voyageur d'affaires » et/ou « voyageur de loisirs », et une ou plusieurs pluralités de caractéristiques est/sont sélectionnées dans le groupe comprenant : la durée du voyage ; le jour de départ de la semaine ; 15 le jour d'arrivée de la semaine ; l'heure de départ ; et un indicateur indiquant si le voyage inclut la nuit du samedi. 12. Le procédé selon l'une quelconque des revendications 7 à 11, dans lequel la catégorie de voyageurs prédéterminée est « voyageur de luxe », « voyageur à 20 budget » et/ou « voyageur intermédiaire », et une ou plusieurs pluralités de caractéristiques est/sont sélectionnées dans le groupe comprenant : la ville d'origine de l'achat d'une parité de puissance (PPP) basée sur le produit domestique brut (GDP) ; le pays d'origine de l'achat d'une parité de puissance basée sur le GDP ; 25 la ville de destination de l'achat d'une parité de puissance basée sur le GDP le pays de destination de l'achat d'une parité de puissance basée sur le GDP ; le jour de départ de la semaine ; 37 le jour d'arrivée de la semaine ; un indicateur indiquant si le voyage inclut la nuit du samedi ; la durée du voyage ; l'heure de départ ; 5 un indicateur indiquant si le voyage est un voyage intérieur ; et un indicateur indiquant si le voyage est un voyage international. 13. Le procédé selon l'une quelconque des revendications 7 à 12 dans lequel le classificateur d'apprentissage automatique comprend une machine d'amplification de gradient. 10 14. Un programme d'ordinateur comprenant des instructions de code de programme pour exécuter les étapes du procédé selon les revendications 7 à 13 lorsque ledit programme est exécuté sur un ordinateur.