Intelligence artificielle explicable grâce à la théorie des graphes classificateurs basée sur l’analyse généralisée des réseaux sociaux

Dans cette sous-section, nous présentons des détails sur la façon dont nous traitons l’ensemble de données, le transformons en un graphe de réseau, et enfin, comment nous produisons et traitons les caractéristiques qui appartiennent au graphe. Les sujets à couvrir sont :

  • fractionner les données,

  • pré-traitement,

  • importance et sélection des ressources,

  • calcul de similarité entre échantillons, et

  • génération de graphes bruts.

Fractionner les données tabulaires

Après le prétraitement des données, l’étape suivante consiste à diviser l’ensemble de données en échantillons d’apprentissage et de test à des fins de validation. Nous avons sélectionné la validation croisée (CV) comme méthode de validation car il s’agit de la norme de facto dans la recherche ML. Pour CV, l’ensemble de données complet est divisé en k plis ; et le modèle de classificateur est entraîné à l’aide de (k-1) données de pli, puis testé sur le k’ième pli restant. Finalement, après k itérations, les scores de performance moyens (tels que la mesure F1 ou ROC) de tous les plis sont utilisés pour comparer le modèle de classificateur.

Une étape cruciale du CV consiste à sélectionner le bon rapport entre les sous-échantillons d’apprentissage et de test, c’est-à-dire le nombre de plis. La détermination du nombre de plis k le plus approprié pour un ensemble de données donné est encore une question de recherche ouverte.17de plus, le modèle de facto pour sélectionner k est accumulé autour de k = 2, k = 5 ou k = 10. Pour approcher la sélection de la bonne taille de chaîne, nous avons identifié deux priorités :

  • Priorité 1—Équilibrage des classes : nous devons considérer que chaque division de l’ensemble de données doit être équilibrée par classe. Comme le nombre de types de classes a un effet restrictif sur la sélection d’un nombre suffisant d’échantillons similaires, la détection du nombre effectif de plis dépend fortement de ce paramètre. Par conséquent, chaque fois que nous traitons un problème qui a une ou des classes mal représentées, nous sélectionnons k = 2.

  • Priorité 2 – Représentation élevée : Dans notre modèle, brièvement, nous construisons un réseau à partir des sous-échantillons de formation. Une analyse de réseau efficace dépend de la taille (c’est-à-dire du nombre de nœuds) du réseau. Ainsi, maximiser les sous-échantillons de formation avec suffisamment de représentants de chaque classe (diversité) est notre priorité autant que possible lors de la division de l’ensemble de données. De cette façon, nous pouvons avoir plus de nœuds. En résumé, à chaque fois que l’on ne croise pas la priorité 1, on sélectionne k = 5.

En équilibrant ces deux priorités, nous sélectionnons une taille de pli CV efficace en évaluant les caractéristiques de chaque ensemble de données en termes de taille d’échantillon et de nombre de classes différentes. La valeur de pli sélectionnée pour chaque jeu de données sera spécifiée dans la section “Expériences et résultats”. Pour respecter la priorité d’équilibrage des classes, nous utilisons un échantillonnage stratifié. Dans ce modèle, chaque pli CV contient approximativement le même pourcentage d’échantillons de chaque classe cible que l’ensemble complet.

Organisation et prétraitement de l’espace des ressources

Le prétraitement commence par la gestion des données manquantes. Pour cette partie, nous préférons omettre tous les échantillons qui ont une ou plusieurs fonctionnalités manquantes. Ce faisant, nous nous concentrons uniquement sur le développement de modèles, ignorant les préoccupations triviales.

Comme indiqué précédemment, GSNAc peut fonctionner sur des ensembles de données qui peuvent avoir à la fois des valeurs numériques et catégorielles. Pour assurer un traitement correct de ces types de données, dans un premier temps, nous séparons les caractéristiques numériques et catégorielles18. Tout d’abord, pour les traiter mathématiquement, les caractéristiques catégorielles (chaîne) sont transformées en entiers uniques pour chaque catégorie unique par une technique appelée étiquetage. Il convient de noter que, contrairement à l’approche générale, nous n’utilisons pas la technique de codage à chaud pour transformer les fonctionnalités catégorielles, qui est la méthode de création de fonctionnalités factices à valeur binaire. L’étiquetage ne génère pas de fonctionnalités supplémentaires, tandis que le codage à chaud étend le nombre de fonctionnalités.

