RESEARCH
Peer reviewed scientific video journal
Video encyclopedia of advanced research methods
Visualizing science through experiment videos
EDUCATION
Video textbooks for undergraduate courses
Visual demonstrations of key scientific experiments
BUSINESS
Video textbooks for business education
OTHERS
Interactive video based quizzes for formative assessments
Products
RESEARCH
JoVE Journal
Peer reviewed scientific video journal
JoVE Encyclopedia of Experiments
Video encyclopedia of advanced research methods
EDUCATION
JoVE Core
Video textbooks for undergraduates
JoVE Science Education
Visual demonstrations of key scientific experiments
JoVE Lab Manual
Videos of experiments for undergraduate lab courses
BUSINESS
JoVE Business
Video textbooks for business education
Solutions
Language
pt_BR
Menu
Menu
Menu
Menu
A subscription to JoVE is required to view this content. Sign in or start your free trial.
Research Article
Please note that some of the translations on this page are AI generated. Click here for the English version.
Erratum Notice
Important: There has been an erratum issued for this article. View Erratum Notice
Retraction Notice
The article Assisted Selection of Biomarkers by Linear Discriminant Analysis Effect Size (LEfSe) in Microbiome Data (10.3791/61715) has been retracted by the journal upon the authors' request due to a conflict regarding the data and methodology. View Retraction Notice
Este tutorial descreve um método simples para construir um algoritmo de aprendizagem profunda para realizar a classificação de sequência de 2 classes de dados metagenômicos.
Uma variedade de tarefas de classificação de sequências biológicas, como classificação de espécies, classificação da função genética e classificação do hospedeiro viral, são processos esperados em muitas análises de dados metagenômicos. Uma vez que os dados metagenômicos contêm um grande número de novas espécies e genes, algoritmos de classificação de alto desempenho são necessários em muitos estudos. Os biólogos geralmente encontram desafios em encontrar ferramentas adequadas de classificação de sequência e anotação para uma tarefa específica e muitas vezes não são capazes de construir um algoritmo correspondente por conta própria devido à falta do conhecimento matemático e computacional necessário. Técnicas de aprendizagem profunda tornaram-se recentemente um tópico popular e mostram fortes vantagens em muitas tarefas de classificação. Até o momento, muitos pacotes de aprendizagem profunda altamente embalados, que tornam possível para os biólogos construir estruturas de aprendizagem profunda de acordo com suas próprias necessidades sem o conhecimento aprofundado dos detalhes do algoritmo, foram desenvolvidos. Neste tutorial, fornecemos uma diretriz para a construção de uma estrutura de aprendizagem profunda fácil de usar para classificação de sequências sem a necessidade de conhecimentos matemáticos suficientes ou habilidades de programação. Todo o código é otimizado em uma máquina virtual para que os usuários possam executar diretamente o código usando seus próprios dados.
A técnica de sequenciamento metagenômico contorna o processo de isolamento da cepa e sequencia diretamente o DNA total em uma amostra ambiental. Assim, os dados metagenômicos contêm DNA de diferentes organismos, e a maioria das sequências biológicas são de novos organismos que não estão presentes no banco de dados atual. De acordo com diferentes propósitos de pesquisa, os biólogos precisam classificar essas sequências de diferentes perspectivas, como classificação taxonômica1, classificação vírus-bactérias2,3,4, classificação cromossômica-plasmida3,5,6,7, e anotação da função genética (como classificação de gene de resistência a antibióticos8 e classificação fator de virulência9 ). Como os dados metagenômicos contêm um grande número de novas espécies e genes, os algoritmos ab initio, que não se baseiam em bancos de dados conhecidos para classificação de sequências (incluindo classificação de DNA e classificação de proteínas), são uma abordagem importante na análise de dados metagenômicos. No entanto, o desenho desses algoritmos requer conhecimentos de matemática profissional e habilidades de programação; portanto, muitos biólogos e iniciantes no design de algoritmos têm dificuldade em construir um algoritmo de classificação para atender às suas próprias necessidades.
Com o desenvolvimento da inteligência artificial, algoritmos de aprendizagem profunda têm sido amplamente utilizados no campo da bioinformática para completar tarefas como classificação de sequência em análise metagenômica. Para ajudar os iniciantes a entender algoritmos de aprendizagem profunda, descrevemos o algoritmo de forma fácil de entender abaixo.
Uma visão geral de uma técnica de aprendizagem profunda é mostrada na Figura 1. A tecnologia central de um algoritmo de aprendizagem profunda é uma rede neural artificial, que é inspirada na estrutura do cérebro humano. Do ponto de vista matemático, uma rede neural artificial pode ser considerada como uma função complexa. Cada objeto (como uma sequência de DNA, uma foto ou um vídeo) é primeiro digitalizado. O objeto digitalizado é então importado para a função. A tarefa da rede neural artificial é dar uma resposta correta de acordo com os dados de entrada. Por exemplo, se uma rede neural artificial for construída para executar uma tarefa de classificação de 2 classes, a rede deve produzir uma pontuação de probabilidade que esteja entre 0-1 para cada objeto. A rede neural deve dar ao objeto positivo uma pontuação maior (como uma pontuação superior a 0,5) ao mesmo tempo em que dá ao objeto negativo uma pontuação mais baixa. Para obter esse objetivo, uma rede neural artificial é construída com os processos de treinamento e teste. Durante esses processos, os dados do banco de dados conhecido são baixados e, em seguida, divididos em um conjunto de treinamento e conjunto de testes. Cada objeto é digitalizado de forma adequada e recebe um rótulo ("1" para objetos positivos e "0" para objetos negativos). No processo de treinamento, os dados digitalizados no conjunto de treinamento são inseridos na rede neural. A rede neural artificial constrói uma função de perda que representa a diferença entre o escore de saída do objeto de entrada e o rótulo correspondente do objeto. Por exemplo, se a etiqueta do objeto de entrada for "1" enquanto a pontuação de saída for "0.1", a função de perda será alta; e se o rótulo do objeto de entrada for "0" enquanto a pontuação de saída for "0.1", a função de perda será baixa. A rede neural artificial emprega um algoritmo iterativo específico que ajusta os parâmetros da rede neural para minimizar a função de perda. O processo de treinamento termina quando a função de perda não pode ser obviamente diminuída. Finalmente, os dados no conjunto de testes são usados para testar a rede neural fixa, e a capacidade da rede neural de calcular os rótulos corretos para os objetos novos é avaliada. Mais princípios de algoritmos de aprendizagem profunda podem ser encontrados na revisão em LeCun et al. 10.
Embora os princípios matemáticos dos algoritmos de aprendizagem profunda possam ser complexos, muitos pacotes de aprendizagem profunda altamente embalados foram recentemente desenvolvidos, e os programadores podem construir diretamente uma simples rede neural artificial com algumas linhas de código.
Para ajudar biólogos e iniciantes no design de algoritmos a começar a usar o aprendizado profundo mais rapidamente, este tutorial fornece uma diretriz para a construção de uma estrutura de aprendizado profundo fácil de usar para classificação de sequência. Esta estrutura usa a forma de codificação "um-quente" como modelo matemático para digitalizar as sequências biológicas e usa uma rede neural de convolução para realizar a tarefa de classificação (ver o Material Suplementar). A única coisa que os usuários precisam fazer antes de usar esta diretriz é preparar quatro arquivos de sequência no formato "fasta". O primeiro arquivo contém todas as sequências da classe positiva para o processo de treinamento (referido "p_train.fasta"); o segundo arquivo contém todas as sequências da classe negativa para o processo de treinamento (referido a "n_train.fasta"); o terceiro arquivo contém todas as sequências da classe positiva para o processo de teste (referido a "p_test.fasta"); e o último arquivo contém todas as sequências da classe negativa para o processo de teste (referido a "n_test.fasta"). A visão geral do fluxograma deste tutorial é fornecida na Figura 2, e mais detalhes serão mencionados abaixo.
1. A instalação da máquina virtual
2. Crie pastas compartilhadas para troca de arquivos entre o host físico e a máquina virtual
3. Prepare os arquivos para o conjunto de treinamento e conjunto de testes
4. Digitalize as sequências biológicas usando forma de codificação "um-quente"
5. Treine e teste a rede neural artificial
Em nosso trabalho anterior, desenvolvemos uma série de ferramentas de classificação de sequência para dados metagenômicos usando uma abordagem semelhante a este tutorial3,11,12. Como exemplo, depositamos os arquivos de sequência do subconjunto de conjunto de treinamento e conjunto de testes do nosso trabalho anterior3,11 na máquina virtual.
Fang & Zhou11 visava identificar as proteínas de virion completas e parciais do vírus procariote a partir de dados virome. O arquivo "p_train.fasta" contém fragmentos de proteína de virion do vírus para o conjunto de treinamento; o arquivo "n_train.fasta" contém fragmentos de proteína de não-vida do vírus para o conjunto de treinamento; o arquivo "p_test.fasta" contém os fragmentos de proteína de virion do vírus para o conjunto de testes; e o arquivo "n_test.fasta" contém fragmentos de proteína de não-vida do vírus para o conjunto de testes. O usuário pode executar diretamente os dois seguintes comandos para construir a rede neural:
./onehot_encoding p_train.fasta n_train.fasta p_test.fasta n_test.fasta aa
e
train.py python
O desempenho é mostrado na Figura 7.
Fang et al.3 visavam identificar fragmentos de DNA de phage de fragmentos de DNA cromossômicos bacterianos em dados metagenômicos. O arquivo "phage_train.fasta" contém os fragmentos de DNA phage para o conjunto de treinamento; o arquivo "chromosome_train.fasta" contém os fragmentos de DNA do cromossomo para o conjunto de treinamento; o arquivo "phage_test.fasta" contém os fragmentos de DNA phage para o conjunto de testes; e o arquivo "chromosome_test.fasta" contém os fragmentos de DNA do cromossomo para o conjunto de testes. O usuário pode executar diretamente os dois seguintes comandos para construir a rede neural:
./onehot_encoding phage_train.fasta chromosome_train.fasta phage_test.fasta chromosome_test.fasta nt
e
train.py python
O desempenho é mostrado na Figura 8.
Vale ressaltar que, como o algoritmo contém alguns processos que possuem aleatoriedade, os resultados acima podem ser ligeiramente diferentes se os usuários reprisarem o script.

