Summary

Eine virtuelle Maschinenplattform für Nicht-Computer-Profis zur Verwendung von Deep Learning zur Klassifizierung biologischer Sequenzen metagenomischer Daten

Published: September 25, 2021
doi:

Summary

Dieses Tutorial beschreibt eine einfache Methode zum Erstellen eines Deep-Learning-Algorithmus für die 2-Klassen-Sequenzklassifizierung metagenomischer Daten.

Abstract

Eine Vielzahl von biologischen Sequenzklassifizierungsaufgaben, wie Speziesklassifizierung, Genfunktionsklassifikation und virale Wirtsklassifizierung, sind erwartete Prozesse in vielen metagenomischen Datenanalysen. Da metagenomische Daten eine große Anzahl neuartiger Arten und Gene enthalten, werden in vielen Studien leistungsfähige Klassifikationsalgorithmen benötigt. Biologen stoßen oft auf Herausforderungen, geeignete Sequenzklassifikations- und Annotationswerkzeuge für eine bestimmte Aufgabenstellung zu finden und sind oft nicht in der Lage, einen entsprechenden Algorithmus selbst zu konstruieren, weil ihnen die notwendigen mathematischen und rechnerischen Kenntnisse fehlen. Deep-Learning-Techniken sind in letzter Zeit zu einem beliebten Thema geworden und zeigen bei vielen Klassifizierungsaufgaben starke Vorteile. Bis heute wurden viele hochgepackte Deep-Learning-Pakete entwickelt, die es Biologen ermöglichen, Deep-Learning-Frameworks nach ihren eigenen Bedürfnissen zu konstruieren, ohne die Details des Algorithmus eingehend zu wissen. In diesem Tutorial stellen wir eine Anleitung zur Verfügung, um ein einfach zu bedienendes Deep-Learning-Framework für die Sequenzklassifizierung zu erstellen, ohne dass ausreichende mathematische Kenntnisse oder Programmierkenntnisse erforderlich sind. Der gesamte Code wird in einer virtuellen Maschine optimiert, sodass Benutzer den Code direkt mit ihren eigenen Daten ausführen können.

Introduction

Die metagenomische Sequenzierungstechnik umgeht den Prozess der Stammisolierung und sequenziert direkt die gesamte DNA in einer Umweltprobe. So enthalten metagenomische Daten DNA von verschiedenen Organismen, und die meisten biologischen Sequenzen stammen von neuartigen Organismen, die in der aktuellen Datenbank nicht vorhanden sind. Nach verschiedenen Forschungszwecken müssen Biologen diese Sequenzen aus verschiedenen Perspektiven klassifizieren, z. B. taxonomische Klassifikation1, Virus-Bakterien-Klassifikation2,3,4, Chromosomen-Plasmid-Klassifikation3,5,6,7und Genfunktionsannotation (z. B. Antibiotikaresistenz-Genklassifikation8 und Virulenzfaktorklassifikation9 ). Da metagenomische Daten eine große Anzahl neuartiger Arten und Gene enthalten, sind ab initio-Algorithmen, die nicht auf bekannte Datenbanken zur Sequenzklassifizierung (einschließlich DNA-Klassifikation und Proteinklassifizierung) angewiesen sind, ein wichtiger Ansatz in der metagenomischen Datenanalyse. Das Design solcher Algorithmen erfordert jedoch professionelle mathematische Kenntnisse und Programmierkenntnisse; Daher haben viele Biologen und Algorithmendesign-Anfänger Schwierigkeiten, einen Klassifizierungsalgorithmus zu konstruieren, der ihren eigenen Bedürfnissen entspricht.

Mit der Entwicklung der künstlichen Intelligenz wurden Deep-Learning-Algorithmen im Bereich der Bioinformatik weit verbreitet, um Aufgaben wie die Sequenzklassifizierung in der metagenomischen Analyse zu erledigen. Um Anfängern zu helfen, Deep-Learning-Algorithmen zu verstehen, beschreiben wir den Algorithmus im Folgenden auf leicht verständliche Weise.