Pour la partie numérique, étape très importante du pré-traitement, le dimensionnement19 des caractéristiques suit. La mise à l’échelle est bénéfique car les entités peuvent avoir une plage très différente et cela peut affecter les processus dépendant de l’échelle tels que le calcul de la distance. Nous avons deux techniques de mise à l’échelle généralement acceptées qui sont la normalisation et la standardisation. La normalisation transforme les caractéristiques linéairement en une plage fermée comme [0, 1], ce qui n’affecte pas la variation des valeurs entre les caractéristiques. D’autre part, la normalisation transforme l’espace des caractéristiques en une distribution de valeurs centrées autour de la moyenne avec un écart-type unitaire. De cette manière, la moyenne de l’attribut devient nulle et la distribution résultante a un écart type unitaire. Comme le GSNAc dépend fortement des distances vectorielles, nous ne préférons pas perdre la structure de variation au sein des caractéristiques et de cette façon, notre choix de mettre à l’échelle les caractéristiques devient une normalisation. Ici, il convient de mentionner que tout le prétraitement est appliqué à la partie formation des données et transformé en données de test, garantissant qu’aucune fuite de données ne se produit.

Importance et sélection des fonctionnalités

L’importance des fonctionnalités (FI) fait généralement référence aux fonctionnalités de notation en fonction de leur utilité dans les prévisions. Il est évident que dans tout problème, certaines caractéristiques peuvent être plus définitives en termes de capacité prédictive de la classe. De plus, une combinaison de certaines ressources peut avoir un effet plus important que d’autres sur le total que la somme de leur capacité à cet égard. Les modèles FI répondent généralement à ce type de préoccupation. En fait, presque tous les algorithmes de classification ML utilisent un algorithme FI sous le capot ; car cela est nécessaire pour une pondération correcte des caractéristiques avant d’introduire des données dans le modèle. Il fait partie de tout classificateur ML et GSNAc. En tant que modèle sensible à l’échelle, la similarité vectorielle doit bénéficier grandement de caractéristiques plus distinctives.

Pour calculer l’importance des fonctionnalités, nous préférons utiliser un algorithme prêt à l’emploi, qui est une « sélection des meilleures fonctionnalités k » supervisée.18 méthode. L’algorithme de sélection des caractéristiques K-best classe simplement toutes les caractéristiques en évaluant l’analyse ANOVA des caractéristiques par rapport aux étiquettes de classe. La valeur F ANOVA analyse la variance entre chaque caractéristique et sa classe respective et calcule la valeur F, qui est le rapport de la variation entre les moyennes de l’échantillon, sur la variation au sein des échantillons. De cette façon, il attribue des valeurs F comme importance des ressources. Notre stratégie globale consiste à conserver toutes les fonctionnalités pour tous les ensembles de données, à l’exception des ensembles de données génomiques, qui contiennent des milliers de fonctionnalités, que nous avons l’habitude d’omettre. Pour cette raison, au lieu de sélectionner certaines caractéristiques, nous préférons les conserver toutes et utiliser l’importance apprise à cette étape comme vecteur de poids dans le calcul de similarité.

Calcul de similarité entre échantillons et construction du graphe brut

Dans cette étape, nous générons un graphe de réseau non orienté G, ses nœuds seront les échantillons et ses arêtes seront construites en utilisant les métriques de distance20 entre les valeurs caractéristiques des échantillons. Les distances seront converties en scores de similarité pour générer une matrice de contiguïté à partir du tracé brut. Comme note cruciale, nous déclarons que puisque nous avons l’intention de prédire les échantillons de test à l’aide de G, dans chaque lot, nous ne traitons que les échantillons d’apprentissage.

Dans notre étude pour construire un graphique à partir d’un ensemble de données, nous avons défini les poids des bords comme l’inverse de la distance euclidienne entre les vecteurs d’échantillon. Simplement, la distance euclidienne (également connue sous le nom de norme L2) donne la distance en ligne droite sans unité (la plus courte) entre deux vecteurs dans l’espace. Formellement, pour les vecteurs de dimension f tu et vLa distance euclidienne est définie par :

