Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y...

35
Introdução ao deep learning e suas aplicações em genética e melhoramento Viçosa-MG, 08/06/2018 Fabyano Fonseca e Silva Prof. Universidade Federal de Viçosa DZO - Melhoramento Genético

Transcript of Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y...

Page 1: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Introdução ao deep learning e suas

aplicações em genética e melhoramento

Viçosa-MG, 08/06/2018

Fabyano Fonseca e Silva Prof. Universidade Federal de Viçosa DZO - Melhoramento Genético

Page 2: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

1) Motivação

2) Introdução as RNA

3) Arquiteturas de Deep Learning

4) Deep Learning em Genética e Melhoramento

5) Pesquisas em desenvolvimento

OUTLINE

6) Recursos computacionais

Page 3: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

32,100

28,500

179,000

1) Motivação

Page 4: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Deep Learning nada mais é do que uma Rede Neural, só

que com (muito) mais camadas!!!

Fonte: Deep Learning in a Nutshell

Page 5: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

O grande número de camadas do Depp Learning também se

distribui de forma mais complexa

Permite treinamentos específicos dentro de cada camada ou grupos de

camadas

Combina diferentes funções de ativação na mesma camada

Possibilita inversão de saídas entre as camadas e “re-treinamento” dentro

de cada camada

Possibilita utilizar estratégias de “fracionar” os dados de entrada em cada

camada (convolucionar) (“unidades replicadas em cada camada”)

OBS. Embora desfrute desta flexibilidade em termos de arquitetura de redes, o Deep Learning necessita de grande demanda computacional, o que é geralmente fornecida pela computação em paralelo (GPU´s e similares)

Page 6: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Fonte: Sivolella, 2016

Estruturação dos dados de entrada. Ex. matriz de pixels

INPUT

Classificação da imagem

Page 7: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Fonte: Adaptado de Moreira (2018)

Redes neurais tradicionais

Deep learning

Pré-processamento

Page 8: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Teria aplicação no

melhoramento

genético?

Classificação

automática de

fenótipos ?

E quanto aos

genótipos ?

Page 9: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

“aproximadores universais de funções complexas que tentam explicar

fenômenos de interesse“

Predição de valores genéticos

Seleção de regiões genômicas relevantes

Classificação de imagens

Classificação de sons

Classificação de textos

Conceitos básicos RNA:

- Funções de ativação

- Neurônios

- Pesos

- Camadas

- Algoritmos de treinamentos

- Funções de perda

- Viés

2) Introdução as RNA

Page 10: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Quando as atualizações destes pesos não culminam em melhorias

significativas na eficiência de predição (mensurada via função de perda),

assume-se que a rede está treinada (Oe seja: o viés é mínimo)

Funções de ativação são funções arbitrárias capazes de aproximar relações

complexas entre variáveis respostas e preditoras.

Aproximações são possíveis por meio de algoritmos de

treinamento

Algoritmos de treinamentos (Ex. Levenberg-Marquardt e Scaled Conjugate

Gradient) atualizam os pesos (importâncias relativas de cada variável preditora)

em diferentes partições da informação denominadas de neurônios

Os neurônios fazem a conexão entre as diferentes camadas

Camadas são componentes (“níveis de aprendizados”) que atualizam os pesos

recebidos pelos e os transferem, via um novo conjunto de neurônios (novas

partições da informação), para as novas camadas

A melhoria nas predições tende a se estabilizar, sendo medida via função de perda

Page 11: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

xip representa as variáveis (p=1,2,...,P) de entrada; ω1,p é peso da variável de

entrada p relacionado com cada um dos três neurônios da camada de

transferência (“oculta”); ω2,s é peso da variável transformada s (s=1,2,...,S),

neste caso S=3, relacionado com cada a camada de saída; y é o vetor de saída

(output); f(.) é a função de ativação da camada de transferência; g(.) é a

função de ativação da cama de saída; ∑ denota o somatório de todos os

neurônios; viés1 e 2 representam “uma tipo de erro” em cada camada

Viés 1 Viés 2

Camada de entrada Camada de transferência(hidden layer)

Camada de saída

Neurônio 1

Neurônio 2

Neurônio 3

Page 12: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Descrição algébrica da RNA apresentada

P(s) (s)

i s s 1p ip

p=1

z = f a + ω x ,

em que: (s)