Figura 1. Visão geral da técnica de aprendizagem profunda. Clique aqui para ver uma versão maior desta figura.

Figura 2. A visão geral do fluxograma deste tutorial. Clique aqui para ver uma versão maior desta figura.

Figura 3. A captura de tela da área de trabalho da máquina virtual. Clique aqui para ver uma versão maior desta figura.

Figura 4. A captura de tela da ativação das pastas compartilhadas. Clique aqui para ver uma versão maior desta figura.

Figura 5. A captura de tela do processo de digitalização de sequência. Clique aqui para ver uma versão maior desta figura.

Figura 6. Treine e teste a rede neural artificial. Clique aqui para ver uma versão maior desta figura.

Figura 7. O desempenho da identificação de fragmentos de proteína de virion do vírus procariote. Os critérios de avaliação são Sn=TP/(TP+FN), Sp=TN/(TN+FP), Acc=(TP+TN)/(TP+TN+FN+FP) e AUC. Clique aqui para ver uma versão maior desta figura.

Figura 8. O desempenho da identificação de fragmentos de DNA phage. Os critérios de avaliação são Sn=TP/(TP+FN), Sp=TN/(TN+FP), Acc=(TP+TN)/(TP+TN+FN+FP) e AUC. Clique aqui para ver uma versão maior desta figura.
Material Complementar: Clique aqui para baixar este arquivo.
Os autores declaram que não há conflitos de interesse.
Este tutorial descreve um método simples para construir um algoritmo de aprendizagem profunda para realizar a classificação de sequência de 2 classes de dados metagenômicos.
Esta investigação foi apoiada financeiramente pela Fundação Nacional de Ciência Natural da China (81925026, 82002201, 81800746, 82102508).
| PC ou servidor | NA | NA | Memória sugerida: >6GB |
| Software VirtualBox | NA | NA | Link: https://www.virtualbox.org |