$$d\left(u,v\right)=\sqrt[2]{\sum_{f}{\left({u}_{i}-{v}_{i}\right)}^{2}}$$

Une utilisation légèrement modifiée de la distance euclidienne consiste à introduire des poids pour les dimensions. N’oubliez pas la discussion sur l’importance des fonctionnalités dans les sections précédentes, certaines fonctionnalités peuvent contenir plus d’informations que d’autres. Nous abordons ensuite ce facteur en calculant une forme “pondérée” de la norme L2 basée sur la distance qui se présente comme suit :

$${dist\_L2}_{w}\left(u,v\right)=\sqrt[2]{\sum_{f}{{w}_{i}({u}_{i}-{v}_{i})}^{2}}$$

où w est le vecteur d’importance des caractéristiques à n dimensions et je itère sur les dimensions numériques.

L’utilisation de la distance euclidienne n’est pas adaptée aux variables catégorielles, c’est-à-dire qu’elle est ambiguë et qu’il n’est pas facile de déterminer à quelle distance se trouve l’habitat «ciel» d’un canari par rapport à l’habitat «mer» d’un requin. Ainsi, chaque fois que les données contiennent des caractéristiques catégorielles, nous modifions la métrique de distance selon la norme L0. La norme L0 vaut 0 si les catégories sont égales ; est 1 lorsque les catégories sont différentes, c’est-à-dire qu’entre ‘ciel’ et ‘mer’ la norme L0 est 1, qui est la valeur maximale. Suite à la discussion des poids pour les caractéristiques, la norme L0 est également calculée de manière pondérée comme \({dist\_L0}_{w}\left(u,v\right)=\sum_{f}{w}_{j}(({u}_{j}\ne {v}_{j })\pour une)\)j itère sur des dimensions catégorielles.

Après avoir calculé la distance pondérée par paire entre tous les échantillons d’apprentissage, nous combinons les parties numériques et catégorielles comme : \({{dist}_{w}\left(u,v\right)}^{2}={{dist\_L2}_{w}\left(u,v\right)}^{2}+ {{dist\_L0}_{w}\left(u,v\right)}^{2}\). Avec des distances de paires pour chaque paire d’échantillons, nous obtenons un non X non matrice de distance carrée et symétrique D, où n est le nombre d’échantillons d’apprentissage. Dans la matrice D, chaque élément indique la distance entre les vecteurs correspondants.

$$D= \left[\begin{array}{ccc}0& \cdots & d(1,n)\\ \vdots & \ddots & \vdots \\ d(n,1)& \cdots & 0\end{array}\right]$$

Notre objectif est d’obtenir un réseau pondéré, où les poids des bords représentent la “proximité” de ses nœuds connectés. Nous devons d’abord convertir les scores de distance en scores de similarité. Nous convertissons simplement les distances en similitudes en soustrayant la distance maximale dans la série de distances pour chaque élément.

$$similitude\_s(u,v)=\mathrm{max}\_\mathrm{value}\_\mathrm{of}(D)-{dist}_{w}\left(u,v\right) $$

Enfin, après avoir supprimé les auto-boucles (c’est-à-dire mettre les éléments diagonaux de A à zéro), nous utilisons la matrice d’adjacence A pour générer un graphe de réseau non orienté G. Dans cette étape, nous excluons la partie triangulaire inférieure (qui est symétrique à la partie triangulaire supérieure) pour éviter la redondance. Notez que lors de la transition de la matrice d’adjacence à un graphe, l’existence d’un score de similarité (positif) entre deux échantillons u et v crée une arête entre eux et bien sûr le score de similarité servira de ‘poids vectoriel’ de cette arête en particulier dans le graphique G.

$$A= \left[\begin{array}{ccc}-& \cdots & s(1,n)\\ \vdots & \ddots & \vdots \\ -& \cdots & -\end{array}\right]$$

Le graphe brut généré à cette étape est un « graphe complet » : c’est-à-dire que tous les nœuds sont connectés à tous les autres nœuds par une arête avec un certain poids. Les graphiques complets sont très complexes et parfois impossibles à analyser. Par exemple, il est impossible de produire certaines métriques SNA comme la centralité intermédiaire dans ce type de graphique.

Leave a Comment

Your email address will not be published.