EP4272090A1 - Système et procédé pour classifier des données de chaînes de caractères d'une entité primaire d'un lac de données - Google Patents

Système et procédé pour classifier des données de chaînes de caractères d'une entité primaire d'un lac de données

Info

Publication number
EP4272090A1
EP4272090A1 EP21854759.4A EP21854759A EP4272090A1 EP 4272090 A1 EP4272090 A1 EP 4272090A1 EP 21854759 A EP21854759 A EP 21854759A EP 4272090 A1 EP4272090 A1 EP 4272090A1
Authority
EP
European Patent Office
Prior art keywords
data
character string
regular
regular expression
regular expressions
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.)
Pending
Application number
EP21854759.4A
Other languages
German (de)
English (en)
Inventor
Malik SOUDED
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of EP4272090A1 publication Critical patent/EP4272090A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Class or cluster creation or modification

Definitions

  • the invention relates to the field of the classification of data comprised in data entities of a data lake.
  • it relates to a system and a method for classifying character string data of a primary entity of a data lake.
  • Big Data The increase in the volume of digital data has enabled the development of technologies related to big data (“Big Data”).
  • the invention aims to solve, at least partially, this need.
  • the invention relates in particular to a method for classifying character string data of at least one primary data entity of a data lake.
  • the method comprises: - a step of describing each string of characters in the form of a corresponding regular expression, so that each regular expression describes a string of characters by means of a series of typographic characters, called patterns, each pattern being characterized by its number of consecutive appearances, the number of consecutive appearances being greater than or equal to one; - a step of extracting the semantic structure of each regular expression, in which the numbers of consecutive appearances of patterns of each regular expression are temporarily omitted from the semantic structure until the execution of the merging step; - a step of grouping the regular expressions into a plurality of disjoint groups, each group comprising regular expressions which have the same semantic structure; - a step of merging the regular expressions of each group into a merging regular expression so that each merging regular expression describes, for each pattern of the same level, the minimum number of consecutive appearances and the maximum number of consecutive appearances, and - a step for associating each character string with a merging regular expression.
  • the description step includes a step for removing redundant regular expressions.
  • the description step includes a step for detecting aberrant regular expressions.
  • the step of detecting aberrant regular expressions comprises the calculation of at least one metric representative of the regular expressions and which is chosen from among: a statistical quantity and a grouping algorithm.
  • the detection step includes a step of removing aberrant regular expressions.
  • the merging step comprises a step of identifying the level of a pattern in several regular expressions of a group according to its position in each regular expression.
  • the association step comprises a step of applying the merge regular expressions to each character string to produce output data which is representative of the correspondence between the merge regular expressions and each string Character.
  • - the description step includes the association of a first unique index between each character string and the corresponding semantic structure
  • - the grouping step includes the association of a second unique index between each semantic structure and the corresponding group
  • - the association step comprises the use of the first index and the second index to associate each character string with a merge regular expression.
  • the invention also covers a character string data classification system of at least one primary data entity of a data lake.
  • the system includes: - at least one data storage device configured to store character string data of at least one primary data entity of a data lake, and - at least one processor configured to execute the instructions for implementing the classification method.
  • One of the goals of this invention is to provide an objective and reproducible tool for identifying data types in a data lake.
  • the inventors have noticed that the majority of the data of a data lake is in the form of a character string or can be converted into character strings.
  • the inventors propose to use the regular expression approach to classify and then identify data types in a data lake.
  • This solution is simple to implement, does not use a learning model and does not require the use of advanced knowledge in data science.
  • the invention relates to a method for classifying character string data of at least one primary data entity of a data lake.
  • data lake a storage space where data is collected in its natural form, whether raw or transformed. And this, for the purpose of analysis (e.g. the establishment of reports, visualizations or analytical structures) or action (e.g. machine learning).
  • analysis e.g. the establishment of reports, visualizations or analytical structures
  • action e.g. machine learning
  • a data lake can include primary data entities in different forms such as structured data (e.g. databases that include rows and columns), semi-structured data (e.g. files such as CSV, logs, XML or JSON), unstructured data (e.g. emails, PDF files), and binary data (e.g. image, audio or video files).
  • structured data e.g. databases that include rows and columns
  • semi-structured data e.g. files such as CSV, logs, XML or JSON
  • unstructured data e.g. emails, PDF files
  • binary data e.g. image, audio or video files
  • each primary data entity comprises a plurality of data fields.
  • each data field has a data type which can be chosen from: numeric types, time types and character string types.
  • the data type when it is numeric, it can be chosen from among the numeric types defined in the standards associated with relational databases of the SQL type, such as an integer or a decimal number and any combination of these.
  • the type of data when it is temporal, it can be chosen from among the temporal types defined in the standards associated with relational databases of the SQL type, such as a date, a time, a day, a year, minute, second and any combination thereof.
  • the data type when it is a character string, it can be chosen from among the types of character strings defined in the standards associated with relational databases of the SQL type, such as an ASCII string , a binary string, an enumeration and any combination thereof.
  • all the fields of the data lake have the same type, for example the character string type.
  • the classification method 100 includes a description step 110, an extraction step 120, an grouping step 130, a merging step 140 and an association step 150.
  • the description step 110 of the classification method 100 includes the description of each character string in the form of a corresponding regular expression.
  • a regular expression also called “regular expression”, or regex
  • a character string which describes, according to a precise syntax, a set of possible character strings.
  • each regular expression describes a string of characters by means of a sequence of typographic characters, called patterns (“patterns”, in English).
  • the set of words "ex-équo, ex-equo, ex-aequo and ex- ⁇ quo” can be condensed into a single pattern "ex-(a?e
  • the basic mechanisms for forming regular expressions are based on special substitution, grouping and quantification characters.
  • each character string includes at least one special character to describe the start of the regular expression and at least one special character to describe the end of the regular expression.
  • each pattern is characterized by its number of consecutive appearances with the number of consecutive appearances being greater than or equal to one.
  • the regular expression “ a ⁇ 3 ⁇ ” will describe a character string that includes three consecutive “ a ” characters. Namely, the character string " aaa ". Thus, the regular expression " a ⁇ 3 ⁇ " will not describe the strings " aa “ or " aaaa “.
  • the list of regular expressions produced can be reduced, by deleting those which appear several times.
  • the description step 110 includes a step 111 for removing redundant regular expressions.
  • the description step 110 includes a step 112 for detecting aberrant regular expressions.
  • the step 112 for detecting aberrant regular expressions comprises the calculation of at least one metric representative of the regular expressions and which is chosen from: a statistical quantity and a grouping algorithm and any combinations of these.
  • the metric is a statistical quantity, it is based on the standard deviation.
  • the metric when it is a clustering algorithm, it is chosen from: k-means clustering, fuzzy c-means clustering, spectral clustering, affinity spread, mean shift, hierarchical Ward clustering, agglomerative clustering, expectation-maximization clustering, density-based algorithm such as DBSCAN, Gaussian mixtures, Birch clustering, and any combinations thereof.
  • the detection step 112 includes a step 113 for removing aberrant regular expressions.
  • the extraction step 120 of the classification method 100 includes the extraction of the semantic structure of each regular expression.
  • temporarily omitted from the semantic structure are the numbers of consecutive occurrences of patterns of each regular expression until the execution of the merging step 140.
  • the grouping step 130 of the classification method 100 includes grouping the regular expressions into a plurality of disjoint groups, each group comprising regular expressions that have the same semantic structure.
  • the merge step 140 of the classification process 100 comprises merging the regular expressions of each group into a merge regular expression such that each merge regular expression describes, for each pattern of the same level, the minimum number of consecutive appearances and the maximum number of consecutive appearances.
  • the merging step 140 comprises a step of identifying 141 the level of a pattern in several regular expressions of a group according to its position in each regular expression.
  • association step 150 of the classification method 100 comprises the association of each character string with a merge regular expression.
  • the regular expressions produced can be used to identify the character strings which correspond to them.
  • the association step 150 includes a step 151 of applying the merging regular expressions to each character string to produce output data which is representative of the correspondence between the merging regular expressions and each character string.
  • consecutive steps of the classification method 100 are linked by a one-to-one relation so that it is possible to associate each character string with the merging regular expression from which it derives.
  • - the description step 110 includes the association of a first unique index between each character string and the corresponding semantic structure
  • - the grouping step 130 comprises the association of a second unique index between each semantic structure and the corresponding group
  • - the association step 150 comprises the use of the first index and the second index to associate each character string with a merge regular expression.
  • the invention also covers a computer system for classifying character string data of at least one primary data entity of a data lake.
  • the system 200 includes at least one data storage device 210 and at least one processor 220.
  • Data storage device 210 is configured to store character string data from at least one primary data entity of a data lake.
  • the processor 220 is configured to execute the instructions to implement all or part of the classification method 100 as described above.
  • the invention may be subject to numerous variants and applications other than those described above.
  • the various structural and functional characteristics of each of the implementations described above should not be considered as combined and/or closely and/or inextricably linked to each other, but, on the contrary, as simple juxtapositions.
  • the structural and/or functional characteristics of the various embodiments described above may be the subject, in whole or in part, of any different juxtaposition or any different combination.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

L'un des objectifs de cette invention est de fournir un outil objectif et reproductible pour identifier les types de données dans un lac de données. Pour cela, l'art antérieur qui propose d'entraîner des modèles d'apprentissage machine pour réaliser cette tâche. Or, l'entraînement de modèles d'apprentissage machine nécessite de gros volumes de données d'entraînement et des compétences avancées en science de la donnée. Or, les inventeurs ont remarqué que la majorité des données d'un lac de données se présentent sous la forme d'une chaîne de caractères ou peuvent être converties en chaînes de caractères. Aussi, les inventeurs proposent d'utiliser l'approche des expressions régulières pour classifier et ensuite identifier les types de données dans un lac de données. Cette solution est simple à mettre en œuvre et ne nécessite pas de faire appel à des connaissances avancées en science de la donnée.

Description

    SYSTÈME ET PROCÉDÉ POUR CLASSIFIER DES DONNÉES DE CHAÎNES DE CARACTÈRES D’UNE ENTITÉ PRIMAIRE D’UN LAC DE DONNÉES
  • L’invention concerne le domaine de la classification des données comprises dans des entités de données d’un lac de données. En particulier, elle concerne un système et un procédé pour classifier des données de chaînes de caractères d’une entité primaire d’un lac de données.
  • L’accroissement du volume des données numériques a permis le développement des technologies liées aux mégadonnées (« Big Data », en anglais).
  • Le caractère hétérogène de ces données numériques, ainsi que leurs sources diverses, ont nécessité de modifier les manières traditionnelles de stocker les données.
  • C’est notamment dans ce cadre que l’on a introduit les lacs de données (« Data Lake », en anglais).
  • Or, dans ces lacs de données, il est difficile d’analyser des données à cause de leur hétérogénéité, car elles peuvent comprendre des données de différentes natures.
  • En effet, cette hétérogénéité complexifie leur exploitation, car chaque type de données nécessite un traitement particulier.
  • Ainsi, il existe un besoin pour identifier les types de données dans les lacs de données.
  • L’invention vise à résoudre, au moins partiellement, ce besoin.
  • L’invention vise en particulier un procédé de classification de données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données.
  • En particulier, le procédé comprend :
    - une étape de description de chaque chaîne de caractères sous la forme d’une expression régulière correspondante, de sorte que chaque expression régulière décrit une chaîne de caractères au moyen d’une suite de caractères typographiques, dit motifs, chaque motif étant caractérisé par son nombre d’apparitions consécutives, le nombre d’apparitions consécutives étant supérieur ou égal à un ;
    - une étape d’extraction de la structure sémantique de chaque expression régulière, dans laquelle on omet temporairement de la structure sémantique, les nombres d’apparitions consécutives de motifs de chaque expression régulière jusqu’à l’exécution de l’étape de fusion  ;
    - une étape de groupement des expressions régulières dans une pluralité de groupes disjoints, chaque groupe comprenant des expressions régulières qui présentent la même structure sémantique ;
    - une étape de fusion des expressions régulières de chaque groupe en une expression régulière de fusion de sorte que chaque expression régulière de fusion décrive, pour chaque motif de même niveau, le nombre minimal d’apparitions consécutives et le nombre maximal d’apparitions consécutives, et
    - une étape d’association de chaque chaîne de caractères à une expression régulière de fusion.
  • Dans un premier mode de réalisation, l’étape de description comprend une étape de suppression des expressions régulières redondantes.
  • Dans une deuxième mode de réalisation, l’étape de description comprend une étape de détection des expressions régulières aberrantes.
  • Dans une première mise en œuvre du deuxième mode de réalisation, l’étape de détection des expressions régulières aberrantes comprend le calcul d’au moins une métrique représentative des expressions régulières et qui est choisie parmi : une grandeur statistique et un algorithme de regroupement.
  • Dans une deuxième mise en œuvre du deuxième mode de réalisation, l’étape de détection comprend une étape de suppression des expressions régulières aberrantes.
  • Dans une troisième mode de réalisation, l’étape de fusion comprend une étape d’identification du niveau d’un motif dans plusieurs expressions régulières d’un groupe en fonction de sa position dans chaque expression régulière.
  • Dans un quatrième mode de réalisation, l’étape d’association comprend une étape d’application des expressions régulières de fusion à chaque chaîne de caractère pour produire une donnée de sortie qui est représentative de la correspondance entre les expressions régulières de fusion et chaque chaîne de caractère.
  • Dans un cinquième mode de réalisation,
    - l’étape de description comprend l’association d’un premier index unique entre chaque chaîne de caractère et la structure sémantique correspondante,
    - l’étape de groupement comprend l’association d’un deuxième index unique entre chaque structure sémantique et le groupe correspondant, et
    - l’étape d’association comprend l’utilisation du premier index et du deuxième index pour associer chaque chaîne de caractères à une expression régulière de fusion.
  • L’invention couvre également un système de classification de données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données.
    En particulier, le système comprend :
    - au moins un dispositif de stockage de données configuré pour stocker des données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données, et
    - au moins un processeur configuré pour exécuter les instructions pour mettre en œuvre du procédé de classification.
  • D’autres caractéristiques et avantages de l’invention seront mieux compris à la lecture de la description qui va suivre et en référence aux dessins annexés, donnés à titre illustratif et nullement limitatif.
  • La représente un mode de réalisation d’un procédé de classification selon l’invention.
  • La représente un mode de réalisation d’un système pour la mise en œuvre du procédé de la .
  • Sur les différentes figures, les traits et flèches en pointillés indiquent des éléments, des étapes et des enchaînements facultatifs ou optionnels.
  • L’un des objectifs de cette invention est de fournir un outil objectif et reproductible pour identifier les types de données dans un lac de données.
  • Pour cela, l’art antérieur propose d’entraîner des modèles d’apprentissage machine pour réaliser cette tâche. Or, l’entraînement de modèles d’apprentissage machine nécessite de gros volumes de données d’entraînement et des compétences avancées en science de la donnée (« data science », en anglais).
  • Or, les inventeurs ont remarqué que la majorité des données d’un lac de données se présentent sous la forme d’une chaîne de caractères ou peuvent être converties en chaînes de caractères.
  • Aussi, les inventeurs proposent d’utiliser l’approche des expressions régulières pour classifier et ensuite identifier les types de données dans un lac de données.
  • Cette solution est simple à mettre en œuvre, n’utilise pas de modèle d’apprentissage et ne nécessite pas de faire appel à des connaissances avancées en science de la donnée.
  • Ainsi, l’invention concerne un procédé de classification de données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données.
  • Dans l’invention, on entend par lac de données (« data lake », en anglais) un espace de stockage où l’on rassemble des données sous leur forme naturelle, qu’elles soient brutes ou transformées. Et ce, dans un objectif d’analyse (p. ex. l’établissement de comptes rendus, de visualisations ou de structures analytiques) ou d’action (p. ex. apprentissage machine).
  • Ainsi, un lac de données peut comprendre des entités de données primaires sous différentes formes telles que des données structurées (p. ex. des bases de données qui comprennent des lignes et des colonnes), des données semi-structurées (p. ex. des fichiers du type CSV, logs, XML ou JSON), des données non structurées (p. ex. des emails, des fichiers PDFs), et des données binaires (p. ex. des fichiers images, audios ou vidéos).
  • En pratique, chaque entité de données primaire comprend une pluralité de champs de données.
  • De manière connue, chaque champ de données possède un type de données qui peut être choisi parmi : les types numériques, les types temporels et les types chaînes de caractères.
  • Dans un premier exemple, lorsque le type de donnée est numérique, celui-ci peut être choisi parmi les types numériques définis dans les normes associées aux bases de données relationnelles du type SQL, tels qu’un entier ou un nombre décimal et toutes combinaisons de ceux-ci.
  • Toutefois, selon les données disponibles, on pourra utiliser d’autres types numériques, et ce, sans nécessiter de modifications substantielles de l’invention.
  • Dans un deuxième exemple, lorsque le type de donnée est temporel, celui-ci peut être choisi parmi les types temporels définis dans les normes associées aux bases de données relationnelles du type SQL, tels qu’une date, une heure, un jour, une année, une minute, une seconde et toutes combinaisons de ceux-ci.
  • Toutefois, selon les données disponibles, on pourra utiliser d’autres types temporels, et ce, sans nécessiter de modifications substantielles de l’invention.
  • Dans un troisième exemple, lorsque le type de donnée est une chaîne de caractères, celui-ci peut être choisi parmi les types de chaînes de caractères définis dans les normes associées aux bases de données relationnelles du type SQL, tels qu’une chaîne en ASCII, une chaîne binaire, une énumération et toutes combinaisons de celles-ci.
  • Toutefois, selon les données disponibles, on pourra utiliser d’autres types de chaînes de caractères, et ce, sans nécessiter de modifications substantielles de l’invention.
  • Dans un mode particulier de réalisation de l’invention, on pourra considérer que tous les champs du lac de données possèdent le même type, par exemple le type chaîne de caractères.
  • Pour cela, on pourra utiliser des techniques connues de conversion de types de données.
  • De retour à l’invention, comme illustré dans l’exemple de la , le procédé de classification 100 comprend une étape de description 110, une étape d’extraction 120, une étape de groupement 130, une étape de fusion 140 et une étape d’association 150.
  • Tout d’abord, l’étape de description 110 du procédé de classification 100 comprend la description de chaque chaîne de caractères sous la forme d’une expression régulière correspondante.
  • De manière connue, on entend par expression régulière (également appelée « regular expression », ou regex, en anglais), une chaîne de caractères, qui décrit, selon une syntaxe précise, un ensemble de chaînes de caractères possibles.
  • En pratique, dans l’invention, chaque expression régulière, décrit une chaîne de caractères au moyen d’une suite de caractères typographiques, dit motifs (« patterns », en anglais).
  • Par exemple, l’ensemble de mots « ex-équo, ex-equo, ex-aequo et ex-æquo » peut être condensé en un seul motif « ex-(a?e|æ|é)quo ». Les mécanismes de base pour former des expressions régulières sont basés sur des caractères spéciaux de substitution, de groupement et de quantification.
  • De préférence, chaque chaîne de caractère comprend au moins un caractère spécial pour décrire le début de l’expression régulière et au moins un caractère spécial pour décrire la fin de l’expression régulière.
  • Par exemple, on pourra utiliser le caractère « ^ » pour décrire le début d’une expression régulière et le caractère « $ » pour décrire la fin de l’expression régulière. Pour cela, chacun de ces caractères ne devra pas être précédé ou suivi d’un autre caractère.
  • En particulier, on caractérise chaque motif par son nombre d’apparitions consécutives avec le nombre d’apparitions consécutives qui est supérieur ou égal à un.
  • Dans un mode de réalisation particulier, on pourra utiliser un ou plusieurs caractères spéciaux, qui sont dotés d’une sémantique particulière, pour caractériser le nombre d’apparitions consécutives de l’expression qui précèdent.
  • De manière connue, on pourra utiliser la forme suivante « expr{n} » pour indiquer exactement « n » occurrences consécutives de l’expression « expr ».
  • Par exemple, l’expression régulière « a{3} » décrira une chaîne de caractères qui comprend trois caractères « a » qui sont consécutifs. À savoir, la chaîne de caractère « aaa ». Ainsi, l’expression régulière « a{3} » ne décrira pas les chaînes de caractères « aa » ou « aaaa ».
  • Dans un premier mode de réalisation, on pourra réduire la liste des expressions régulières produites, en supprimant celles qui apparaissent plusieurs fois.
  • Pour cela, l’étape de description 110 comprend une étape de suppression 111 des expressions régulières redondantes.
  • Ainsi, si l’on peut décrire deux chaînes de caractères avec la même expression régulière, alors on supprimera l’une pour n’en conserver qu’une seule.
  • Bien sûr, si l’on obtient plus de deux expressions régulières identiques, alors on n’en conservera qu’une seule.
  • Dans un deuxième mode de réalisation, on pourra réduire la liste des expressions régulières produites, en supprimant celles qui s’écartent tellement du reste des expressions régulières que l’on peut soupçonner qu’elles aient été produites à partir de chaînes de caractères qui suivent une structure très différente de celle des autres chaînes de caractères.
  • Pour cela, l’étape de description 110 comprend une étape de détection 112 des expressions régulières aberrantes.
  • On entend par expression régulière « aberrante » (« outlier », en anglais), une expression régulière qui contraste grandement avec les autres expressions régulières.
  • Dans un exemple du deuxième mode de réalisation, l’étape de détection 112 des expressions régulières aberrantes comprend le calcul d’au moins une métrique représentative des expressions régulières et qui est choisie parmi : une grandeur statistique et un algorithme de regroupement et toutes combinaisons de ceux-ci.
  • Dans un premier exemple, lorsque la métrique est une grandeur statistique, celle-ci est basée sur l’écart-type.
  • Par exemple, on pourra déterminer l’occurrence de chaque expression régulière extraite, puis utiliser la métrique suivante : avec l’occurrence moyenne de l’ensemble des expressions régulières produites, un coefficient prédéterminé (p. ex. ou ; bien sûr, on pourra envisager d’autres valeurs, sans nécessiter de modifications substantielles de l’invention) et l’écart-type de l’ensemble des expressions régulières produites.
  • Dans un deuxième exemple, lorsque la métrique est un algorithme de regroupement, celui-ci est choisi parmi : un groupement des k moyennes, un groupement de c-moyennes floues, un groupement spectral, une propagation d’affinité, un décalage moyen, un groupement hiérarchique de Ward, un groupement agglomératif, un regroupement par espérance-maximisation, un algorithme basé sur la densité comme DBSCAN, des mélanges gaussiens, un groupement de Birch, et toutes combinaisons de ceux-ci.
  • Dans une mise en œuvre particulière l’étape de détection 112, celle-ci comprend une étape de suppression 113 des expressions régulières aberrantes.
  • Ainsi, si une expression régulière se trouve au-delà d’une valeur prédéterminée de la métrique, alors on la supprimera.
  • Ensuite, l’étape d’extraction 120 du procédé de classification 100 comprend l’extraction de la structure sémantique de chaque expression régulière.
  • En particulier, on extrait pour chaque expression régulière, les différents motifs et caractères spéciaux.
  • En outre, on omet temporairement de la structure sémantique, les nombres d’apparitions consécutives de motifs de chaque expression régulière jusqu’à l’exécution de l’étape de fusion 140.
  • Par exemple, l’expression régulière suivante :
    « ^[a-z]{7}@{1}[a-z]{5}\.{1}[a-z]{3}$ »
    deviendra
    « ^[a-z]@[a-z]\.[a-z]$ ».
  • Ou encore, l’expression régulière
    « ^[a-z]{6}\.{1}[a-z]{3}@{1}[a-z]{5}\.{1}[a-z]{3}$ »
    deviendra
    « ^[a-z]\.[a-z]@{1}[a-z]{5}\.[a-z]$ ».
  • Ainsi, on note qu’à l’issue de l’étape d’extraction 120, on a seulement conservé l’expression « expr » dans chaque motif de forme « expr{n} » et que on a supprimé l’expression « {n} ».
  • Puis, l’étape de groupement 130 du procédé de classification 100 comprend le groupement des expressions régulières dans une pluralité de groupes disjoints, chaque groupe comprenant des expressions régulières qui présentent la même structure sémantique.
  • Par exemple, les deux expressions régulières suivantes :
    « ^[a-z]{7}@{1}[a-z]{5}\.{1}[a-z]{3}$ », et
    « ^[a-z]{7}@{1}[a-z]{7}\.{1}[a-z]{2}$ »,
    qui deviennent respectivement, à l’étape d’extraction 120 :
    « ^[a-z]@[a-z]\.[a-z]$ », et
    « ^[a-z]@[a-z]\.[a-z]$ »,
    forment partie d’un même premier groupe.
  • Aussi, les deux expressions régulières suivantes :
    « ^[a-z]{6}\.{1}[a-z]{3}@{1}[a-z]{5}\.{1}[a-z]{3}$ », et
    « ^[a-z]{6}\.{1}[a-z]{6}@{1}[a-z]{7}\.{1}[a-z]{2}$ »
    qui deviennent respectivement, à l’étape d’extraction 120,
    « ^[a-z]\.[a-z]@{1}[a-z]{5}\.[a-z]$ », et
    « ^[a-z]\.[a-z]@{1}[a-z]{5}\.[a-z]$ »,
    forment partie d’un même deuxième groupe.
  • Ensuite, l’étape de fusion 140 du procédé de classification 100 comprend la fusion des expressions régulières de chaque groupe en une expression régulière de fusion de sorte que chaque expression régulière de fusion décrive, pour chaque motif de même niveau, le nombre minimal d’apparitions consécutives et le nombre maximal d’apparitions consécutives.
  • Dans un mode de réalisation, l’étape de fusion 140 comprend une étape d’identification 141 du niveau d’un motif dans plusieurs expressions régulières d’un groupe en fonction de sa position dans chaque expression régulière.
  • Par exemple, dans les deux expressions régulières suivantes :
    « ^[a-z]{7}@{1}[a-z]{5}\.{1}[a-z]{3}$ », et
    « ^[a-z]{7}@{1}[a-z]{7}\.{1}[a-z]{2}$ »,
    l’expression « ^[a-z]{7} » de la première expression régulière se situe au même niveau que l’expression « ^[a-z]{7} » de la deuxième expression régulière.
    Puis, l’expression « @{1} » de la première expression régulière se situe au même niveau que l’expression « @{1} » de la deuxième expression régulière.
    Ensuite, l’expression « [a-z]{5} » de la première expression régulière se situe au même niveau que l’expression « [a-z]{7} » de la deuxième expression régulière. Et ainsi de suite jusqu’à la fin de chaque expression régulière.
  • Par ailleurs, de manière connue, pour exprimer le nombre minimal d’apparitions consécutives et le nombre maximal d’apparitions consécutives, on pourra utiliser la forme suivante « expr{n,m} » pour indiquer entre « n » et « m » occurrences de l’expression « expr ».
  • Par exemple, la fusion des deux expressions régulières suivantes :
    « ^[a-z]{7}@{1}[a-z]{5}\.{1}[a-z]{3}$ », et
    « ^[a-z]{7}@{1}[a-z]{7}\.{1}[a-z]{2}$ »
    qui à l’étape de groupement 130 forment partie d’un premier groupe, produit l’expression régulière de fusion suivante « ^[a-z]{7}@{1}[a-z]{5,7}\.{1}[a-z]{2,3}$ ».
  • Aussi, la fusion des deux expressions régulières suivantes :
    « ^[a-z]{6}\.{1}[a-z]{3}@{1}[a-z]{5}\.{1}[a-z]{3}$ », et
    « ^[a-z]{6}\.{1}[a-z]{6}@{1}[a-z]{7}\.{1}[a-z]{2}$ »
    qui à l’étape de groupement 130 forment partie d’un deuxième groupe, produit l’expression régulière de fusion suivante, « ^[a-z]{6}\.{1}[a-z]{3,6}@{1}[a-z]{5,7}\.{1}[a-z]{2,3}$ ».
  • Enfin, l’étape d’association 150 du procédé de classification 100 comprend l’association de chaque chaîne de caractères à une expression régulière de fusion.
  • Dans un premier mode de réalisation, on peut utiliser les expressions régulières produites pour identifier les chaînes de caractères qui leur correspondent.
  • Pour cela, l’étape d’association 150 comprend une étape d’application 151 des expressions régulières de fusion à chaque chaîne de caractère pour produire une donnée de sortie qui est représentative de la correspondance entre les expressions régulières de fusion et chaque chaîne de caractère.
  • En effet, lorsqu’une chaîne de caractères correspond à la description donnée par l’expression régulière, on dit qu’il y a « correspondance » entre la chaîne et le motif, ou que le motif « reconnaît » la chaîne. Cette correspondance peut concerner la totalité ou une partie de la chaîne de caractères. Par exemple, dans la phrase « Les deux équipes ont terminé ex-æquo et se sont saluées. », la sous-chaîne « ex-æquo » est reconnue par le motif « ex-(a?e|æ|é)quo ».
  • Dans l’invention, on considèrera qu’il y a correspondance lorsque la correspondance concerne la totalité de la chaîne de caractère concernée.
  • Dans un deuxième mode de réalisation, on pourra considérer que des étapes consécutives du procédé de classification 100 sont reliées par une relation bijective de sorte qu’il possible d’associer chaque chaîne de caractères à l’expression régulière de fusion dont elle découle.
  • Pour cela,
    - l’étape de description 110 comprend l’association d’un premier index unique entre chaque chaîne de caractère et la structure sémantique correspondante,
    - l’étape de groupement 130 comprend l’association d’un deuxième index unique entre chaque structure sémantique et le groupe correspondant, et
    - l’étape d’association 150 comprend l’utilisation du premier index et du deuxième index pour associer chaque chaîne de caractères à une expression régulière de fusion.
  • Ainsi, en sauvegardant le premier index, le deuxième index et leurs relations, on peut relier chaque chaîne de caractères à l’expression régulière de fusion dont elle découle.
  • L’invention couvre également un système informatique pour classifier des données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données.
  • Ainsi, comme illustré dans l’exemple de la , le système 200 comprend au moins un dispositif de stockage de données 210 et au moins un processeur 220.
  • Le dispositif de stockage de données 210 est configuré pour stocker des données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données.
  • Le processeur 220 est configuré pour exécuter les instructions pour mettre en œuvre tout ou partie du procédé de classification 100 tel que décrit ci-dessus.
  • Nous avons décrit et illustré l’invention. Toutefois, l’invention ne se limite pas aux formes de réalisations que nous avons présentées. Ainsi, un expert du domaine peut déduire d’autres variantes et modes de réalisation, à la lecture de la description et des figures annexées.
  • L’invention peut faire l’objet de nombreuses variantes et applications autres que celles décrites ci-dessus. En particulier, sauf indication contraire, les différentes caractéristiques structurelles et fonctionnelles de chacune des mises en œuvre décrite ci-dessus ne doivent pas être considérées comme combinées et/ou étroitement et/ou inextricablement liées les unes aux autres, mais, au contraire, comme de simples juxtapositions. En outre, les caractéristiques structurelles et/ou fonctionnelles des différents modes de réalisation décrits ci-dessus peuvent faire l’objet en tout ou partie de toute juxtaposition différente ou de toute combinaison différente.

Claims (9)

  1. Procédé de classification (100) de données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données, le procédé (100) comprenant :
    - une étape de description (110) de chaque chaîne de caractères sous la forme d’une expression régulière correspondante, de sorte que chaque expression régulière décrit une chaîne de caractères au moyen d’une suite de caractères typographiques, dit motifs,
    chaque motif étant caractérisé par son nombre d’apparitions consécutives, le nombre d’apparitions consécutives étant supérieur ou égal à un ;
    - une étape d’extraction (120) de la structure sémantique de chaque expression régulière, dans laquelle on omet temporairement de la structure sémantique, les nombres d’apparitions consécutives de motifs de chaque expression régulière jusqu’à l’exécution de l’étape de fusion (140)  ;
    - une étape de groupement (130) des expressions régulières dans une pluralité de groupes disjoints, chaque groupe comprenant des expressions régulières qui présentent la même structure sémantique ;
    - une étape de fusion (140) des expressions régulières de chaque groupe en une expression régulière de fusion de sorte que chaque expression régulière de fusion décrive, pour chaque motif de même niveau, le nombre minimal d’apparitions consécutives et le nombre maximal d’apparitions consécutives, et
    - une étape d’association (150) de chaque chaîne de caractères à une expression régulière de fusion.
  2. Procédé (100) selon la revendication 1, dans lequel l’étape de description (110) comprend une étape de suppression (111) des expressions régulières redondantes.
  3. Procédé (100) selon l’une quelconque des revendications 1 à 2, dans lequel l’étape de description (110) comprend une étape de détection (112) des expressions régulières aberrantes.
  4. Procédé (100) selon la revendication 3, dans lequel l’étape de détection (112) des expressions régulières aberrantes comprend le calcul d’au moins une métrique représentative des expressions régulières et qui est choisie parmi : une grandeur statistique et un algorithme de regroupement.
  5. Procédé (100) selon l’une quelconque des revendications 3 à 4, dans lequel l’étape de détection (112) comprend une étape de suppression (113) des expressions régulières aberrantes.
  6. Procédé (100) selon l’une quelconque des revendications 1 à 5, dans lequel l’étape de fusion (140) comprend une étape d’identification (141) du niveau d’un motif dans plusieurs expressions régulières d’un groupe en fonction de sa position dans chaque expression régulière.
  7. Procédé (100) selon l’une quelconque des revendications 1 à 6, dans lequel l’étape d’association (150) comprend une étape d’application (151) des expressions régulières de fusion à chaque chaîne de caractère pour produire une donnée de sortie qui est représentative de la correspondance entre les expressions régulières de fusion et chaque chaîne de caractère.
  8. Procédé (100) selon l’une quelconque des revendications 1 à 6, dans lequel,
    - l’étape de description (110) comprend l’association d’un premier index unique entre chaque chaîne de caractère et la structure sémantique correspondante,
    - l’étape de groupement (130) comprend l’association d’un deuxième index unique entre chaque structure sémantique et le groupe correspondant, et
    - l’étape d’association (150) comprend l’utilisation du premier index et du deuxième index pour associer chaque chaîne de caractères à une expression régulière de fusion.
  9. Système (200) de classification de données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données, le système (200) comprenant :
    - au moins un dispositif de stockage de données (210) configuré pour stocker des données de chaînes de caractères d’au moins une entité de données primaire d’un lac de données, et
    - au moins un processeur (220) configuré pour exécuter les instructions pour mettre en œuvre un procédé selon l’une quelconque des revendications 1 à 8.
EP21854759.4A 2020-12-31 2021-12-31 Système et procédé pour classifier des données de chaînes de caractères d'une entité primaire d'un lac de données Pending EP4272090A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2014297 2020-12-31
PCT/IB2021/062519 WO2022144852A1 (fr) 2020-12-31 2021-12-31 Système et procédé pour classifier des données de chaînes de caractères d'une entité primaire d'un lac de données

Publications (1)

Publication Number Publication Date
EP4272090A1 true EP4272090A1 (fr) 2023-11-08

Family

ID=80119157

Family Applications (2)

Application Number Title Priority Date Filing Date
EP21854759.4A Pending EP4272090A1 (fr) 2020-12-31 2021-12-31 Système et procédé pour classifier des données de chaînes de caractères d'une entité primaire d'un lac de données
EP21851988.2A Pending EP4272089A1 (fr) 2020-12-31 2021-12-31 Système et procédé pour prédire un score global de similarité entre deux entités primaires d'un lac de données

Family Applications After (1)

Application Number Title Priority Date Filing Date
EP21851988.2A Pending EP4272089A1 (fr) 2020-12-31 2021-12-31 Système et procédé pour prédire un score global de similarité entre deux entités primaires d'un lac de données

Country Status (2)

Country Link
EP (2) EP4272090A1 (fr)
WO (2) WO2022144848A1 (fr)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10445062B2 (en) * 2016-09-15 2019-10-15 Oracle International Corporation Techniques for dataset similarity discovery
US10891316B2 (en) * 2018-07-02 2021-01-12 Salesforce.Com, Inc. Identifying homogenous clusters

Also Published As

Publication number Publication date
EP4272089A1 (fr) 2023-11-08
WO2022144852A1 (fr) 2022-07-07
WO2022144848A1 (fr) 2022-07-07

Similar Documents

Publication Publication Date Title
Nguyen et al. Automatic image filtering on social networks using deep learning and perceptual hashing during crises
US8326819B2 (en) Method and system for high performance data metatagging and data indexing using coprocessors
EP2084644B1 (fr) Outil informatique de gestion de documents numeriques
US9092229B2 (en) Software analysis system and method of use
US20210081437A1 (en) Systems and methods for trie-based automated discovery of patterns in computer logs
FR2933793A1 (fr) Procedes de codage et de decodage, par referencement, de valeurs dans un document structure, et systemes associes.
Aggarwal et al. On classification of high-cardinality data streams
WO2002067142A2 (fr) Dispositif d'extraction d'informations d'un texte a base de connaissances
WO2005101240A1 (fr) Procede de recherche d'informations, moteur de recherche et microprocesseur pour la mise en oeuvre de ce procede
WO2004010324A2 (fr) Systeme d'extraction d'informations dans un texte en langage naturel
WO2022144852A1 (fr) Système et procédé pour classifier des données de chaînes de caractères d'une entité primaire d'un lac de données
WO2007116042A1 (fr) Procede de de-doublonnage rapide d'un ensemble de documents ou d'un ensemble de donnees contenues dans un fichier
Aslam et al. Web-AM: An efficient boilerplate removal algorithm for Web articles
FR2901037A1 (fr) Procede et dispositif de generation de motifs structurels de reference aptes a representer des donnees hierarchisees
WO2019202450A1 (fr) Procédé et dispositif de vérification de l'auteur d'un message court
EP3924850A1 (fr) Procédé de construction de signatures comportementales de logiciels
Bellaouar et al. Efficient geometric-based computation of the string subsequence kernel
WO2013117872A1 (fr) Procede d'identification d'un ensemble de phrases d'un document numerique, procede de generation d'un document numerique, dispositif associe
CN1253814C (zh) 数字文件关键特征的自动撷取方法
CN115310564B (zh) 一种分类标签更新方法及系统
WO2020229760A1 (fr) Procede d'indexation multidimensionnelle de contenus textuels
FR3032290A1 (fr) Procede de production automatique d'une base de donnees a partir d'un modele de donnees generique et d'une taxinomie
FR2944895A1 (fr) Procede d'analyse heuristique d'un fichier et produit programme d'ordinateur pour la mise en oeuvre d'un tel procede
FR2880708A1 (fr) Procede de recherche dans l'encre par conversion dynamique de requete.
TW202242755A (zh) 偵測社群媒體廣告文章的方法與其系統

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20230724

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)