AI-powered generation
Last updated
Last updated
Sous Column settings > Generation Method, sélectionner AI-powered generation pour permettre aux modèles d'apprentissage automatique de Syntho de synthétiser automatiquement les données de vos tableaux.
Lorsque vous utilisez la génération de données synthétiques par l'IA, il est important que vos données soient aptes à être synthétisées.
Syntho s'attend à ce que vos données soient stockées dans des entity tables qui satisfont aux conditions suivantes :
Pour minimiser les risques d'atteinte à la vie privée et améliorer la capacité de généralisation de l'algorithme d'apprentissage, il convient en règle générale d'utiliser au minimum column-to-row ratio of 1:500 est recommandée. Par exemple, si votre tableau source comporte 6 colonnes, il doit contenir au moins 3 000 lignes.
Chaque entité est décrite dans une ligne.
Chaque ligne peut être traitée independently. L'ordre des lignes ne transmet aucune information. Le contenu d'une ligne n'affecte pas non plus les autres lignes.
Évitez les noms de colonnes avec privacy-sensitive informationcomme patient_a_médicaments
, patient_b_médicaments
, etc. Au lieu de cela, il faut avoir une colonne patient avec les noms. Cela permet d'éviter que les noms des patients soient exposés dans les métadonnées ou de contourner la protection des catégories rares (par exemple, il y a une colonne patient_a
, mais ce patient n'est apparu que cinq fois dans l'ensemble de la base de données).
Supprimer les colonnes qui sont derived directly from other columns. Par exemple, vous pouvez avoir une colonne net_amount
qui est dérivée des colonnes gross_amount
et taxes
. Pour les colonnes catégorielles, il peut y avoir des relations hiérarchiques, comme une colonne redondante Catégorie de traitement
faisant référence à une colonne Traitement
. La suppression de ces colonnes redondantes simplifiera le processus de modélisation et permettra d'obtenir des données synthétiques de meilleure qualité.
Syntho est capable de traiter des données sous forme de lists, sequencesou time series lorsqu'elles sont structurées sous forme de tableaux liés à des entités. Assurez-vous que vos données répondent aux critères suivants :
La structure est adaptée à la gestion des lists, sequencesou time-series data.
Il comprend deux tableaux :
un entity table qui satisfait à la Entity tables requirements.
a linked table.
Chaque enregistrement dans la table d'entité doit avoir un identifiant unique (primary key).
Chaque enregistrement de la table liée doit faire référence à l'identifiant unique de la table d'entité (foreign key).
Semblable aux exigences pour Entity tables, éliminer les colonnes dont les valeurs sont directly derived from other columns.
Supprimez les valeurs des lignes qui sont dérivées directement des valeurs des autres lignes. Par exemple, si votre jeu de données comprend des séquences avec des colonnes start_date
et end_date
, et que chaque start_date
correspond à la end_date
de la ligne qui la précède, supprimez l'une de ces valeurs redondantes, sous start_date
ou end_date
.
Pour plus d'informations sur la préparation de vos données lors de la synthèse de relations complexes entre tables, voir : Sequence model.
La plateforme Syntho supporte une grande variété de types de données. Sous le capot, Syntho utilise un schéma d'encodage où chaque type de données est associé à l'un des types d'encodage suivants.
Syntho utilise un type d'encodage discret pour synthétiser des valeurs numériques qui ont un nombre dénombrable de valeurs entre deux valeurs. Par exemple, le nombre de réclamations de clients ou le nombre de défauts.
Pour synthétiser des valeurs numériques qui ont un nombre infini de valeurs entre deux valeurs, comme le poids et la taille, Syntho utilise un type d'encodage continu.
Une colonne catégorielle a une valeur parmi un nombre fixe de valeurs possibles. Ces variables, comme le groupe sanguin d'une personne (i.e., A, B, AB ou O
), ont un ensemble fixe de catégories. L'encodage catégorique permet d'éviter que des valeurs aléatoires (par exemple, M, X ou Z
) n'apparaissent dans votre ensemble de données synthétiques.
Dans le cadre de la Encoding > Advanced settings, l'option [Rare category protection settings(./#rare-category-protection) apparaîtra, qui peut être utilisé pour protéger les catégories rares. Ces catégories peuvent potentiellement ré-identifier des valeurs aberrantes dans les données synthétiques.
Note: Le type d'encodage catégorique est le default fallback encoding type utilisés par Syntho. Cela signifie que tout type de base de données inconnu par Syntho sera automatiquement encodé comme catégorique.
Le type d'encodage Texte peut être utilisé pour obscurcir les IIP dans des textes non structurés en langage naturel.
Note: Les valeurs des colonnes contenant du texte non structuré sont souvent uniques par nature. Pour éviter que les valeurs ne tombent avant que l'encodage du texte ne puisse être appliqué, il est recommandé de définir l'option Rare category protection threshold à 0.
Pour plus d'informations, voir : Obfuscate PII in text.
Le type d'encodage connu sous le nom de Datetime est utilisé pour décrire les valeurs qui intègrent un composant de date et un composant d'heure, ou les deux.
En utilisant ce type d'encodage, Syntho est capable de synthétiser ces valeurs et de générer des dates et des heures qui sont statistiquement valides et représentatives.
Syntho supporte tous les types de données de date et d'heure pour les Syntho connectors.
Les colonnes de type datetime prennent en charge une précision allant jusqu'à la milliseconde. La précision de la nanoseconde n'est pas prise en charge.
Un identifiant universel unique (UUID) est une valeur unique de 128 bits, dont la différence avec les autres UUID générés est pratiquement garantie. Cette propriété est utilisée pour l'indexation rapide et fiable des données. Comme il ne répond à aucune distribution, il ne peut être modélisé, car il ne contient aucune information intrinsèque en dehors des besoins d'indexation.
Les types GEO nécessitent une logique de traitement particulière, en raison de la diversité de leur format et de leur représentation logique. Il existe des options telles que POINT, POLYGON, LINE qui peuvent représenter des informations telles que des géolocalisations individuelles, mais aussi des zones géographiques ou des chemins.
Syntho peut générer POINTSLes résultats de l'analyse des données peuvent être obtenus à l'aide d'un logiciel de gestion des données, sans être limités par une logique ou une heuristique externe. Certains GEO sont des limites pour les nouveaux points de données, comme les pays ou les villes. Syntho ne préserve pas automatiquement cette logique.
Conformément au principe de protection de la vie privée, Syntho remplace automatiquement toutes les observations catégorielles rares par une valeur définie par l'utilisateur dans une colonne codée en tant que colonne catégorielle.
Le remplacement de ces catégories rares permet d'éviter que ces valeurs sensibles ne s'infiltrent dans les données synthétiques.
Rare category protection threshold: Toutes les valeurs de la colonne dont la fréquence est égale ou inférieure au seuil de protection de la catégorie rare sont automatiquement remplacées.
Rare category replacement value: Toutes les valeurs de la colonne dont la fréquence est égale ou inférieure au seuil de protection de la catégorie rare sont automatiquement remplacées par cette valeur de remplacement.
Sous Column settings > Encoding type, sélectionner Advanced settings pour régler le rare category protection threshold.
Par défaut, la catégorie rare category protection threshold est fixée à 10. Cela signifie que toutes les valeurs de colonne qui apparaissent 10 fois ou moins sont automatiquement remplacées par la valeur définie par l'utilisateur.
Sous Column settings > Encoding type, sélectionner Advanced settings pour régler le rare category replacement value.
Par défaut, le rare category replacement value est un astérisque (*). Cela signifie que toutes les valeurs qui apparaissent moins de fois que la valeur rare category protection value sera remplacée par la valeur de remplacement.
Aller à Table settings sur le panneau de droite, faites défiler vers le bas pour voir Advanced settings pour visualiser et ajuster les paramètres au niveau du générateur. Selon la configuration du travail, un générateur est appliqué à une ou plusieurs colonnes.
Vous pouvez ajuster les paramètres avancés suivants du générateur :
Maximum rows used for training: Le nombre maximum de lignes à utiliser pour la formation. L'utilisation d'un nombre inférieur de lignes peut accélérer le processus. Laissez cette valeur à None pour utiliser toutes les lignes pour l'apprentissage.
Take random sample:
OnLa méthode de l'échantillon aléatoire : prend un échantillon aléatoire des lignes utilisées pour l'apprentissage.
Off: prend les premières lignes telles qu'elles sont définies dans la base de données.
Sélectionner Advanced settings sous Encoding type pour visualiser et ajuster les paramètres au niveau de la colonne.
Vous pouvez ajuster les paramètres avancés suivants, en fonction du type d'encodage sélectionné :
Clipping threshold: Le plancher et le plafond d'une colonne comme le Nth la valeur la plus basse et la valeur la plus élevée, où N est le seuil d'écrêtage. La valeur du seuil traitera les valeurs de manière à ne pas dépasser le plafond et le plancher.
Rare category protection threshold: Toutes les valeurs des colonnes dont la fréquence est égale ou inférieure au seuil de protection de la catégorie rare sont automatiquement remplacées.
Rare category replacement value: Toutes les valeurs de la colonne dont la fréquence est égale ou inférieure au seuil de protection de la catégorie rare sont automatiquement remplacées par cette valeur de remplacement.
Locale: La langue locale utilisée par les modèles de traitement de texte pour les colonnes dont le texte contient des informations confidentielles.