Eine Übersicht über eine Deep-Learning-Technik ist in Abbildung 1 dargestellt. Die Kerntechnologie eines Deep-Learning-Algorithmus ist ein künstliches neuronales Netzwerk, das von der Struktur des menschlichen Gehirns inspiriert ist. Aus mathematischer Sicht kann ein künstliches neuronales Netzwerk als komplexe Funktion betrachtet werden. Jedes Objekt (z. B. eine DNA-Sequenz, ein Foto oder ein Video) wird zunächst digitalisiert. Das digitalisierte Objekt wird dann in die Funktion importiert. Die Aufgabe des künstlichen neuronalen Netzes ist es, eine korrekte Antwort entsprechend den Eingabedaten zu geben. Wenn beispielsweise ein künstliches neuronales Netzwerk konstruiert wird, um eine 2-Klassen-Klassifizierungsaufgabe auszuführen, sollte das Netzwerk eine Wahrscheinlichkeitsbewertung ausgeben, die zwischen 0-1 für jedes Objekt liegt. Das neuronale Netzwerk sollte dem positiven Objekt eine höhere Punktzahl geben (z. B. eine Punktzahl von mehr als 0,5), während es dem negativen Objekt eine niedrigere Punktzahl gibt. Um dieses Ziel zu erreichen, wird mit den Trainings- und Testprozessen ein künstliches neuronales Netzwerk aufgebaut. Während dieser Prozesse werden Daten aus der bekannten Datenbank heruntergeladen und dann in ein Trainingsset und ein Testset unterteilt. Jedes Objekt wird ordnungsgemäß digitalisiert und mit einer Beschriftung versehen (“1” für positive Objekte und “0” für negative Objekte). Im Trainingsprozess werden die digitalisierten Daten im Trainingsset in das neuronale Netz eingegeben. Das künstliche neuronale Netzwerk konstruiert eine Verlustfunktion, die die Unähnlichkeit zwischen dem Ausgabewert des Eingabeobjekts und der entsprechenden Bezeichnung des Objekts darstellt. Wenn die Bezeichnung des Eingabeobjekts beispielsweise “1” ist, während die Ausgabebewertung “0,1” ist, ist die Verlustfunktion hoch. und wenn die Bezeichnung des Eingabeobjekts “0” ist, während die Ausgabebewertung “0,1” ist, ist die Verlustfunktion niedrig. Das künstliche neuronale Netzwerk verwendet einen spezifischen iterativen Algorithmus, der die Parameter des neuronalen Netzwerks anpasst, um die Verlustfunktion zu minimieren. Der Trainingsprozess endet, wenn die Verlustfunktion offensichtlich nicht weiter verringert werden kann. Schließlich werden die Daten im Testset verwendet, um das feste neuronale Netzwerk zu testen, und die Fähigkeit des neuronalen Netzwerks, die richtigen Labels für die neuartigen Objekte zu berechnen, wird ausgewertet. Weitere Prinzipien von Deep-Learning-Algorithmen finden Sie im Review in LeCun et al. ( 10) DER PRÄSIDENT. – Nach der 10

Obwohl die mathematischen Prinzipien von Deep-Learning-Algorithmen komplex sein können, wurden kürzlich viele hochgepackte Deep-Learning-Pakete entwickelt, und Programmierer können direkt ein einfaches künstliches neuronales Netzwerk mit wenigen Codezeilen konstruieren.

Um Biologen und Anfängern des Algorithmendesigns den Einstieg in die Verwendung von Deep Learning zu erleichtern, bietet dieses Tutorial eine Richtlinie für die Erstellung eines benutzerfreundlichen Deep-Learning-Frameworks für die Sequenzklassifizierung. Dieses Framework verwendet die “One-Hot” -Kodierungsform als mathematisches Modell zur Digitalisierung der biologischen Sequenzen und verwendet ein neuronales Faltungsnetzwerk, um die Klassifizierungsaufgabe auszuführen (siehe ergänzendes Material). Das einzige, was die Benutzer tun müssen, bevor sie diese Richtlinie verwenden, ist die Vorbereitung von vier Sequenzdateien im “Fasta” -Format. Die erste Datei enthält alle Sequenzen der positiven Klasse für den Trainingsprozess (bezeichnet als “p_train.fasta”); die zweite Datei enthält alle Sequenzen der negativen Klasse für den Trainingsprozess (bezeichnet als “n_train.fasta”); die dritte Datei enthält alle Sequenzen der positiven Klasse für den Testprozess (bezeichnet als “p_test.fasta”); und die letzte Datei enthält alle Sequenzen der negativen Klasse für den Testprozess (im Folgenden “n_test.fasta”). Die Übersicht über das Flussdiagramm dieses Lernprogramms finden Sie in Abbildung 2, und weitere Details werden unten erwähnt.

Protocol

