Redes neurais aplicadas a android

Post on 25-Jul-2015

801 views 0 download

Transcript of Redes neurais aplicadas a android

leomariomachado@gmail.com

Leomário Machado – leomariomachado@gmail.com

Redes Neurais aplicadas a Android

1

leomariomachado@gmail.com

Quem sou euGraduado em ciência da computação –

UfpaGraduado em sistemas de informação –

IesamMestrando em ciência da computação –

UfpaDesenvolvedor Mobile há 5 anosDesenvolvedor Android há 3 anosLinha de pesquisa no mestrado: Redes

Neurais aplicadas em localização em redes de sensores sem fio.

2

leomariomachado@gmail.com

Por que desenvolver aplicativos inteligentes?SMARTphonhesO sistema é inteligente, mas a minha

aplicação pode ficar?Nem toda aplicação precisa de inteligência

artificial, mas se bem usada pode ser uma ferramenta muito poderosa

Adaptação ao mundo real de forma mais flexível que algoritmos convencionais

3

leomariomachado@gmail.com

O que é Inteligência ArtificialÁrea computacional que simula o

comportamento humano de inteligência para resolver problemas reais.

4

leomariomachado@gmail.com

Métodos InteligentesRedes NeuraisAlgoritmos GenéticosFuzzy ou Lógica NebulosaMétodos estatísticosComputação evolucionária

5

leomariomachado@gmail.com

Redes NeuraisSimulam o comportamento do cérebro

humanoConjunto de NeurôniosAprendizado da Rede Estabelecimento de pesos

6

leomariomachado@gmail.com

Fundamento Biológico

7

leomariomachado@gmail.com

Fundamento Computacional

8

leomariomachado@gmail.com

Quando posso usar?Reconhecimento de padrõesMineração de dadosTratamento de sinaisSeries Temporais

9

leomariomachado@gmail.com

Estrutura básica de uma Rede Neural Multicamadas

10

leomariomachado@gmail.com

Vamos a um exemplo práticoA pretensão inicial era fazer uma rede que

identificasse o quanto uma pessoa é feia, mas infelizmente perdi minhas amostras recentemente

Hello world em redes neurais?Simular as operações and e or em uma

rede neural.

11

leomariomachado@gmail.com

Passo a PassoSeparar as amostras para treino e teste da redeSelecionar um método de treino (Rprop, batch,

incremental, quickprop, sarprop)Selecionar as funções de ativação (sigmoid,

cosseno, seno, gaussiana, linear)Selecionar a quantidade de camadasSelecionar a quantidade de neurônios por

camadasTreinar a redeTestar a redeVoltar ao passo 1 caso desejar alterar algum

parâmetro para obter melhores resultados12

leomariomachado@gmail.com

Resultado dos pesos para AndLayer 1 From Neuron To Neuron ( 0 ---> 3 ) : Weight : -

3.336094 From Neuron To Neuron ( 1 ---> 3 ) : Weight : -

3.396092 From Neuron To Neuron ( 2 ---> 3 ) : Weight :

2.707293Layer 2 From Neuron To Neuron ( 3 ---> 5 ) : Weight : -

35.711742 From Neuron To Neuron ( 4 ---> 5 ) : Weight :

5.49448313

leomariomachado@gmail.com

Resultado dos pesos para OrLayer 1 From Neuron To Neuron ( 0 ---> 3 ) : Weight :

5.480813 From Neuron To Neuron ( 1 ---> 3 ) : Weight :

5.482209 From Neuron To Neuron ( 2 ---> 3 ) : Weight : -

2.884790Layer 2 From Neuron To Neuron ( 3 ---> 5 ) : Weight :

10.191489 From Neuron To Neuron ( 4 ---> 5 ) : Weight : -

4.65027914

leomariomachado@gmail.com

Transformando em algoritmoMontar o grafo através de listas ou

matrizesOs pesos determinam os resultadosNote que os pesos para as operações and e

or são completamente diferentes

15

leomariomachado@gmail.com

http://leomariomachado.net78.net/And.apk

http://leomariomachado.net78.net/Or.apk

Rodando as aplicações

16

leomariomachado@gmail.com

Obrigado

17