Você está na página 1de 8

Complexidade do neuronio

Complexidade das conexoes

Como juntar 100 bilhoes de neuronios dao origem a mente?

Como a emoção influencia o comportamento? Partidas de esportes – pegar a bola, olhar outros
jogadores, prepara o movimento... etc = complexidade = estamos muito longe de entender esse tipo
de coisa.

Quais recursos computacionais permitem esse entendimento, como o cerebro realiza computações
como o cerebro processa informação

Reconhecimeno visual – facial pelo computador. Visão é uma das partes mais avançadas na
compoutação

Memoria um pouco tbm

Carros autonomos – precisa enxergar as coisas = sistema baseado em redes neurais baseadas no que
aprendemos sobre o cerebro.

Prova dia 27 de agosto

Modelos computacionais:

Modelo é uma representação da realidade, diminuida, simplificada da realidade – a realidade de


conexões de um só neuronio é algo muito complexo, então criamos modelos.

Cuidado pq modelos são simplificados. (todos os modelos estaõ errados, não correspondem a
realidade, mas podem ser úteis)

Modelo matematico:

Usa matematica para descrever o modelo, uso de equações matematicas.

É possivel prever o que acontecerá com esse tipo de modelo, facilita o entendimento.

Modelo computacional:

Aprender a usar ferramentas computacionais para entender modelos.

Primeira pergunta: quanto queremos simplificar? Se eu fazer tudo exatamente igual, será uma copia
real e já temos o original nesse caso, então o modelo é sempre mais simples do que o original.

Não significa que o cerebro funciona do jeito do modelo, mas o modelo pode ajudar. Uso de
simulações.
Neurociencia comp. Interage com varias áreas.

A simulação serve para testar o mdoelo criado.

Escala do slide – 1 m representa o cerebro inteiro (a ciencia ainda não sabe modelar o cerebro
inteiro).

Saber qual escala estamos trabalhando.

Se fizer o modelo do cerebro inteiro tem q ser neuronio bem simples. Não dá para trabalhar com
todos os niveis.

Vamos focar no nivel das redes.

Objetivo: fazer o modelo mais simples possivel que resolva o meu problema.

Como o agente interage com o mundo externo? Movimentos do ar no ouvido, = percepções e


sensações e gerar uma ação a partir delas. São varios tipos – respostas imediatas – queimar a mão -
reflexo de afastar, e respostas maiores sair correndo rapidamente ao ver um leao na floresta.

Decisões mais complexas – aproveitar promoção na loja.

Dependendo da urgencia tomamos decisoes diferentes.

Construimos na nossa mente o modelo do mundo = reconhecer o q esta ao nosso redor e podermos
reagir.

No maximo conseguimos entender como ocorre o reconhecimento de objetos.

Os N são muitos parecidos entre si, mesmo tendo tipos diferentes. Principalmente do cortex em
geral.

O q diferencia as áreas e suas capacidades é a forma como esses N se conectam. O que interessa é a
sua conexão e não a sua forma.

Reconhecimento visual e como armazenar uma memoria*

Rede multicamadas porque ela vai de uma camada para outra, na primeira camada é mais simples e
conforme vai aumentando vai se tornando complexo.

Redes recorrentes = cj de N com conexoes e se conectam com o mesmo grupo de neuronios (voltam
para os mesmos N)

È quando conseguimos armazenar a memoria. Definição de qual grupos de N estao ativos num
determinado momento q gera o armazenamento.

Modelos simplificados de N:
Distribuição de ions dentro e fora da celula são diferentes - = diferença de potencial

Computação de N é baseada nessa diferença.

Mais potassio dentro e sodio e cloro fora.

A celula tem sodio e cloro e potassio dentro pq o mar era cheio de sais.

O cerebro dispara pouco potencial de ação pq gasta muita energiam para retornar os ions para o seu
lugar.

Rede neural: cj de neuronios e suas sinapses.

Modelo mais simples é o perceptron

Cada entrada pode afetar o N de uma forma diferente dependendo da distancia da entrada do cone
sinaptico.

Peso sinaptico é a soma das entradas – W – pode ser positivo (excitando) ou negativo (inibindo);

H = ativação do N – quanto despolarizou (pegar o valor da entrada e multimplicar pelo peso)

Somar tudo e ver se ultrapassa o limiar. Se passou a saída é 1 se não é zero.

Manipilando os pesos podemos fazer neuronios com padroes de disparos ou não-disparos.

Na rede neural não há separação de memoria e processador, é o proprio N que faz isso, no
computador é separado.

O peso tem q ser um erro inteiro

As redes são poderosas pq a partir de 3 N podemos fazer qualquer função que chegue na saida do
exercicio (a q não tem como resolver)

Algoritmos para saber o peso e a saida.