iz é o valor resultante (denominado de escore) da transformação (ditada pela

função fs(.)) das combinações (provenientes de cada neurônio s, s=1,2,...,S) entre as co-

variáveis originais ipx ; sa é o intercepto de cada neurônio s; (s)

1pω é o peso da covariável

relacionada ao neurônio s na camada oculta.

Os escores produzidos ( (s)

iz ) na primeira camada são agora considerados co-variáveis na

camada de saída. S

(s)

i 2s i i

s=1

y = g b + ω z +e ,

em que: yi é o valor fenotípico predito pela RNA, resultante da transformação ditada

pela função g(.) aos escores z(s)

i produzidos pela camada oculta anterior, cujos pesos

são agora dados por 2pω considerando apenas um neurônio; b é o intercepto da camada

de saída e ei é o erro aleatório.

Page 13: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Descrição algébrica da rede apresentada

As duas camadas podem ser conjugadas para representar integralmente uma RNA como

um modelo estatístico:

S P(s)

i 2s s s 1p ip i

s=1 p=1

y = g b + ω f a + ω x +e .

O termo treinamento da rede consiste na verdade em estimar os valores dos pesos e dos

interceptos referentes a cada camada, de forma que as estimativas obtidas são valores

que minimizam o erro (função de perda).

Modelo não linear

Como estimar parâmetros de modelos não-lineares?

Isto é caixa-preta?

Page 14: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Algumas críticas quanto ao uso de RNA em Genética e Melhoramento

(Gianola et al., 2011).

- a maioria dos estudos não apresentam informações sobre a estrutura da

rede utilizada, fazendo com que esta técnica seja caracterizada como uma

“caixa preta”;

- não permite estimação de componentes de variância, inviabilizando a

estimação de parâmetros genéticos fundamentais para a área de

melhoramento, tal como herdabilidade;

- não são reportados erros-padrão para os valores preditos, o que impede o

cálculo da PEV (variância do erro de predição) e consequentemente da

confiabilidade (r2) dos valores genéticos;

- nas situações em que o número de parâmetros é muito maior que número

de observações (como em GWS) a convergência se torna muito lenta

porque geralmente é demandado um número muito grande de neurônios, o

que também causa sobre-ajuste (over-fitting), que consequentemente

compromete a eficiência de predição da rede.

Page 15: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

A acurácia das redes convolucionais no reconhecimento de imagem é uma das

principais razões pelas quais o mundo testemunhou o sucesso do deep learning,

principalmente em Visão Computacional

São usadas para classificar imagens, agrupá-las por similaridade e realizar

reconhecimento de objetos dentro de cenas

As RNC “percebem” imagens como volumes; isto é, objetos tridimensionais,

em vez de estruturas planas a serem medidas apenas por largura e altura.

RNC recebe uma imagem como uma “caixa retangular” cuja largura e altura

são medidas pelo número de pixels ao longo dessas dimensões; e cuja

profundidade é de três camadas (uma para cada cor: RGB – red, green blue)

Redes Neurais Convolucionais (RNC)

Convolução: operador linear que, a partir de duas funções dadas, resulta numa terceira, que mede a área subentendida pela superposição das mesmas

3) Arquiteturas de Deep Learning

Page 16: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

boibode

cabra

De camada em camada, suas dimensões “se refinam” à medida que atravessam

a rede neural convolucional até gerar uma série de probabilidades na camada de

saída.

Existe uma probabilidade para cada possível classe de saída. Aquela com maior

probabilidade, será a classe definida para a imagem de entrada.

Camadas de

classificação:

Softmax

resultado probabilístico

para classificação em

cada classe

Camadas ocultas: “caixa retangular” cuja largura e altura são

medidas pelo número de pixels ao longo dessas dimensões; e cuja

profundidade é de três camadas (RGB)

OBS.: Atenção às medidas de cada dimensão do volume da imagem, porque elas são a base das operações de álgebra linear usadas para processar imagens.

Page 17: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

boibode

cabra

boibode

cabra

Teria aplicação no melhoramento genético? SIM

Classificação automática de fenótipos ? SIM

E quanto aos genótipos ????

Page 18: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Redes Neurais Recorrentes (RNR)

úteis para o processamento de dados sequenciais, como som, dados de séries

temporais (crescimento e desenvolvimento de organismos vivos)

incluem um loop de feedback, pelo qual a saída do passo n-1 é alimentada de

volta à rede para afetar o resultado do passo n, e assim por diante para cada

