Uma das funções de ativação mais freqüentemente usadas na aprendizagem de máquinas, ou mais especificamente, redes neurais é a função sigmóide. Na etapa de retropropagação no treinamento de uma rede neural, você tem que encontrar a derivada da função de perda em relação a cada peso na rede. Para isso, você tem que encontrar a derivada da sua função de ativação. Este artigo visa esclarecer qualquer confusão sobre encontrar a derivada da função sigmóide.

Para começar, aqui está a função sigmóide:

Para um teste, pegue a sigmóide de 5 na sua calculadora. Você deve obter 0,99330714907.

Para os fins da derivada, esta função também pode ser escrita como:

A primeira coisa que notei sobre esta função, é que ela é uma composição de funções. A primeira função sendo

> e a segunda sendo

Recorde isso em Cálculo, quando há uma composição de funções, a derivada, é a primeira função em relação à segunda multiplicada pela segunda função em relação à variável, neste caso x. Assim:

Então, a derivada da sigmóide com respeito a x é a derivada da função sigmóide com respeito a m vezes a derivada de m com respeito a x. Você pode pensar nesta regra de composição da função como uma espécie de cálculo intermediário que resulta na derivada original que você queria por cancelamento cruzado:

>

>

>>

Agora sabemos que a função sigmóide é uma composição de funções, tudo o que temos de fazer para encontrar a derivada, é:

>

  1. Passar a derivada da função sigmóide com respeito a m, nosso valor intermediário
  2. Passar a derivada de m com respeito a x
  3. Multiplicar esses valores juntos

Derivado da função sigmóide com respeito a m

Vejamos novamente como é a função sigmóide com m como nosso valor intermediário:

Para encontrar a derivada disto com respeito a m é bastante simples se nos lembrarmos da regra de potência:

>989898>

A derivada de x^n é n vezes a derivada de x para o poder de n-1.

So,

Agora, se substituirmos o nosso valor original de m de volta à equação, nós temos

Finalmente,

Yay! Completamos o passo 1.

>

Passamos a derivada de m com respeito a x

Aqui m:

>

>

>

Para encontrar a derivada, temos de encontrar a derivada de cada termo com respeito a x. O primeiro termo é fácil:

O segundo termo é um pouco mais complicado.

>

Vamos deixar-nos

Sabemos que

Se chegar ao e^u não estiver claro, por favor, leia isto.

Agora, usando novamente a regra da corrente,

>

Então, basta multiplicar as derivadas que acabamos de calcular para obter a derivada em relação a x:

>

Tudo em resumo para o passo 2,

Multiplicar as derivadas

Recall, que uma vez que encontramos as duas derivadas intermediárias, tivemos que multiplicá-las. Então, aqui está um resumo rápido:

>>

Agora, se você se lembrar como multiplicar :), podemos finalmente terminar isto!

Pode agora tomar este valor e usá-lo como derivação da função sigmóide. Uma coisa interessante ocorre depois de manipular este resultado, no entanto. Acontece que você pode reescrever a derivada assim:

A derivada da função sigmóide é o sigmóide vezes 1 menos o sigmóide. Uau. Eu me sinto enganado. 🙂