Alibaba Cloud a lancé une fonction efficace de recherche de séquences de gènes de virus, sa logique sous-jacente s'est avérée être la suivante

 

1. Contexte Introduction

Fin 2019, un nouveau type de coronavirus a fait son apparition à Wuhan, le nouveau centre commercial de Chine. Au cours des deux mois de l'épidémie, plus de 3 300 personnes sont mortes et plus de 82 000 personnes ont été infectées en Chine. Alors que l'épidémie continue de se propager, elle s'est maintenant propagée dans 109 pays, causant plus de 800 000 infections et plus de 40 000 personnes ont perdu la vie. Jusqu'à présent, l'épidémie a fermé plus de 50 pays et causé des centaines de milliards de dollars de pertes économiques dans le monde. Alibaba Cloud fournit une recherche de séquence de gènes efficace pour aider l'analyse des séquences de coronavirus pour la prévention des épidémies.

Pour l'épidémie actuelle, la technologie d'analyse des séquences de gènes est principalement utilisée dans les aspects suivants.

Premièrement, la traçabilité et l'analyse du nouveau coronavirus peuvent aider les gens à trouver l'hôte du virus et à faire une prévention efficace. Grâce à la technologie d'appariement des gènes, nous pouvons constater que l'appariement des séquences d'ARN des coronavirus chez les chauves-souris et les pangolins a atteint 96% et 99,7%, de sorte que les pangolins et les chauves-souris sont susceptibles d'être les hôtes de nouveaux coronavirus.

Deuxièmement, grâce à l'analyse de la séquence des gènes, la séquence des gènes est divisée en régions fonctionnelles pour comprendre la fonction de chaque module, afin de mieux analyser le processus de réplication et de propagation du virus. Trouvez les nœuds clés et concevez les médicaments et vaccins associés.

Troisièmement, en même temps, il est possible de récupérer des séquences de gènes viraux similaires aux coronavirus, tels que le SRAS, le MERS et d'autres virus. Par conséquent, il est possible de s'appuyer sur le mécanisme de conception des cibles médicamenteuses associées et de concevoir des kits de test, des vaccins et des médicaments thérapeutiques associés plus rapidement et plus efficacement.

Cependant, l'algorithme actuel d'appariement des gènes est trop lent, donc un algorithme d'appariement efficace est nécessaire de toute urgence pour l'analyse de la séquence des gènes. L'équipe d'Alibaba Cloud AnalyticDB convertit des fragments de séquence de gènes en caractéristiques vectorielles correspondantes à 1024 dimensions. Le problème d'appariement de deux fragments de gène est converti en problème de calcul de distance de deux vecteurs, ce qui réduit considérablement le temps de calcul. Le système peut renvoyer les fragments de gène associés au niveau de la milliseconde pour terminer le criblage initial des fragments de gène.

Ensuite, l'algorithme BLAST [6] pour le calcul de la similitude des gènes est utilisé pour compléter l'agencement fin de la similitude des gènes, afin de compléter efficacement le calcul de correspondance de séquence des gènes. L'algorithme de correspondance est réduit de la complexité de l'algorithme O (M + N) d'origine à O (1). Dans le même temps, Alibaba Cloud AnalyticDB fournit un puissant outil d'analyse d'apprentissage automatique. Grâce à la technologie des vecteurs de transfert de gènes, les fragments de gènes cibles locaux et liés à la maladie sont convertis en vecteurs caractéristiques pour la conception de médicaments génétiques, ce qui accélère considérablement le gène Processus d'analyse.

 

2. Application de la recherche de gènes

 

2.1 Fonction de recherche de gènes

La séquence d'ARN du nouveau coronavirus peut exprimer une série de séquences d'acide nucléique (également appelées séquences de base). Il y a un total de quatre nucléotides dans la séquence d'ARN, désignés par A, C, G et T, représentant respectivement l'adénine, la cytosine, la guanine et la thymine. Chaque lettre représente une sorte de base, elles sont disposées ensemble sans espaces. La séquence d'ARN de chaque espèce est différente et régulière. Le système de recherche de gènes peut rechercher des gènes similaires en saisissant une chaîne de fragments de gènes viraux, qui peuvent être utilisés pour l'ARN viral.

Afin de démontrer notre méthode de récupération de fragments de gènes, nous avons téléchargé un grand nombre de fragments d'ARN viral de genbank, et importé les articles sur les virus dans genbank et les articles sur les virus dans google scholar dans la base de données de recherche de gènes AnalyticDB.

