FR3105472A3 - Request analysis system equipped with an identification unit for robotic requests and multiple requests - Google Patents

Request analysis system equipped with an identification unit for robotic requests and multiple requests Download PDF

Info

Publication number
FR3105472A3
FR3105472A3 FR1914979A FR1914979A FR3105472A3 FR 3105472 A3 FR3105472 A3 FR 3105472A3 FR 1914979 A FR1914979 A FR 1914979A FR 1914979 A FR1914979 A FR 1914979A FR 3105472 A3 FR3105472 A3 FR 3105472A3
Authority
FR
France
Prior art keywords
request
requests
processing unit
query
parameters associated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1914979A
Other languages
French (fr)
Other versions
FR3105472B3 (en
Inventor
Mikaila TOKO WOROU
Alexei TROUSSOV
Guillaume Le Grand
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amadeus SAS
Original Assignee
Amadeus SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amadeus SAS filed Critical Amadeus SAS
Priority to FR1914979A priority Critical patent/FR3105472B3/en
Publication of FR3105472A3 publication Critical patent/FR3105472A3/en
Application granted granted Critical
Publication of FR3105472B3 publication Critical patent/FR3105472B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0609Buyer or seller confidence or verification

Abstract

L’invention se rapporte à un système informatique d’analyse de requêtes (100) configuré pour analyser un ensemble de requêtes reçues par un système informatique fournisseur de produits (200), le système fournisseur de produits (200) étant connecté au système d’analyse de requêtes (100) et étant configuré pour délivrer un ensemble de recommandations de produits en réponse à une requête, chaque requête comprenant un ensemble de paramètres associés à la requête. Le système d’analyse de requêtes (100) est configuré pour fournir un ensemble d’informations à partir d’au moins une partie de l’ensemble de paramètres de chaque requête. Le système d’analyse de requêtes (100) comprend une unité de traitement de requêtes (150), l’unité de traitement de requêtes (150) étant configurée pour détecter des requêtes émises par des robots ou des multi-requêtes. Figure pour l’abrégé : Fig. 1The invention relates to a request analysis computer system (100) configured to analyze a set of requests received by a product supplier computer system (200), the product supplier system (200) being connected to the product system. analyzing requests (100) and being configured to deliver a set of product recommendations in response to a request, each request comprising a set of parameters associated with the request. The query analysis system (100) is configured to provide a set of information from at least a portion of the set of parameters for each query. The request analysis system (100) includes a request processing unit (150), the request processing unit (150) being configured to detect requests from bots or multi-requests. Figure for the abstract: Fig. 1

Description

Système d’analyse de requêtes équipé d’une unité d’identification de requêtes robotiques et de requêtes multiplesRequest analysis system equipped with an identification unit for robotic requests and multiple requests

L’invention concerne de manière générale les systèmes d’analyse permettant de fournir des informations pertinentes sur des requêtes effectuées par des utilisateurs auprès d’un système informatique fournisseur de produits.The invention relates generally to analysis systems for providing relevant information on requests made by users to a computer system supplier of products.

Dans un système informatique fournisseur de produits, un utilisateur peut soumettre une requête depuis un dispositif client (dispositif utilisateur) à un dispositif serveur via un réseau de communication pour obtenir un produit. La requête comprend un ensemble de paramètres de requêtes pouvant être obligatoires ou optionnels.In a product provider computer system, a user can submit a request from a client device (user device) to a server device via a communications network to obtain a product. The query includes a set of query parameters that can be mandatory or optional.

Les paramètres de requêtes peuvent ensuite être analysés par des systèmes informatiques d’analyse de requêtes, qui permettent de présenter une vue synthétique des informations associées aux paramètres de requête.The query parameters can then be analyzed by query analysis computer systems, which provide a synthetic view of the information associated with the query parameters.

Les systèmes informatiques fournisseurs de produits peuvent répondre à des milliers de requêtes utilisateurs par seconde, ce qui implique que les systèmes d’analyse de requête soient en mesure d’analyser un nombre conséquents de requêtes (plusieurs centaines de millions de requêtes par jour).IT systems supplying products can respond to thousands of user requests per second, which means that request analysis systems are able to analyze a significant number of requests (several hundred million requests per day).

Or, une part non négligeable des requêtes effectuées auprès des systèmes informatiques fournisseurs de produits ne sont pas réalisées par des utilisateurs réels, mais par des robots. Plus généralement, plus de la moitié du trafic mondial sur Internet est généré par des robots, qu’il s’agisse de robots «bienveillants» (par exemple des robots de surveillance du trafic ou des robots de moteurs de recherche) ou de robots «malveillants» (par exemple des robots pirates ou des robots polluposteurs).However, a not insignificant part of the requests made to the computer systems supplying products are not carried out by real users, but by robots. More generally, more than half of the world's Internet traffic is generated by bots, whether they are "benevolent" bots (eg traffic monitoring bots or search engine bots) or "bots". malicious ”(for example pirate bots or spam bots).

L’identification de robots «en direct» est un problème documenté dans l’industrie informatique. Ces techniques reposent entre autre sur des informations de session, à savoir une adresse IP ou un identifiant quelconque qui permet de savoir que plusieurs requêtes proviennent du même utilisateur. Or cette identification ne peut être réalisée lorsque les robots effectuent les requêtes auprès de moteurs de recherche en ligne (par exemple des agences de voyages en ligne ou comparateurs de vols dans un exemple d’application à l'industrie du voyage), eux même connectés aux systèmes informatiques fournisseurs de produits.Identifying "live" robots is a documented problem in the computer industry. These techniques are based, among other things, on session information, namely an IP address or any identifier which makes it possible to know that several requests come from the same user. However, this identification cannot be carried out when the robots make requests from online search engines (for example online travel agencies or flight comparators in an example of an application to the travel industry), themselves connected computer systems that supply products.

Les systèmes d’analyse de requête ne disposent donc pas d’informations pertinentes sur les requêtes effectuées par les utilisateurs, du fait de l’activité des robots.The query analysis systems therefore do not have relevant information on the queries made by users, due to the activity of bots.

Par ailleurs, lorsqu’un utilisateur effectue une requête auprès d’un moteur de recherche en ligne, le moteur de recherche en ligne peut procéder à plusieurs requêtes similaires, mais qui présentent des différences par rapport à la requête initiale de l’utilisateur. Un regroupement de requêtes similaires, générées par le moteur de recherche en ligne, suite à une requête réellement effectuée par un utilisateur, est appelée «multi-requête».Also, when a user makes a query to an online search engine, the online search engine may perform several similar queries, but which differ from the user's initial query. A grouping of similar queries, generated by the online search engine, following a query actually made by a user, is called a “multi-query”.

Le trafic généré par les robots et les multi-requêtes augmentent fortement le volume de données à traiter par les systèmes d’analyse de requête. Il est donc nécessaire de procéder à nettoyage des données à analyser.The traffic generated by bots and multi-queries greatly increases the volume of data to be processed by query analysis systems. It is therefore necessary to clean the data to be analyzed.

Il existe donc un besoin pour un système et un procédé d’analyse de requêtes capable de détecter les données le trafic réellement généré par des utilisateurs d’un système fournisseur de produits.There is therefore a need for a query analysis system and method capable of detecting data actually generated traffic by users of a product supplier system.

L’invention vient améliorer la situation. A cet effet, elle propose un système informatique d’analyse de requêtes configuré pour analyser un ensemble de requêtes reçues par un système informatique fournisseur de produits, le système fournisseur de produits étant connecté au système d’analyse de requêtes et étant configuré pour délivrer un ensemble de recommandations de produits en réponse à une requête, chaque requête comprenant un ensemble de paramètres associés à la requête, le système d’analyse de requêtes étant configuré pour fournir un ensemble d’informations à partir d’au moins une partie de l’ensemble de paramètres de chaque requête. Avantageusement, le système d’analyse de requêtes comprend une unité de traitement de requêtes, l’unité de traitement de requêtes étant configurée pour détecter des requêtes émises par des robots ou des multi-requêtes.The invention improves the situation. To this end, it proposes a request analysis computer system configured to analyze a set of requests received by a product supplier computer system, the product supplier system being connected to the request analysis system and being configured to deliver a request. set of product recommendations in response to a query, each query including a set of parameters associated with the query, the query analysis system being configured to provide a set of information from at least part of the set of parameters for each query. Advantageously, the request analysis system comprises a request processing unit, the request processing unit being configured to detect requests sent by robots or multi-requests.

Dans un mode de réalisation, l’unité de traitement de requêtes est configurée pour déterminer des requêtes corrélées linéairement dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.In one embodiment, the request processing unit is configured to determine requests linearly correlated in a multidimensional space representing, over a determined period of time, the evolution over time of at least one parameter selected from among the set of parameters. parameters associated with the request.

L’unité de traitement de requêtes peut être configurée pour filtrer les requêtes corrélées linéairement.The query processing unit can be configured to filter linearly correlated queries.

Selon un aspect particulier, l’unité de traitement de requêtes peut être configurée pour détecter des requêtes regroupées dans une même fenêtre temporelle dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps de la valeur d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.According to one particular aspect, the request processing unit can be configured to detect requests grouped together in the same time window in a multidimensional space representing, over a determined period of time, the evolution over time of the value of at least one. parameter selected from the set of parameters associated with the request.

Selon un autre aspect, l’unité de traitement de requêtes peut être configurée pour remplacer les requêtes regroupées dans une même fenêtre temporelle par une seule requête représentative des requêtes regroupées dans la même fenêtre temporelle.According to another aspect, the request processing unit can be configured to replace the requests grouped in the same time window with a single request representative of the requests grouped in the same time window.

Il est en outre fourni un procédé mis en œuvre par ordinateur d’analyse de requêtes reçues par un système informatique fournisseur de produits, le procédé comprenant les étapes de:
- fourniture, par le système informatique fournisseur de produits, d’un ensemble de recommandations de produits en réponse à une requête, chaque requête comprenant un ensemble de paramètres associés à la requête,
- fourniture, par un système informatique d’analyse de requêtes connecté au système informatique fournisseur de produits, d’un ensemble d’informations à partir d’au moins une partie de l’ensemble de paramètres de chaque requête,
caractérisé en ce que le procédé comprend une étape de détection, par une unité de traitement de requêtes, des requêtes émises par des robots ou des multi-requêtes.
Further provided is a computer implemented method of analyzing requests received by a product supplier computer system, the method comprising the steps of:
- provision, by the computer system supplier of products, of a set of product recommendations in response to a request, each request comprising a set of parameters associated with the request,
- supply, by a request analysis computer system connected to the product supplier computer system, of a set of information from at least part of the set of parameters for each request,
characterized in that the method comprises a step of detecting, by a request processing unit, requests sent by robots or multi-requests.

Dans un mode de réalisation, l’étape de détection peut comprendre la détermination des requêtes corrélées linéairement dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.In one embodiment, the detection step may comprise determining the requests linearly correlated in a multidimensional space representing, over a determined period of time, the evolution over time of at least one parameter selected from the set of associated parameters. at the request.

Le procédé peut comprendre en outre une étape de filtrage des requêtes corrélées linéairement parmi l’ensemble de requêtes.The method may further include a step of filtering linearly correlated queries among the set of queries.

L’étape de détection peut comprendre la détection des requêtes regroupées dans une même fenêtre temporelle dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps de la valeur d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.The detection step can comprise the detection of the requests grouped together in the same time window in a multidimensional space representing, over a determined period of time, the evolution over time of the value of at least one parameter selected from the set of parameters. associated with the query.

Le procédé peut comprendre une étape de remplacement des requêtes regroupées dans une même fenêtre temporelle par une seule requête représentative des requêtes regroupées dans la même fenêtre temporelleThe method can include a step of replacing the requests grouped together in the same time window by a single request representative of the requests grouped in the same time window.

D’autres caractéristiques, détails et avantages de l’invention ressortiront à la lecture de la description faite en référence aux dessins annexés donnés à titre d’exemple et qui représentent, respectivement:Other characteristics, details and advantages of the invention will emerge on reading the description made with reference to the accompanying drawings given by way of example and which represent, respectively:

la figure 1, une illustration schématique du système d’analyse de requêtes selon l’invention; FIG. 1, a schematic illustration of the request analysis system according to the invention;

la figure 2 une première illustration en vue tridimensionnelles de requêtes effectuées par des robots; FIG. 2 a first illustration in three-dimensional view of requests made by robots;

la figure3, une deuxième illustration en vue tridimensionnelles de requêtes effectuées par des robots; FIG. 3, a second illustration in three-dimensional view of requests made by robots;

la figure 4, une illustration en vue tridimensionnelle de multi-requêtes; Figure 4, a three-dimensional view illustration of multi-queries;

la figure 5, une illustration de l’architecture d’un ordinateur apte à mettre en œuvre l’invention. FIG. 5, an illustration of the architecture of a computer capable of implementing the invention.

La figure 1 illustre de façon schématique le système d’analyse de requêtes 100 selon l’invention. Le système d’analyse de requêtes 100 récupère, par exemple de façon périodique, l’ensemble des requêtes reçues par un système fournisseur de produits 200 sur une période déterminée, par exemple quotidiennement. Le système fournisseur de produits 200 est configuré pour délivrer un ensemble de recommandations de produits en réponse à une requête.Figure 1 schematically illustrates the query analysis system 100 according to the invention. The request analysis system 100 retrieves, for example periodically, all of the requests received by a product supplier system 200 over a determined period, for example daily. The product provider system 200 is configured to deliver a set of product recommendations in response to a query.

Dans un exemple d’application à l'industrie du voyage, le dispositif serveur fournisseur de produits peut être un système de type GDS («Global Distribution System», ou Système de Distribution Global) permettant aux utilisateurs de réserver et d’acheter des produits de voyage tels que des billets d’avion, de train ou encore des nuitées d’hôtel, en ayant accès directement aux données fournies par le fournisseur de voyage (qui peut être par exemple, une compagnie aérienne dans le cas d’une réservation de billet d’avion).In an example of application to the travel industry, the product supplier server device may be a GDS (“Global Distribution System”) type system allowing users to reserve and purchase products. such as plane tickets, train tickets or even hotel nights, by having direct access to the data provided by the travel supplier (which can be for example, an airline in the case of a reservation of plane ticket).

Chaque requête récupérée par le système d’analyse de requêtes 100 comprend un ensemble de paramètres associés à la requête. Les paramètres de la requête peuvent être par exemple l’origine, la destination, la date du voyager aller et la date du voyage retour. La date du voyage retour peut être saisie manuellement par l’utilisateur, ou être par défaut fixée à une date correspondant à un certain nombre de jours après la date du voyage aller (par exemple une semaine). L’utilisateur peut modifier la date de voyage retour avant de valider la requête. Les paramètres associés à chaque requête peuvent être des valeurs numériques, par exemple les dates, ou bien être des chaînes de caractères, par exemple les aéroports de départ et d’arrivée.Each request retrieved by the request analysis system 100 includes a set of parameters associated with the request. The parameters of the request can be for example the origin, the destination, the date of the outward journey and the date of the return journey. The date of the return trip can be entered manually by the user, or by default be set to a date corresponding to a certain number of days after the date of the outbound trip (for example a week). The user can change the return travel date before validating the request. The parameters associated with each request can be numeric values, for example dates, or they can be character strings, for example departure and arrival airports.

Le système d’analyse de requêtes 100 peut communiquer avec un dispositif client 300. Le système d’analyse de requêtes 100 fournit au dispositif client 300 un ensemble d’informations pertinentes à partir d’au moins une partie de l’ensemble de valeurs de paramètres de chaque requête. Dans un exemple d’application à l'industrie du voyage, les informations pertinentes peuvent être un rapport représentant,The request analysis system 100 may communicate with a client device 300. The request analysis system 100 provides the client device 300 with a set of relevant information from at least a portion of the set of values of. parameters of each request. In an example of application to the travel industry, the relevant information may be a representative report,

Dans un exemple d’application à l'industrie du voyage, les paramètres de la requête peuvent être par exemple l’origine, la destination, la date du voyage aller et la date du voyage retour. La date du voyage retour peut être saisie manuellement par l’utilisateur, ou être par défaut fixée à un certain nombre de jours après la date du voyage aller (par exemple une semaine), que l’utilisateur peut modifier avant de valider sa requête.In an example of an application to the travel industry, the parameters of the request can be for example the origin, the destination, the date of the outward journey and the date of the return journey. The date of the return trip can be entered manually by the user, or by default be set to a certain number of days after the date of the outward journey (for example one week), which the user can modify before validating his request.

Les paramètres de requêtes saisis par les utilisateurs peuvent être récupérés par des systèmes informatiques d’analyse de requêtes, en vue d’obtenir des informations synthétiques sur les centres d’intérêts des utilisateurs, par exemple les origines/destinations qui sont le plus fréquemment saisies, le délai moyen entre la date à laquelle est effectuée la requête et la date du voyage aller (délai lié à la condition d’achat anticipé), le délai moyen entre le voyage aller et le voyage retour. Ces informations peuvent être fournies de façon globale, ou être ciblées par rapport à un marché prédéterminé (les utilisateurs effectuant une requête dans un pays déterminé, par exemple), ou bien un identifiant de connexion, propre à chaque client du système fournisseur de produits. Les informations restituées au niveau du dispositif client 300 peuvent constituer des aides à la décision, par exemple pour des opérations de commerciales, ou bien à des fins statistiques.The query parameters entered by the users can be retrieved by computer systems for query analysis, in order to obtain synthetic information on the centers of interest of the users, for example the origins / destinations which are most frequently entered. , the average time between the date on which the request is made and the date of the outward journey (time linked to the advance purchase condition), the average time between the outward journey and the return trip. This information can be provided globally, or be targeted in relation to a predetermined market (users making a request in a specific country, for example), or else a connection identifier, specific to each customer of the product supplier system. The information restored at the level of the client device 300 can constitute decision aids, for example for commercial operations, or else for statistical purposes.

Avantageusement, le système d’analyse de requêtes 100 comprend une unité de traitement de requêtes 150. L’unité de traitement de requêtes 150 est configurée pour filtrer les requêtes corrélées linéairement. L’unité de traitement de requêtes 150 est configurée pour détecter des requêtes qui n’ont pas été réellement émises par des utilisateurs, comme par exemple des requêtes émises par des robots, ou des multi-requêtes. Elle est également configurée pour nettoyer les données après avoir détecté celles qui ne proviennent pas d’utilisateurs réels (ou humains).Advantageously, the request analysis system 100 includes a request processing unit 150. The request processing unit 150 is configured to filter the linearly correlated requests. The request processing unit 150 is configured to detect requests that have not actually been sent by users, such as requests from robots, or multi-requests, for example. It is also configured to clean data after detecting data that does not come from real users (or humans).

La figure 2 illustre schématiquement un espace tridimensionnel représentant une distribution de requêtes en fonction du temps sur une journée, selon deux paramètres associés aux requêtes. L’espace représenté est tridimensionnel, mais il pourrait en variante être unidimensionnel, bidimensionnel, ou plus généralement être multidimensionnel. Dans l’exemple illustré figure 2, le premier paramètre est le nombre de jours (ADV) entre le jour de la requête et la date de départ demandée. Le deuxième paramètre est la durée de séjour saisie dans la requête, à savoir le délai qui sépare le trajet ‘aller’ du trajet ‘retour’. Les requêtes affichées dans l’espace tridimensionnel sont associées à une même origine et à une même destination. Des paramètres peuvent être fixes entre chacune des requêtes, comme par exemple l’identifiant de compte utilisateur associé au système fournisseur de produits 200. Des paramètres, autres que la durée (ADV) qui précède la date du voyage aller et la durée de séjour saisie dans la requête, peuvent être pris en considération.FIG. 2 schematically illustrates a three-dimensional space representing a distribution of requests as a function of time over a day, according to two parameters associated with the requests. The space represented is three-dimensional, but it could alternatively be one-dimensional, two-dimensional, or more generally be multidimensional. In the example shown in Figure 2, the first parameter is the number of days (ADV) between the day of the request and the requested departure date. The second parameter is the length of stay entered in the request, namely the time between the "outbound" journey and the "return" journey. The queries displayed in three-dimensional space are associated with the same origin and the same destination. Parameters can be fixed between each of the requests, such as for example the user account identifier associated with the product supplier system 200. Parameters, other than the duration (ADV) which precedes the date of the outward journey and the length of stay entered. in the request, can be taken into account.

Une opération de regroupement par corrélation des différentes requêtes peut être réalisé par l’unité de traitement de requêtes 150. Plusieurs algorithmes de regroupement (ou «clustering» selon la terminologie anglo-saxonne) peuvent être envisagés. En particulier, l’algorithme «COPAC» (COrrelation Partition Clustering) semble adapté au domaine d’application considéré, en termes de temps d’exécution, de flexibilité et de qualité de résultats. En variante, d’autres algorithmes pourraient être utilisés, comme les algorithmes ORCLUS, 4C, HiCO ou ERiC, tous connus de l’homme du métier. Toutes ces méthodes utilisent le principe de l’analyse de composantes locales principales («Local PCA»). Il est possible, avec les méthodes précitées, de détecter les requêtes qui sont corrélées linéairement entre elles.A grouping operation by correlation of the different requests can be carried out by the request processing unit 150. Several grouping algorithms (or "clustering" according to the English terminology) can be considered. In particular, the "COPAC" algorithm (COrrelation Partition Clustering) seems adapted to the field of application considered, in terms of execution time, flexibility and quality of results. As a variant, other algorithms could be used, such as the ORCLUS, 4C, HiCO or ERiC algorithms, all of which are known to those skilled in the art. All of these methods use the principle of local principal component analysis ("Local PCA"). It is possible, with the aforementioned methods, to detect the requests which are linearly correlated with one another.

La figure 2 représente un trafic typiquement généré exclusivement par des robots. Par exemple, la série de données située dans la partie supérieure de l’espace tridimensionnel représente une série de requêtes pour une même origine, une même destination, et depuis un même compte utilisateur du système fournisseur de produits 200. A intervalles de temps très rapprochés, et pour une durée de séjour identique, le robot peut effectuer des requêtes dont seul le délai entre la date de départ et la date de requête varie. Le motif régulier sous forme de droite de la série de requêtes correspond à une corrélation linéaire des différentes requêtes de la série.FIG. 2 represents traffic typically generated exclusively by robots. For example, the data series located in the upper part of the three-dimensional space represents a series of requests for the same origin, the same destination, and from the same user account of the product supplier system 200. At very short time intervals , and for an identical length of stay, the robot can make requests for which only the time between the departure date and the request date varies. The regular pattern in the form of a straight line of the series of queries corresponds to a linear correlation of the different queries in the series.

Le système selon l’invention est également capable de détecter un trafic mixte, à savoir généré par des utilisateurs réels, et par des robots, à partir d’un même compte utilisateur. Par exemple, sur la figure 3, une série de points figurant dans l’encadré font apparaître une linéarité correspondant à des requêtes similaires, rapprochées dans le temps, et ne variant l’une par rapport à l’autre que par le paramètre lié à la durée de séjour.The system according to the invention is also capable of detecting mixed traffic, namely generated by real users, and by robots, from the same user account. For example, in figure 3, a series of points appearing in the box reveal a linearity corresponding to similar requests, brought closer in time, and varying one with respect to the other only by the parameter linked to length of stay.

L’unité de traitement de requêtes 150 peut être configuré pour filtrer les requêtes présentent une forte corrélation linéaire entre elles en les supprimant, ce qui permet de réduire significativement le volume de données à traiter par le système d’analyse de requêtes 100. L’unité de traitement de requêtes 150 est ainsi configurée pour déterminer des requêtes corrélées linéairement dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.The request processing unit 150 can be configured to filter the requests exhibiting a strong linear correlation between them by suppressing them, which makes it possible to significantly reduce the volume of data to be processed by the request analysis system 100. request processing unit 150 is thus configured to determine requests linearly correlated in a multidimensional space representing, over a determined period of time, the evolution over time of at least one parameter selected from the set of parameters associated with the request.

L’unité de traitement de requêtes 150 peut être également configurée pour détecter des multi-requêtes, à savoir des requêtes similaires, avec des critères de recherche peu différents les uns des autres. L’algorithme de détection des multi-requêtes peut comprendre une analyse de séries temporelles, afin de regrouper les requêtes similaires qui ont été effectuées dans une même fenêtre temporelle, par exemple une fenêtre Gaussienne.The query processing unit 150 can also be configured to detect multi-queries, i.e. similar queries, with search criteria that differ little from each other. The multi-query detection algorithm can include a time series analysis, in order to group together similar queries that have been performed in the same time window, for example a Gaussian window.

Pour la détection des multi-requêtes, le procédé de nettoyage de données ne supprime pas l’ensemble des requêtes d’une multi-requête, car une requête parmi l’ensemble des requêtes a réellement été effectuée par un utilisateur. Le procédé de nettoyage de données est ainsi mis en œuvre pour ne conserver qu’une requête de l’ensemble considéré comme une multi-requête. Pour cela, le produit de convolution de la série de requêtes avec une fenêtre temporelle définie précédemment peut être calculé. La requête correspondant à un maximum du produit de convolution est considérée comme étant la requête représentant l’ensemble des requêtes de la multi-requête.For multi-query detection, the data cleansing process does not remove all queries from a multi-query, because one query among all queries was actually made by a user. The data cleaning process is thus implemented to keep only one query from the set considered to be a multi-query. For this, the convolution product of the series of queries with a time window defined previously can be calculated. The query corresponding to a maximum of the convolution product is considered to be the query representing all the queries of the multi-query.

La figure 3 illustre une représentation du traitement de multi-requêtes dans un espace tridimensionnel. L’espace tridimensionnel représente les mêmes paramètres qu’aux figures 2 et 3, à savoir le moment de la journée où a été fait la requête (en secondes), le délai entre la date de départ et la requête (en jours), et la durée du séjour indiquée dans la requête. Là aussi, d’autres paramètres peuvent être pris en considération, sans sortir du cadre de l’invention. Les requêtes similaires formant une multi-requête sont regroupées par l’unité de traitement 150. La partie de gauche de la figure 4 représente quatre multi-requêtes. La partie de droite de la figure 4 représente les requêtes dans l’espace tridimensionnel, après nettoyage des données. Pour chaque multi-requête, une seule requête dite représentative a été conservée par l’unité de traitement 150.FIG. 3 illustrates a representation of the processing of multiple requests in a three-dimensional space. The three-dimensional space represents the same parameters as in Figures 2 and 3, namely the time of day when the request was made (in seconds), the time between the start date and the request (in days), and the length of stay indicated in the request. Here too, other parameters can be taken into consideration, without departing from the scope of the invention. Similar requests forming a multi-request are grouped together by processing unit 150. The left part of Figure 4 represents four multi-requests. The right part of Figure 4 shows the queries in three-dimensional space, after data cleaning. For each multi-query, a single so-called representative query was kept by processing unit 150.

L’unité de traitement de requêtes 150 peut être ainsi configurée pour détecter des requêtes regroupées dans une même fenêtre temporelle dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps de la valeur d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.The request processing unit 150 can thus be configured to detect requests grouped together in the same time window in a multidimensional space representing, over a determined period of time, the evolution over time of the value of at least one parameter selected from among the set of parameters associated with the request.

L’unité de traitement de requêtes 150 peut être en outre configurée pour remplacer les requêtes regroupées dans une même fenêtre temporelle par une seule requête représentative des requêtes regroupées dans la même fenêtre temporelle.The request processing unit 150 can also be configured to replace the requests grouped together in the same time window with a single request representative of the requests grouped together in the same time window.

Le volume de données à traiter par le système d’analyse de requêtes 100 est également significativement réduit, tout en conservant une vision objective de la réalité de l’intérêt des utilisateurs pour les différents produits proposés par le système fournisseur de produits 200.The volume of data to be processed by the query analysis system 100 is also significantly reduced, while maintaining an objective view of the reality of user interest in the various products offered by the product supplier system 200.

Par ailleurs, le nettoyage des données effectué par l’unité de traitement 150 garantit un temps de réponse convenable du système d’analyse de requêtes 100.Furthermore, the data cleaning performed by the processing unit 150 guarantees a suitable response time of the request analysis system 100.

Les systèmes informatiques, unités de traitement et dispositifs client mentionnés précédemment peuvent être intégrés dans un ou plusieurs ordinateurs tels que représentés sur la figure 5.The aforementioned computer systems, processing units and client devices can be integrated into one or more computers as shown in Figure 5.

L'ordinateur peut comporter un processeur, une mémoire, un dispositif de mémoire de stockage de masse, une interface d'entrée/sortie (I/O) et une Interface Homme-Machine (IHM). L'ordinateur peut également être couplé de manière fonctionnelle à une ou plusieurs ressources externes via le réseau et/ou une interface I/O. Des ressources externes peuvent inclure, mais sans y être limitées, des serveurs, des bases de données, des dispositifs de stockage de masse, des dispositifs périphériques, des services de réseau à base de nuage (cloud), ou toute autre ressource informatique appropriée qui peut être utilisée par l'ordinateur.The computer can include a processor, a memory, a mass storage memory device, an input / output (I / O) interface and a Human Machine Interface (HMI). The computer can also be operably coupled to one or more external resources via the network and / or an I / O interface. External resources may include, but are not limited to, servers, databases, mass storage devices, peripheral devices, cloud-based network services, or any other suitable computing resource that can be used by the computer.

Le processeur peut inclure un ou plusieurs dispositifs sélectionnés parmi les microprocesseurs, les microcontrôleurs, les processeurs de signaux numériques, les micro-ordinateurs, les unités centrales de traitement, les réseaux prédiffusés programmables par l'utilisateur, les dispositifs logiques programmables, les machines d'état, les circuits logiques, les circuits analogiques, les circuits numériques, ou d'autres dispositifs qui manipulent des signaux (analogiques ou numériques) en fonction d'instructions d'opérations qui sont stockées dans la mémoire. La mémoire peut inclure un seul dispositif mémoire ou une pluralité de dispositifs mémoire incluant, mais sans y être limités, une mémoire morte (ROM), une mémoire vive (RAM), une mémoire volatile, une mémoire non volatile, une mémoire à accès aléatoire statique (SRAM), une mémoire à accès aléatoire dynamique (DRAM), une mémoire flash, une mémoire cache, ou tout autre dispositif capable de stocker des informations. Le dispositif de mémoire de stockage de masse peut inclure des dispositifs de stockage de données tels qu'un disque dur, un disque optique, un lecteur de cassette, un dispositif à semi-conducteurs non volatile, ou tout autre dispositif capable de stocker des informations. Une base de données peut résider sur le dispositif de mémoire de stockage de masse, et peut être utilisée pour collecter et organiser des données utilisées par les différents systèmes et modules décrits ici. Le processeur peut fonctionner sous la commande d'un système d'exploitation qui réside dans la mémoire.The processor may include one or more devices selected from microprocessors, microcontrollers, digital signal processors, microcomputers, central processing units, user-programmable pre-broadcast networks, programmable logic devices, digital processing machines. state, logic circuits, analog circuits, digital circuits, or other devices that manipulate signals (analog or digital) according to operating instructions that are stored in memory. The memory may include a single memory device or a plurality of memory devices including, but not limited to, read only memory (ROM), random access memory (RAM), volatile memory, nonvolatile memory, random access memory. static (SRAM), dynamic random access memory (DRAM), flash memory, cache memory, or any other device capable of storing information. The mass storage memory device may include data storage devices such as a hard drive, an optical disc, a cassette player, a non-volatile semiconductor device, or any other device capable of storing information. . A database can reside on the mass storage memory device, and can be used to collect and organize data used by the various systems and modules described herein. The processor can operate under the control of an operating system that resides in memory.

Le système d'exploitation peut gérer des ressources informatiques de telle sorte qu'un code de programme informatique intégré sous la forme d'une ou plusieurs applications logicielles, telles qu'une application résidant dans la mémoire, peuvent avoir des instructions exécutées par le processeur. Dans une autre forme de réalisation, le processeur peut exécuter l'application directement, auquel cas le système de fonctionnement peut être omis. Une ou plusieurs structures de données peuvent également résider dans la mémoire, et peuvent être utilisées par le processeur, le système d'exploitation et/ou l'application pour le stockage ou la manipulation de données.The operating system can manage computer resources so that embedded computer program code in the form of one or more software applications, such as a memory resident application, can have instructions executed by the processor. . In another embodiment, the processor can run the application directly, in which case the operating system can be omitted. One or more data structures may also reside in memory, and may be used by the processor, operating system, and / or application for data storage or manipulation.

L'interface I/O peut fournir une interface machine qui couple fonctionnellement le processeur à d'autres dispositifs et systèmes, tels que le réseau et/ou une ressource externe. L'application peut ainsi travailler en coopération avec le réseau et/ou une ressource externe en communiquant via l'interface I/O pour fournir les différentes particularités, fonctions, applications, processus et/ou modules comprenant des formes de réalisation de l'invention. L'application peut également avoir un code programme qui est exécuté par une ou plusieurs ressources externes, ou autrement s'appuyer sur des fonctions et/ou signaux fournis par d'autres composants système ou réseau externes à l'ordinateur. En effet, étant donné la presque infinité de configurations matérielles et logicielles possibles, l'homme du métier comprendra que les formes de réalisation de l'invention peuvent inclure des applications qui sont situées à l'extérieur de l'ordinateur, distribuées sur plusieurs ordinateurs ou d'autres ressources externes, ou fournies par des ressources informatiques (matérielles ou logicielles), sous la forme d'un service sur le réseau, tel qu'un service informatique en nuage (cloud).The I / O interface can provide a machine interface that functionally couples the processor to other devices and systems, such as the network and / or an external resource. The application can thus work in cooperation with the network and / or an external resource by communicating via the I / O interface to provide the various features, functions, applications, processes and / or modules comprising embodiments of the invention. . The application may also have program code that is executed by one or more external resources, or otherwise rely on functions and / or signals provided by other system or network components external to the computer. Indeed, given the almost infinite number of possible hardware and software configurations, those skilled in the art will understand that the embodiments of the invention may include applications which are located outside the computer, distributed over several computers. or other external resources, or provided by computing resources (hardware or software), in the form of a service on the network, such as a cloud computing service.

L'interface IHM peut être couplée de manière fonctionnelle au processeur de l'ordinateur d'une manière connue, pour permettre à un utilisateur de l'ordinateur d'interagir directement avec l'ordinateur. L'interface IHM peut inclure des écrans vidéo et/ou alphanumériques, un écran tactile, un haut-parleur, et tout autre indicateur audio et visuel approprié capable de fournir des informations à l'utilisateur. L'interface IHM peut également inclure des dispositifs de saisie et des commandes tels qu'un clavier alphanumérique, un dispositif de pointage, des pavés numériques, des boutons poussoirs, des boutons de commande, des microphones, etc., capables de recevoir des commandes et données d'entrée en provenance de l'utilisateur et de transmettre les entrées introduites dans le processeur.The HMI interface can be operably coupled to the processor of the computer in a known manner, to allow a user of the computer to interact directly with the computer. The HMI interface may include video and / or alphanumeric screens, a touch screen, a speaker, and any other appropriate audio and visual indicator capable of providing information to the user. The HMI interface can also include input devices and commands such as an alphanumeric keyboard, pointing device, numeric keypads, push buttons, control buttons, microphones, etc., capable of receiving commands. and input data from the user and transmit the inputs entered into the processor.

Claims (10)

Système informatique d’analyse de requêtes (100) configuré pour analyser un ensemble de requêtes reçues par un système informatique fournisseur de produits (200), le système fournisseur de produits (200) étant connecté au système d’analyse de requêtes (100) et étant configuré pour délivrer un ensemble de recommandations de produits en réponse à une requête, chaque requête comprenant un ensemble de paramètres associés à la requête, le système d’analyse de requêtes (100) étant configuré pour fournir un ensemble d’informations à partir d’au moins une partie de l’ensemble de paramètres de chaque requête, caractérisé en ce que le système d’analyse de requêtes (100) comprend une unité de traitement de requêtes (150), l’unité de traitement de requêtes (150) étant configurée pour détecter des requêtes émises par des robots ou des multi-requêtes.Request analysis computer system (100) configured to analyze a set of requests received by a product supplier computer system (200), the product supplier system (200) being connected to the request analysis system (100) and being configured to deliver a set of product recommendations in response to a query, each query including a set of parameters associated with the query, the query analysis system (100) being configured to provide a set of information from 'at least a part of the set of parameters of each request, characterized in that the request analysis system (100) comprises a request processing unit (150), the request processing unit (150) being configured to detect requests emitted by robots or multi-requests. Système selon la revendication 1, caractérisé en ce que l’unité de traitement de requêtes (150) est configurée pour déterminer des requêtes corrélées linéairement dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.System according to Claim 1, characterized in that the request processing unit (150) is configured to determine linearly correlated requests in a multidimensional space representing, over a determined period, the evolution over time of at least one parameter selected from the set of parameters associated with the request. Système selon la revendication 2, caractérisé en ce que l’unité de traitement de requêtes (150) est configurée pour filtrer les requêtes corrélées linéairement.System according to claim 2, characterized in that the request processing unit (150) is configured to filter the linearly correlated requests. Système selon la revendication 1, caractérisé en ce que l’unité de traitement de requêtes (150) est configurée pour détecter des requêtes regroupées dans une même fenêtre temporelle dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps de la valeur d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.System according to Claim 1, characterized in that the request processing unit (150) is configured to detect requests grouped together in the same time window in a multidimensional space representing, over a determined period, the evolution over time of the value of at least one parameter selected from the set of parameters associated with the request. Système selon la revendication 4, caractérisé en ce que l’unité de traitement de requêtes (150) est configurée pour remplacer les requêtes regroupées dans une même fenêtre temporelle par une seule requête représentative des requêtes regroupées dans la même fenêtre temporelle.System according to Claim 4, characterized in that the request processing unit (150) is configured to replace the requests grouped together in the same time window by a single request representative of the requests grouped in the same time window. Procédé mis en œuvre par ordinateur d’analyse de requêtes reçues par un système informatique fournisseur de produits (200), le procédé comprenant les étapes de
- fourniture, par le système informatique fournisseur de produits (200), d’un ensemble de recommandations de produits en réponse à une requête, chaque requête comprenant un ensemble de paramètres associés à la requête,
- fourniture, par un système informatique d’analyse de requêtes (100) connecté au système informatique fournisseur de produits (200), d’un ensemble d’informations à partir d’au moins une partie de l’ensemble de paramètres de chaque requête,
caractérisé en ce que le procédé comprend une étape de détection, par une unité de traitement de requêtes (150), des requêtes émises par des robots ou des multi-requêtes.
A computer-implemented method of analyzing requests received by a product supplier computer system (200), the method comprising the steps of
- provision, by the product supplier computer system (200), of a set of product recommendations in response to a request, each request comprising a set of parameters associated with the request,
- supply, by a request analysis computer system (100) connected to the product supplier computer system (200), of a set of information from at least part of the set of parameters of each request ,
characterized in that the method comprises a step of detecting, by a request processing unit (150), requests sent by robots or multi-requests.
Procédé selon la revendication 6, caractérisé en ce que l’étape de détection comprend la détermination des requêtes corrélées linéairement dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.Method according to Claim 6, characterized in that the detection step comprises determining the requests linearly correlated in a multidimensional space representing, over a determined period of time, the evolution over time of at least one parameter selected from the set. parameters associated with the request. Procédé selon la revendication 7, caractérisé en ce que le procédé comprend une étape de filtrage des requêtes corrélées linéairement parmi l’ensemble de requêtes.Method according to claim 7, characterized in that the method comprises a step of filtering linearly correlated requests among the set of requests. Procédé selon la revendication 6, caractérisé en ce que l’étape de détection comprend la détection des requêtes regroupées dans une même fenêtre temporelle dans un espace multidimensionnel représentant, sur une durée déterminée, l’évolution dans le temps de la valeur d’au moins un paramètre sélectionné parmi l’ensemble de paramètres associés à la requête.Method according to Claim 6, characterized in that the detection step comprises the detection of the requests grouped together in a same time window in a multidimensional space representing, over a determined period, the evolution over time of the value of at least a parameter selected from the set of parameters associated with the request. Procédé selon la revendication 9, caractérisé en ce qu’il comprend une étape de remplacement des requêtes regroupées dans une même fenêtre temporelle par une seule requête représentative des requêtes regroupées dans la même fenêtre temporelle.
………………….
Method according to Claim 9, characterized in that it comprises a step of replacing the requests grouped together in the same time window by a single request representative of the requests grouped in the same time window.
………………….
FR1914979A 2019-12-19 2019-12-19 Query analysis system equipped with robotic query identification unit and multiple queries Active FR3105472B3 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR1914979A FR3105472B3 (en) 2019-12-19 2019-12-19 Query analysis system equipped with robotic query identification unit and multiple queries

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1914979 2019-12-19
FR1914979A FR3105472B3 (en) 2019-12-19 2019-12-19 Query analysis system equipped with robotic query identification unit and multiple queries

Publications (2)

Publication Number Publication Date
FR3105472A3 true FR3105472A3 (en) 2021-06-25
FR3105472B3 FR3105472B3 (en) 2021-12-31

Family

ID=76476443

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1914979A Active FR3105472B3 (en) 2019-12-19 2019-12-19 Query analysis system equipped with robotic query identification unit and multiple queries

Country Status (1)

Country Link
FR (1) FR3105472B3 (en)

Also Published As

Publication number Publication date
FR3105472B3 (en) 2021-12-31

Similar Documents

Publication Publication Date Title
JP7136941B2 (en) Selective sensor polling
US10600004B1 (en) Machine-learning based outcome optimization
FR3009396A1 (en) METHOD AND COMPUTER PROGRAM FOR AIDING THE MAINTENANCE OF AIRCRAFT EQUIPMENT
EP2407921A1 (en) Data compression method for a classifier
FR3003368A1 (en) METHODS AND SYSTEMS FOR DISSEMINATION OF INFORMATION DURING CONCERTED DECISION-MAKING
Prakash et al. Big data preprocessing for modern world: opportunities and challenges
EP1727060A1 (en) Procedure and device for construction and use of a table of reduced paragon profiles, corresponding computer program product
FR3105472A3 (en) Request analysis system equipped with an identification unit for robotic requests and multiple requests
EP3732635B1 (en) System and method for maintenance management during a mass gathering
US10762339B2 (en) Automatic emotion response detection
EP3380942B1 (en) Method and system for aiding maintenance and optimization of a supercomputer
EP3881515B1 (en) System for the formal supervision of communications
EP1892638A1 (en) Epidemiological monitoring procedure implemented using a community of network services
US11044328B2 (en) Controlling content delivery
US11947545B2 (en) Systems and methods for configuring data stream filtering
US20190164206A1 (en) High value transactional events from social signals
EP3617888A1 (en) Device and method for optimising the use over time of the resources of a computer infrastructure
FR3080472A1 (en) CONTROLLING THE GENERATION OF MULTI-INPUT RESEARCH RESULTS
FR3074338A1 (en) METHOD AND DEVICE FOR PROCESSING REQUEST AND DETERMINING A SUBSEQUENT DIGITAL VALUE OF A SELECTED PRODUCT
EP4020331A1 (en) Method and system for active learning and automatic analysis of documents
EP3343410A1 (en) System for large scale handling of data streams
US20200175459A1 (en) A system and method for management of a task
EP3853784A1 (en) Method for analysing malfunctions of a system and associated devices
US20220075949A1 (en) Association Determination
FR3094809A1 (en) PROCESS AND DEVICE FOR MANAGING EVENTS

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5