1. Die Installation der virtuellen Maschine Laden Sie die Datei der virtuellen Maschine von (https://github.com/zhenchengfang/DL-VM) herunter. Laden Sie die VirtualBox-Software von https://www.virtualbox.org herunter. Dekomprimieren Sie die Datei “.7z” mit verwandter Software, wie “7-Zip”, “WinRAR” oder “WinZip”. Installieren Sie die VirtualBox-Software, indem Sie in jedem Schritt auf die Schaltfläche Weiter klicken. Öffnen Sie die VirtualBox-Software u…

Representative Results

In unserer vorherigen Arbeit haben wir eine Reihe von Sequenzklassifizierungswerkzeugen für metagenomische Daten entwickelt, die einen ähnlichen Ansatz wie dieses Tutorial3,11,12verwenden. Als Beispiel haben wir die Sequenzdateien der Teilmenge von Trainingssatz und Testset aus unserer vorherigen Arbeit3,11 in der virtuellen Maschine abgelegt. <p class="jove_conten…

Discussion

Dieses Tutorial bietet Biologen und Anfängern des Algorithmendesigns einen Überblick darüber, wie ein einfach zu bedienendes Deep-Learning-Framework für die Klassifizierung biologischer Sequenzen in metagenomischen Daten erstellt werden kann. Dieses Tutorial zielt darauf ab, ein intuitives Verständnis von Deep Learning zu vermitteln und die Herausforderung anzugehen, dass Anfänger oft Schwierigkeiten haben, das Deep-Learning-Paket zu installieren und den Code für den Algorithmus zu schreiben. Für einige einfache …

Divulgazioni

The authors have nothing to disclose.

Acknowledgements

Diese Untersuchung wurde von der National Natural Science Foundation of China (81925026, 82002201, 81800746, 82102508) finanziell unterstützt.

Materials

PC or server NA NA Suggested memory: >6GB
VirtualBox software NA NA Link: https://www.virtualbox.org

Riferimenti

  1. Liang, Q., Bible, P. W., Liu, Y., Zou, B., Wei, L. DeepMicrobes: taxonomic classification for metagenomics with deep learning. NAR Genomics and Bioinformatics. 2 (1), (2020).
  2. Ren, J., et al. VirFinder: a novel k -mer based tool for identifying viral sequences from assembled metagenomic data. Microbiome. 5 (1), 69 (2017).
  3. Fang, Z., et al. PPR-Meta: a tool for identifying phages and plasmids from metagenomic fragments using deep learning. GigaScience. 8 (6), (2019).
  4. Ren, J., et al. Identifying viruses from metagenomic data using deep learning. Quantitative Biology. 8 (1), 64-77 (2020).
  5. Zhou, F., Xu, Y. cBar: a computer program to distinguish plasmid-derived from chromosome-derived sequence fragments in metagenomics data. Bioinformatics. 26 (16), 2051-2052 (2010).
  6. Krawczyk, P. S., Lipinski, L., Dziembowski, A. PlasFlow: predicting plasmid sequences in metagenomic data using genome signatures. Nucleic Acids Research. 46 (6), (2018).
  7. Pellow, D., Mizrahi, I., Shamir, R. PlasClass improves plasmid sequence classification. PLOS Computational Biology. 16 (4), (2020).
  8. Arango-Argoty, G., et al. DeepARG: a deep learning approach for predicting antibiotic resistance genes from metagenomic data. Microbiome. 6 (1), 1-15 (2018).
  9. Zheng, D., Pang, G., Liu, B., Chen, L., Yang, J. Learning transferable deep convolutional neural networks for the classification of bacterial virulence factors. Bioinformatics. 36 (12), 3693-3702 (2020).
  10. LeCun, Y., Bengio, Y., Hinton, G. Deep learning. Nature. 521 (7553), 436-444 (2015).
  11. Fang, Z., Zhou, H. VirionFinder: Identification of Complete and Partial Prokaryote Virus Virion Protein From Virome Data Using the Sequence and Biochemical Properties of Amino Acids. Frontiers in Microbiology. 12, 615711 (2021).
  12. Fang, Z., Zhou, H. Identification of the conjugative and mobilizable plasmid fragments in the plasmidome using sequence signatures. Microbial Genomics. 6 (11), (2020).
  13. Richter, D. C., Ott, F., Auch, A. F., Schmid, R., Huson, D. H. MetaSim-a sequencing simulator for genomics and metagenomics. PLoS One. 3 (10), 3373 (2008).
  14. Zhang, M., et al. Prediction of virus-host infectious association by supervised learning methods. BMC Bioinformatics. 18 (3), 143-154 (2017).
check_url/it/62250?article_type=t

Play Video

Citazione di questo articolo
Fang, Z., Zhou, H. A Virtual Machine Platform for Non-Computer Professionals for Using Deep Learning to Classify Biological Sequences of Metagenomic Data. J. Vis. Exp. (175), e62250, doi:10.3791/62250 (2021).

View Video