Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there any difference between an activation function and a transfer function?

Tags:

It seems there is a bit of confusion between activation and transfer function. From Wikipedia ANN:

enter image description here

It seems that the transfer function calculates the net while the activation function the output of the neuron. But on Matlab documentation of an activation function I quote:

satlin(N, FP) is a neural transfer function. Transfer functions calculate a layer's output from its net input.

So who is right? And can you use the term activation function or transfer function interchangeably?

like image 723
dynamic Avatar asked Sep 26 '14 11:09

dynamic


People also ask

Which function is also known as transfer function?

In engineering, a transfer function (also known as system function or network function) of a system, sub-system, or component is a mathematical function that theoretically models the system's output for each possible input. They are widely used in electronics and control systems.

What is transfer function in neural network?

The transfer function translates the input signals to output signals. Four types of transfer functions are commonly used, Unit step (threshold), sigmoid, piecewise linear, and Gaussian. Unit step (threshold)

Why are two different activation functions used?

Different activation functions allow for different non-linearities which might work better for solving a specific function. Using a sigmoid as opposed to a tanh will only make a marginal difference. What is more important is that the activation has a nice derivative.

What is the main purpose of activation functions?

An Activation Function decides whether a neuron should be activated or not. This means that it will decide whether the neuron's input to the network is important or not in the process of prediction using simpler mathematical operations.


1 Answers

No, they are the same. I also quote from wikipedia: "Usually the sums of each node are weighted, and the sum is passed through a non-linear function known as an activation function or transfer function. Don't take the matlab documentation too literally, it's thousand of pages long so some words might not be used in their strict sense.

In machine learning at least, they are used interchangeably by all books I've read.

  • activation function is used almost exclusively nowadays.
  • transfer function is mostly used in older (80/90's) books, when machine learning was uncommon, and most readers had an electrical engineering/signal processing background.

So, to sum up

  • prefer the term activation function. It's more common, and more appropriate, both from a biological point of view (neuron fires when you surpass a threshold) and an engineering point of view (an actual transfer function should describe the whole system)
  • if anyone else makes a distinction between them, ask them to clear up what they mean
like image 102
blue_note Avatar answered Sep 24 '22 14:09

blue_note