L'interface de démonstration de la recherche de gènes est illustrée à la figure 1. L'utilisateur télécharge la séquence du coronavirus (COVID-19) dans l'outil de recherche de gènes AnalyticDB. Le système peut récupérer des fragments de gènes similaires en quelques millisecondes (le système actuel ne renvoie que des fragments de gènes avec un degré correspondant supérieur à 0,8). Nous pouvons voir que le coronavirus porté par le pangolin (GD / P1L), le coronavirus porté par la chauve-souris (RaTG13) et les virus SARS et MARS ont été retournés. Parmi eux, GD / P1L a la correspondance de séquence la plus élevée, avec 0,974. Le coronavirus est susceptible d'être transmis à l'homme par les pangolins.

 

 

 

Figure 1. Interface de recherche de gènes

Comme nous le savons tous, les fragments d'ARN sont très similaires, ce qui indique que ces deux ARN peuvent avoir une expression et une structure protéiques similaires. Grâce à l'outil de recherche de gènes, nous pouvons voir que le degré de correspondance du SRAS et du MARS avec le coronavirus est supérieur à 0,8. Il montre que certains résultats de recherche sur le SRAS ou le MARS peuvent être appliqués au nouveau coronavirus. Le système a analysé les papiers de chaque virus et a divisé ces papiers en classes de détection, vaccins et médicaments via l'algorithme de classification de texte.

Lorsque nous cliquons sur le SRAS (voir figure 2), nous pouvons voir qu'il existe sept méthodes de détection du SRAS, quatre méthodes pour les vaccins et dix méthodes pour les médicaments. On peut voir que la détection par fluorescence quantitative par PCR qui est efficace pour le SRAS est maintenant appliquée à la détection des coronavirus. Pour les vaccins, les méthodes des vaccins génétiques et les méthodes d'induction des vaccins immunitaires in vivo sont également en plein essor. Concernant les médicaments, le ridxivir et les interférons apparentés sont également utilisés dans le traitement des nouveaux coronavirus.

 

 

 

Figure 2. Classification des articles connexes

La figure 3 montre le lien interféron connexe, vous pouvez voir les articles pertinents. Le système actuel appelle le logiciel de traduction automatique et extrait les mots-clés de la version chinoise du nom de fichier comme nom de fichier, ce qui est pratique à lire pour les utilisateurs.

 

 

 

Figure 3. Cliquez sur le lien interféron

 

2.2 Conception globale de l'architecture d'application

L'architecture globale du système de récupération de gènes Alibaba Cloud est illustrée à la figure 4. AnalyticDB est responsable de toutes les données structurées de l'ensemble de l'application (par exemple, la longueur de la séquence du gène, le nom du document contenant ce gène et le type de gène, d'ADN ou d'ARN, etc.). Voir la figure 4, partie de résultat de retour de requête) et le stockage et la requête du vecteur caractéristique généré par la séquence du gène. Lors de l'interrogation, nous utilisons le modèle d'extraction de vecteur de gène pour convertir les gènes en vecteurs et effectuons une recherche grossière dans la bibliothèque AnalyticDB. Dans le jeu de résultats de l'appariement des vecteurs, nous utilisons l'algorithme classique BLAST [7] pour un tri fin et renvoyons la séquence de gènes la plus similaire.

Le cœur de ceci est que le module d'extraction de vecteur de gène contient la conversion de séquences nucléotidiques en vecteurs. Nous prenons actuellement tous les échantillons de séquence de divers ARN viraux pour la formation, afin que nous puissions facilement calculer la similitude des ARN viraux. Bien sûr, le modèle d'extraction de vecteurs actuel peut être facilement étendu aux gènes d'autres espèces. Le modèle d'extraction des vecteurs génétiques sera présenté en détail au chapitre 3.

 

 

Figure 4. Cadre de recherche de gènes

 

3. Introduction aux algorithmes clés

 

3.1 Algorithme d'extraction de vecteur génétique

Présentez d'abord l'algorithme de vecteur de mots le plus pertinent pour les vecteurs d'extraction de gènes.

Le vecteur de mots 1 est une technologie très mature, largement utilisée dans la traduction automatique, la compréhension en lecture, l'analyse sémantique et d'autres domaines connexes, et a obtenu un grand succès. La vectorisation de mots utilise une méthode sémantique distribuée pour exprimer la signification d'un mot. La signification d'un mot est le contexte dans lequel le mot se trouve.

