Até agora, foram utilizados apenas erros observados pelas saídas dos neurônios através do ajustes sucessivos dos pesos entre a camada de entrada e a de saída (2 camadas apenas). Mas, se for adicionada mais uma camada intermediaria entre elas, uma camada escondida ?
Bom, de toda maneira ainda é necessário ter o processo de retro-alimentação do erro de volta à rede neural, de forma que possam ser ajustados os pesos. E aí está o problema.

Atualmente, o neurônio ou está "ligado" ou "desligado", o que significa que a sua função de ativação é controlada por um limiar que determina a mudança dos estados do neurônio.
def function(output):
if output >= 0:
return 1
else:
return -1
Plotando o gráfico representando a função acima, pode-se ver as linhas vermelha (representando a sua derivada) e a linha azul (representando a função).
Quaisquer ajustes feitos nos pesos que alimentam a camada escondida com uso desta função terão efeitos não tão eficientes e limitados, devido a sua descontinuidade acentuada . É necessário trocar a função de limiar (threeshold function) por algo melhor, que tenha uma transição mais suave. Pode-se utilizar então, a função sigmóide representada pela equação abaixo:
def sigmoid(output):
return 2/ (1 + math.exp(-2 * output))
E sua derivada:
f'(x) = 1 - f(x)2
def sigmoidDerivative(output):
x = sigmoid(output)
return 1 - (math.pow(x,2))
Pode-se observar que a transição agora entre os valores 1 e -1 é mais suave e contínua e sua derivada tende ao infinito. Esta função é muito popular entre diversos desenvolvedores de redes neurais, porém alguns utilizam uma versão modificada deste. Variando os limites da função de 0 até 1 (em vez de -1 a 1) tem o benefício de ser computacionalmente menos custoso e interessante quando aplicado em redes neurais de grande dimensão.
Para isso, utiliza-se a função:
def sigmoid(output):
return 2/ (1 + math.exp(-output))
E sua derivada:
f'(x) = f(x)(1 - f(x))
def sigmoidDerivative(output):
x = sigmoid(output)
return x * ( 1 - x)
Plotando-se o gráfico, obtemos:
No próximo post, será utilizada esta função sigmóide como função de ativação no desenvolvimento e aplicação de uma rede neural Perceptron de múltiplas camadas (Multi Layer Perceptron - MLP) treinada com o algoritmo Back Propagation.
Embedded system training: Wiztech Automation Provides Excellent training in embedded system training in Chennai - IEEE Projects - Mechanical projects in Chennai Wiztech provide 100% practical training, Individual focus, Free Accommodation, Placement for top companies. The study also includes standard microcontrollers such as Intel 8051, PIC, AVR, ARM, ARMCotex, Arduino etc.
ReplyDeleteEmbedded system training in chennai
Embedded Course training in chennai
Matlab training in chennai
Android training in chennai
LabVIEW training in chennai
Arduino training in chennai
Robotics training in chennai
Oracle training in chennai
Final year projects in chennai
Mechanical projects in chennai
ece projects in chennai
WIZTECH Automation, Anna Nagar, Chennai, has earned reputation offering the best automation training in Chennai in the field of industrial automation. Flexible timings, hands-on-experience, 100% practical. The candidates are given enhanced job oriented practical training in all major brands of PLCs (AB, Keyence, ABB, GE-FANUC, OMRON, DELTA, SIEMENS, MITSUBISHI, SCHNEIDER, and MESSUNG)
ReplyDeletePLC training in chennai
Automation training in chennai
Best plc training in chennai
PLC SCADA training in chennai
Process automation training in chennai
Final year eee projects in chennai
VLSI training in chennai
ReplyDeletefor preparing bank exam and group exam , we are providing an online test model questions papers
Bank Exam Questions and Answers
Group Exam Questions and Answers
Quando se usa a derivada da sigmoid?
ReplyDeleteAcho que é no backpropagation...quando faz o caminho inverso para corrigir os pesos.
ReplyDeletePLC training in Cochin, Kerala
ReplyDeleteAutomation training in Cochin, Kerala
Embedded System training in Cochin, Kerala
VLSI training in Cochin, Kerala
PLC training institute in Cochin, Kerala
Embedded training in Cochin, Kerala
Best plc training in Cochin, Kerala
Big Data and Hadoop is an ecosystem of open source components that fundamentally changes the way enterprises store, process, and analyze data.
ReplyDeletepython training in bangalore
aws training in bangalore
artificial intelligence training in bangalore
data science training in bangalore
machine learning training in bangalore
hadoop training in bangalore
devops training in bangalore
corporate training companies
ReplyDeletecorporate training companies in mumbai
corporate training companies in pune
corporate training companies in delhi
corporate training companies in chennai
corporate training companies in hyderabad
corporate training companies in bangalore
Amazing content.
ReplyDeleteData Mining Service Providers in Bangalore
Thankyou for sharingData Mining Companies
ReplyDelete
ReplyDeleteThanks for sharingData Mining software service providers
Great Article
ReplyDeleteArtificial Intelligence Projects
Project Center in Chennai
JavaScript Training in Chennai
JavaScript Training in Chennai
This professional hacker is absolutely reliable and I strongly recommend him for any type of hack you require. I know this because I have hired him severally for various hacks and he has never disappointed me nor any of my friends who have hired him too, he can help you with any of the following hacks:
ReplyDelete-Phone hacks (remotely)
-Credit repair
-Bitcoin recovery (any cryptocurrency)
-Make money from home (USA only)
-Social media hacks
-Website hacks
-Erase criminal records (USA & Canada only)
-Grade change
-funds recovery
Email: onlineghosthacker247@ gmail .com