Programação:
Professor.ufabc.edu.br/~raphael.camargo/mqn

https://repl.it/languages/python3

Usar ponto na programação.

A virgula cria listas de valores.

Segue a ordem de matematica primeiro multiplicação e divisão depois subtrai e soma

Ele usa aproximações de valores com casas decimais (USA MUITAS)

Só dá pra gravar um valor em uma variável.

A ordem que colocamos os comandos é importante.

O programa só segue os comandos que passamos para ele.

= - comando de atribuição para guardar o conteudo da variável

== - comando de comparação - verifica se o valor da variavel é igual a um valor (1 por exemplo)

Print – imprime a informação

Tudo que está dentro do if tem que pular um espaço na linha seguinte, porque tem que estar dentro
do if. Chama-se identar o código.

Aula 28/06

Modelo simples de rede neural: 1


x = [0, 1, 0]
w = [1, 1, -1]
h = x[0]*w[0]+x[1]*w[1]+x[2]*w[2]
if h>=0:
print("1")
else:
print("0")

nome = "elaine" elaine


print(nome) elaine é meu nome.
print(nome + " é meu nome" + ".")

dia = 28
dia = 28 print("Olá, hoje é dia %d." % dia)
print("Olá, hoje é dia %d." % dia)

dia = 28 Olá, elaine hoje é dia 28.


print("Olá, %s hoje é dia %d." %
(nome,dia))

def Ola(name):
print("ola, " + name + ". Boa
tarde!")
Ola("Elaine") ola, Elaine. Boa tarde!
Ola("Claudinei") ola, Claudinei. Boa tarde!

def Maior(n1, n2, n3):


if n1>n2 and n1>n3:
print(n1)
if n2>n1 and n2>n3:
print(n2)
if n3>n1 and n3>n2:
print(n3)

Maior(1,2,3) 3
Maior(3,2,1) 3
Maior(2,4,3) 4

Função de um neurônio 1

def Neuronio(x,w):
h = x[0]*w[0]+x[1]*w[1]+x[2]*w[2]
if h>=0:
print("1")
else:
print("0")

x = [1, 0, 1]

w = [1, 1, -1]

Neuronio(x,w)

Laço

for x in range(0, 3): 0


print (x) 1
2

for x in range(0, 6): 0


print (x) 1
2
3
4
5
Exercicio 2 do slide 13

lista = [5, 7, 9, 57, 21]


media = 0; 99
for x in lista:
media = media + x
print(media)
Até aqui só soma

lista = [5, 7, 9, 57, 21]


19.8
media = 0;
for x in lista:
media = media + x
media = media / len(lista)
print(media)

Ex 3
0
1
def SomaP (n): 2
soma = 0 3
for x in range(0,n): 4
print(x)
SomaP(5)

def SomaP (n):


55
soma = 0
for x in range(1,n+1):
soma = soma + x**2
print(soma

Verificar – tinha q ser 13


def Maior(w):
maximo = 0
for x in w:
if x > maximo:
maximo = x
print(maximo)

w = [5, 9, 13, 4]
Maior(w)

Para imprimir incluindo tanto 0 quanto 10:


import random
a = random.randint(0,10)
print(a)

r = []
r.append(a)
print(r)

Ex 5 (pedir código pra eliana) [3, 1, 5, 7, 1, 10, 2, 3, 0, 4, 1, 2, 3, 8, 7, 8, 3, 5, 9,


7, 4, 8, 10, 1, 9, 1, 2, 9, 10, 10, 2, 6, 5, 5, 4, 7, 6,
import random 9, 8, 1, 5, 9, 9, 0, 0, 2, 3, 5, 7, 0, 6, 3, 0, 9, 1, 9,
r = [] 0, 8, 8, 2, 7, 4, 0, 7, 10, 9, 9, 4, 10, 8, 9, 0, 3, 5,
for x in range(0,100): 5, 4, 5, 0, 3, 6, 2, 6, 7, 10, 4, 9, 2, 8, 10, 8, 8, 0,
a = random.randint(0,10) 3, 10, 3, 2, 4, 4, 0, 10]
r.append(a)
print (r)

Ex 6

def Neuronio(x,w): 1
h =0;
n = len(x)
for i in range(0,n):
h = h + x[i]*w[i]
if h>=0:
print("1")
else:
print("0")

x = [1, 0, 1]
w = [1, 1, -1]

Neuronio(x,w)

def Neuronio(x,w): 1
h =0;
n = len(x)
for i in range(0,n):
h = h + x[i]*w[i]
if h>=0:
print("1")
else:
print("0")

x = [1, 0, 1,1,1,1,1,1,]
w = [1, 1, -1,0,1,0,1,0]

Neuronio(x,w)

Você também pode gostar