Par exemple, dans le test d'anglais du lycée, il y a 10 postes vacants dans un court essai Choisissez le mot approprié en fonction du contexte du mot manquant. En d'autres termes, le contexte a pu exprimer avec précision le mot. Donnez le bon mot en indiquant que vous comprenez la signification du mot vacant. Par conséquent, grâce à la relation des mots de contexte, en utilisant l'algorithme de vecteur de mots, chaque mot peut générer un vecteur. En calculant la similitude du vecteur entre les deux mots, la similitude des deux mots est obtenue. Par exemple, "cuillère" et "bol" sont très similaires car ils apparaissent toujours dans la scène alimentaire.

La même chose est due au fait que l'arrangement des séquences de gènes a certaines règles, et les fonctions et significations exprimées par chaque partie de la séquence de gènes sont différentes. Par conséquent, nous pouvons diviser une séquence de gènes très longue en petits fragments unitaires (c'est-à-dire des "mots") pour la recherche. Et ces mots ont également un contexte, car ces mots sont connectés et interagissent pour remplir la fonction correspondante, formant une expression raisonnable. Par conséquent, les bioscientifiques 8 [10] utilisent l'algorithme de vecteur de mots pour vectoriser des unités de séquence de gènes. La similitude des deux unités géniques est très élevée, ce qui indique que les deux unités génétiques sont toujours ensemble et s'expriment ensemble pour remplir la fonction correspondante.

En résumé, la méthode spécifique d'extraction des vecteurs est principalement divisée en trois étapes:

Tout d'abord, nous devons d'abord résoudre la façon de définir les mots un par un dans la séquence d'acides aminés.K-mers [3] est utilisé pour analyser la séquence d'acides aminés en bioinformatique. k-mer désigne la division de la séquence d'acide nucléique en une chaîne contenant k bases, c'est-à-dire la sélection itérative d'une séquence de longueur K bases à partir d'une séquence d'acide nucléique continue. Si la longueur de la séquence d'acide nucléique est L, la longueur de k-mer est K, alors vous pouvez obtenir L-K + 1 k-mers. Comme le montre la figure 5, supposons qu'il existe une longueur de séquence de 12 et que la longueur k-mer sélectionnée soit 8, puis (12-8 + 1 = 5) 5-mers sont obtenus. Ces k-mers ne sont que des «mots» un par un dans la séquence d'acides aminés.

 

 

 

Figure 5. Diagramme de séquence d'acide nucléique 8-mer