etapa subsequente

produzem modelos dinâmicos – ou seja, modelos que mudam ao longo do

tempo – de formas que produzem classificações precisas dependentes do

período de tempo considerado

Semanas em lactação

Kg

de

le

ite

Page 19: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Redes Neurais Recorrentes (RNR)

Feed-back: reclassificação e/ou reestimação dos pesos que relacionam cada camada de acordo com a “nova” reestruração das camadas anteriores

Representação em várias camadas: deep learning

Efeitos de SNPs (RNA tradicionais) sobre classificação

de produção leite e ou crescimento ao longo do tempo

Page 20: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

SNPs ao longo do genoma se caracterizam “dados sequenciais”:

dependência espacial

Representação em várias camadas: deep learning RNR

“classificação da produção” sobre o tempo

Camada de transição

Efeitos de SNPs usando RNR sobre classificação de produção

temporal

Page 21: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Combinação: Redes Neurais Convolucionais (RNC) e Recorrentes (RNR)

• Ideia Original: Combinar RNC e RNR para associar predição genômica (via SNPs) para classificação de imagens (qualidade d ecarne) em melhoramento animal

Wisconsin-Madson, USA

boibode

cabra

Camadas extras antes da classificação Ex. Seleção de SNPs via RNR

RNC para análise de imagens

Page 22: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

4) Deep Learning em Genética e Melhoramento

Page 23: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento
Page 24: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Reconhece SNP

Reconhece ambiente

Predição genômica

Mesmo papel do BLUP,

porém como entrar com imagem no

BLUP???

Imagem

Jeremy Howard Data Strategist University of San Francisco

Page 25: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

5) Pesquisas em desenvolvimento

Interação GxE em gado de corte (“Ambientômica”)

Matriz de parentesco genômica

melhora a conexidade entre

diferentes animais provenientes

de ambientes

A G x E auxilia a “produção sustentável” em bovinos de

corte

Page 26: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento
Page 27: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Objetivo:

Classificação de diferentes “sub-

ambientes” em Minas Gerais

baseado em informações edafo-

climáticas via redes neurais

Bayesianas

Page 28: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Objetivo:

Recomendação de genótipos de

Eucalipto baseando em genômica

e informações imagens de satélite

“Ambientômica”

Page 29: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

1 2 3 4

Como avaliar sobreposição de mapas? Quais touros são indicados para a mesma região??

Classificação de imagens: deep learning

Page 30: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Como mostrar os resultados (valores genéticos) para condição ambiental?

“Possivelmente como uma ferramenta “extra” dentro do sistema dos associados”

Page 31: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Fenótipos definidos por análises de imagens

Prof. Mario Luiz Chizzotti

DZO - UFV

Page 32: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Biometria por imagem • Equipe: Departamento de Engenharia agrícola

• Prof. Dr. Domingos Sarvio Magalhães Valente;

• Prof. Dr. Francisco De Assis De Carvalho Pinto;

• Doutorando André Mendes

R² = 0.809

320

370

420

470

520

570

330 380 430 480 530

Pes

o E

stim

ad

o

peso observado

Nelore

Prof. Mario Luiz Chizzotti

DZO - UFV

Page 33: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

J. Anim. Sci. 2016.94:1–5 doi:10.2527/jas2015-0004

Prof. Mario Luiz Chizzotti

DZO - UFV

Page 34: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

6) Recursos computacionais

deepnet. 2015. “Package deepnet,” (available at https://cran.rproject. org/web/packages/deepnet/deepnet.pdf).

H2O. 2015. “Package h2o,” (available at https://cran.rproject. org/web/packages/h2o/h2o.pdf).

MXNetR. 2016. “Installation guide: Mxnet 0.5.0 documentation,” (available at https://mxnet.readthedocs.org/en/latest/build.html)

Neural Network Toolbox™ - Deep Learning in MATLAB

https://la.mathworks.com/help/nnet/ug/deep-learning-in-matlab.html

https://www.datacamp.com/courses/deep-learning-in-python

Page 35: Introdução ao deep learning e suas aplicações em genética ...SP (s) i 2s s s 1p ip i s=1 p=1 y = g b+ & I D & [ H §·§·§· ¨¸¨¸¨¸¨¸¨¸ ©¹©¹©¹ ¦¦ O termo treinamento

Obrigado!!! [email protected]

“A ciência de hoje é a tecnologia de amanhã”

Edward Teller