A função de activação é um elemento essencial para a concepção de uma rede neural. A escolha da função de activação dar-lhe-á o controlo completo sobre o processo de formação do modelo de rede. Depois de adicionar estas funções nas camadas ocultas, o modelo aprenderá eficientemente. O tipo de previsões depende da escolha da função de activação. Portanto, deverá escolher cuidadosamente a função de activação para cada rede de aprendizagem profunda.

Funções de activação

Uma função de activação significa a transformação da entrada com a ajuda de uma soma ponderada para a saída. Utiliza um único nó ou mais para que a rede gere a previsão. Também se pode referir à função de activação como uma função de transferência. Ou, pode chamar a isto uma função de esmagamento quando o intervalo de saída tem limitações. As funções de activação também podem ser não-lineares e referidas como não-linearidade da concepção da rede. Independentemente da função de activação que escolher, esta terá um impacto significativo no desempenho e capacidade das diferentes partes no modelo de aprendizagem da máquina.
É melhor utilizar a função de activação dentro e depois de utilizar o processamento interno para cada nó da rede. Contudo, a concepção do modelo encoraja a utilização de funções de activação idênticas numa camada. Aqui estão as três camadas que uma rede inclui:

– Camadas de entrada

As camadas de entrada recolhem a entrada em bruto e utilizam-na no processo informático.

– Camadas ocultas

As camadas ocultas recolhem a entrada da outra camada e geram saída para a outra camada.

– Camadas de saída

As camadas de saída irão prever o resultado.

Todas as camadas ocultas dependem da mesma função de activação. A camada de saída inclui várias funções de activação. Recolhe informação a partir de camadas ocultas. Esta camada está dependente da geração de diferentes tipos de previsões que o modelo requer.
As redes neurais aprendem com a retropropagação do algoritmo de erro. Para actualizar os pesos da camada oculta, o modelo requer derivados do erro de previsão. Pode-se facilmente diferenciar entre funções de activação para calcular a derivada de primeira ordem para um determinado valor de entrada. As redes neurais incluem numerosos tipos de funções de activação. Mas para melhorar o desempenho das camadas ocultas e de saída, só se deve utilizar algumas funções.

Vantagens da função de activação linear rectificada

Enquanto desenvolve diferentes tipos de redes neurais, a função de activação linear rectificada está a tornar-se uma escolha padrão dos cientistas de dados. Os principais benefícios da função de activação Relu são:

1. Simplicidade na Computação

Não é importante implementar a função rectificadora quando se requer uma função max(). Isto é diferente da função de activação sigmóide e tanh, para a qual se requer o cálculo exponencial.

2. Sparsity Representacional

Outro benefício da função rectificadora é a capacidade de gerar saída com um verdadeiro valor zero. Indica que as entradas negativas produzirão uma verdadeira saída zero. Desta forma, as redes neurais podem permitir camadas ocultas e incluir um ou mais valores zero verdadeiro. Pode referir-se a isto como representação esparsa, uma vez que simplifica o modelo e acelera o processo de aprendizagem. Isto torna a função desejável para a aprendizagem representativa.

3. Comportamento Linear

A função rectificadora é semelhante à função de activação linear. Tem o mesmo desempenho e as mesmas acções. Geralmente, é possível optimizar facilmente o comportamento das redes neurais quando o comportamento é próximo do linear.

Como codificar a função de ReluActivação

Utilizaremos o Python para a implementação do linear rectificado com o método fácil e directo. A aplicação mais simples da utilização desta função seria a função max(). Aqui está o exemplo para a utilização correcta da função:
# função linear rectificada
rectificada(x):
retorno máximo(0,0,x)
De acordo com a expectativa, o valor positivo regressará inalterado. No entanto, o valor negativo ou o valor de entrada de 0,0 regressará a 0,0. Aqui pode encontrar alguns exemplos de entradas e saídas da função de activação Relu:
# demonstram a função linear rectificada

# função linear rectificada
rectificada(x):
returnmax(0.0,x)

# demonstrar com um input positivo
x=1.0
impresso(‘rectificado(%.1f) é %.1f’%(x,rectificado(x)))
x=1000.0
impresso(‘rectificado(%.1f) é %.1f’%(x,rectificado(x)))
# demonstrar com uma entrada zero
x=0.0
impresso(‘rectificado(%.1f) é %.1f’%(x,rectificado(x)))
# demonstrar com um input negativo
x=-1.0
impresso(‘rectificado(%.1f) é %.1f’%(x,rectificado(x)))
x=-1000.0
impresso(‘rectificado(%.1f) é %.1f’%(x,rectificado(x)))
Ao executarmos os exemplos acima, podemos identificar o retorno de valores positivos independentemente da sua dimensão. No entanto, os valores negativos irão passar para o valor 0,0.
1 rectificado(1,0) é 1,0
2 rectificados(1000.0) é 1000.0
3 rectificado(0,0) é 0,0
4 rectificado(-1,0) é 0,0
5 rectificado(-1000.0) é 0.0
Depois de traçarmos as séries de entradas e as saídas calculadas, compreenderemos a relação entre as entradas e as saídas. Aqui estão alguns exemplos de geração de uma série de inteiros a partir de -10 a 10. Ajuda com o cálculo da Reluactivação para entrada individual. A seguir, o modelo irá traçar os resultados.
# traçar entradas e saídas
de pyplotlib de importação matplotlib
# função linear rectificada
rectificada(x):
returnmax(0.0,x)

# definir uma série de entradas
series_in=[xforxinrange(-10,11)]
# calcular saídas para as nossas entradas
series_out=[rectificado(x)forxinseries_in]
# gráfico de linhas de entradas em bruto para saídas rectificadas
pyplot.plot(series_in,series_out)
pyplot.show()

Conclusão

A função Reluactivation ajuda as redes neurais a formar modelos de aprendizagem profunda. Devido aos problemas de gradiente em diferentes camadas, não se pode utilizar a activação tangente hiperbólica e sigmóide. É possível ultrapassar os problemas de gradiente através da função de activação Relu. Isto permite que o modelo tenha um melhor desempenho e aprenda mais rapidamente. Quando se desenvolve o Perceptron convolutivo e Multilayer, a função de activação linear rectificada das redes neurais será a opção por defeito.