Deuxièmement, pour l'algorithme de vecteur de mots, un autre problème important est le contexte du contexte. Nous choisirons une fenêtre de longueur L parmi les fragments d'acides aminés Les fragments d'acides aminés de cette fenêtre sont considérés comme étant dans le même contexte. Par exemple, nous avons sélectionné une fenêtre d'une longueur de 10 (une séquence d'acide nucléique de CTGGATGA), et nous l'avons convertie en 5 5 mers: {AACTG, ACTGG, CTGGA, GGATG, GATGA}. Pour l'un des 5-mer {CTGGA}, alors les 5-mers qui lui sont associés sont {AACTG, ACTGG, GGATG, GATGA}, et ces quatre 5-mers sont le contexte actuel du contexte de 5-mer {CTGGA} . Nous appliquons le modèle d'apprentissage de l'espace vectoriel de mots pour former les k-mers des gènes des organismes existants, et nous pouvons convertir un k-mer (un "mot" dans la séquence des gènes) en un vecteur à 1024 dimensions.

Encore une fois, semblable au modèle vectoriel de mots, le modèle vectoriel k-mer a également les mêmes propriétés de calcul mathématique que le modèle vectoriel de mots.

L'équation 1 montre que la distance entre le vecteur de la séquence nucléotidique ACGAT moins le vecteur de la séquence GAT et le vecteur de la séquence AC est très proche. La formule 2 montre que la distance entre le vecteur de la séquence nucléotidique AC plus le vecteur de la séquence ATC et le vecteur de la séquence ACATC est également très proche. Par conséquent, selon ces caractéristiques mathématiques, lorsque nous voulons calculer un vecteur d'une longue séquence d'acides aminés, nous accumulons chaque séquence k-mer dans cette séquence, et enfin normalisons pour obtenir le vecteur de la séquence d'acides aminés entière . Bien sûr, pour améliorer encore la précision, nous pouvons traiter le fragment de gène comme un texte, puis utiliser doc2vec4 pour convertir la séquence entière en un vecteur pour le calcul.

Afin de vérifier davantage les performances de l'algorithme, nous avons calculé la similitude entre la séquence de l'algorithme BLAST [6] couramment utilisée dans la bibliothèque de recherche de gènes et la séquence du vecteur de transfert de gènes à distance l2. Le coefficient de corrélation de rang Spearman des deux séquences est [7] 0,839. Par conséquent, il est efficace et faisable de convertir des séquences d'ADN en vecteurs pour le criblage initial de fragments de gènes similaires.

 

3.2 Caractéristiques d'AnalyticDB Vector Edition

La base de données analytique (AnalyticDB) est un entrepôt de données en temps réel de niveau PB à forte latence et faible latence sur Alibaba Cloud. Elle peut effectuer une analyse multidimensionnelle et une exploration commerciale en temps réel pour des milliards de données en millisecondes.

AnalyticDB for MySQL est entièrement compatible avec le protocole MySQL et la norme de grammaire SQL: 2003. AnalyticDB forPostgreSQL prend en charge la norme SQL: 2003 et est hautement compatible avec l'écologie grammaticale Oracle. Actuellement, les deux produits incluent une fonction de récupération vectorielle, qui peut prendre en charge l'image, la recommandation, l'empreinte vocale, le nucléotide Requêtes de similarité telles que l'analyse de séquence. À l'heure actuelle, AnalyticDB peut prendre en charge 1 milliard de requêtes de données vectorielles et un temps de réponse de 100 ms dans des scénarios d'application réels. AnalyticDB a été déployé dans des projets de sécurité à grande échelle dans de nombreuses villes.

Dans un système d'application général qui inclut la récupération vectorielle, les développeurs utilisent généralement un moteur de récupération vectorielle (tel que Faiss) pour stocker des données vectorielles, puis une base de données relationnelle pour stocker des données structurées. Lors de la requête, vous devez également interroger les deux systèmes en alternance. Cette solution aura un travail de développement supplémentaire et les performances ne sont pas optimales.

AnalyticDB prend en charge la récupération de données structurées et de données non structurées (vecteurs). En utilisant uniquement l'interface SQL, vous pouvez rapidement créer des fonctions telles que la recherche de gènes ou la recherche hybride de données structurées gène +. L'optimiseur d'AnalyticDB sélectionnera le plan d'exécution optimal en fonction de la distribution des données et des conditions de requête dans le scénario de récupération mixte, et garantira les meilleures performances tout en assurant le rappel.

La recherche de séquence d'acide nucléique d'ARN peut être réalisée via un SQL:

 
 

-Trouver des séquences de gènes avec un ARN similaire et des vecteurs de séquence soumis. sélectionnez le titre, # la longueur du nom de l'article, # le type de longueur du gène, # l'ARNm ou l'ADN, etc. l2_distance (fonction, tableau [-0.017, -0.032, ...] :: réel []) comme distance # distance vectorielle depuis demo.paper a , demo.dna_feature b où a.id = b.id ordre par distance; # trier par similitude vectorielle

Le tableau demo.paper stocke les informations de base des articles téléchargés et demo.dna_feature stocke le vecteur correspondant à la séquence génétique de chaque espèce. Grâce au modèle de vecteur de transfert de gène, le gène à récupérer est converti en un vecteur [-0.017, -0.032, ...] et recherché dans la base de données Alibaba Cloud AnalyticDB.

Bien sûr, le système actuel prend également en charge la récupération mixte d'informations structurées + d'informations non structurées (séquence nucléotidique). Par exemple, nous voulons trouver des fragments de gènes similaires liés au coronavirus. Dans ce cas, en utilisant AnalyticDB, nous avons seulement besoin d'ajouter où le titre comme «% COVID-19%» en SQL pour atteindre facilement.

Pour le cloud, voir Yunqi: plus d'informations sur le cloud, les cas de cloud, les meilleures pratiques, l'introduction du produit, visitez: https://yqh.aliyun.com/

Cet article est le contenu original d'Alibaba Cloud et ne peut être reproduit sans autorisation.

Publié 1217 articles originaux · 90 éloges · 230 000 vues +

Je suppose que tu aimes

Origine blog.csdn.net/weixin_43970890/article/details/105490426
conseillé
Classement