Activation Functions from NNlib.jl

These non-linearities used between layers of your model are exported by the NNlib package.

Note that, unless otherwise stated, activation functions operate on scalars. To apply them to an array you can call ฯƒ.(xs), relu.(xs) and so on. Alternatively, they can be passed to a layer like Dense(784 => 1024, relu) which will handle this broadcasting.

Functions like softmax are sometimes described as activation functions, but not by Flux. They must see all the outputs, and hence cannot be broadcasted. See the next page for details.

Alphabetical Listing

NNlib.celu โ€” Function
celu(x, ฮฑ=1) = x โ‰ฅ 0 ? x : ฮฑ * (exp(x/ฮฑ) - 1)

Activation function from "Continuously Differentiable Exponential Linear Units".

julia> lineplot(celu, -2, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        
         2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ ’โ ‰โ”‚ celu(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ ”โ Šโ ‰โ €โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โฃ€โกคโ –โ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โฃ€โ คโ –โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโกคโกงโ ถโ ญโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โฃ€โฃ€โ คโ ”โ ’โ ‹โ โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
        -1 โ”‚โ คโ คโ คโ คโ ”โ ’โ ’โ ’โ Šโ ‰โ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €        
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €        

julia> celu(-10f0)
-0.9999546f0
NNlib.elu โ€” Function
elu(x, ฮฑ=1) = x > 0 ? x : ฮฑ * (exp(x) - 1)

Exponential Linear Unit activation function. See "Fast and Accurate Deep Network Learning by Exponential Linear Units". You can also specify the coefficient explicitly, e.g. elu(x, 1).

julia> lineplot(elu, -2, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”       
         2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ ’โ ‰โ”‚ elu(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ ”โ Šโ ‰โ €โ €โ €โ €โ”‚       
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โฃ€โกคโ –โ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ”‚       
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โฃ€โ คโ –โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚       
           โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโกคโกงโ ถโ ญโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚       
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โฃ€โฃ€โ คโ ”โ ’โ ‹โ โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚       
        -1 โ”‚โ คโ คโ คโ คโ ”โ ’โ ’โ ’โ Šโ ‰โ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚       
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜       
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €       
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €       

julia> elu(-10f0)
-0.9999546f0

julia> elu(-10f0, 2)
-1.9999092f0
NNlib.gelu โ€” Function
gelu(x) = 0.5x * (1 + tanh(โˆš(2/ฯ€) * (x + 0.044715x^3)))

Activation function from "Gaussian Error Linear Units".

julia> lineplot(gelu, -2, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        
         2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ ”โ Šโ”‚ gelu(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ Šโ โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ ’โ ‰โ €โ €โ €โ €โ €โ €โ €โ”‚        
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โฃ€โก โ คโ ’โ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โฃคโฃคโฃคโฃคโฃคโฃคโฃคโฃคโกคโ คโ คโ คโ คโ คโ คโ คโฃคโฃคโฃคโกคโกงโ ถโ ถโ ญโ ฅโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ ˆโ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
        -1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €        
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €        

julia> lineplot(gelu, -5, 0, height=7);

julia> lineplot!(ans, swish)
             โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         
           0 โ”‚โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ’โ ’โ คโฃ„โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โขธโ”‚ gelu(x) 
             โ”‚โ ‘โ ’โ ขโ คโฃ„โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ “โข„โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ”‚ swish(x)
             โ”‚โ €โ €โ €โ €โ €โ ˆโ ‰โ ’โ คโฃ€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‘โข†โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃธโ โ”‚         
   f(x)      โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ ’โข„โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‘โข„โ €โ €โ €โ €โ €โ €โ €โ €โข โก‡โ €โ”‚         
             โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ “โข„โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ “โฃ„โ €โ €โ €โ €โ €โข โกžโ €โ €โ”‚         
             โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ ฆโก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ “โข„โฃ€โฃ€โกคโขฃโ ƒโ €โ €โ”‚         
        -0.2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ˆโ “โฃ„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข โ ‡โ €โ €โ €โ”‚         
             โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         
             โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €0โ €         
             โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €         
NNlib.hardsigmoid โ€” Function
hardฯƒ(x) = max(0, min(1, (x + 3) / 6))

Piecewise linear approximation of sigmoid.

julia> lineplot(hardsigmoid, -5, 5, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         
        1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โข€โก โ –โ ‹โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ”‚ hardฯƒ(x)
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โฃ€โกคโ ’โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โก โ ”โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโก—โ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ Šโ โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โกคโ –โ ‹โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
        0 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โ คโ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         
          โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €         
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €         

julia> lineplot(sigmoid, -5, 5, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     
        1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โฃ€โก โ คโ –โ ’โ ’โ ‹โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ”‚ ฯƒ(x)
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โข€โก โ –โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โฃ€โ ”โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก โกโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก”โ ‹โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ Šโ โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
        0 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โ คโ คโ คโ ’โ Šโ ‰โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     
          โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €     
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €     
NNlib.sigmoid_fast โ€” Function
sigmoid_fast(x)

This is a faster, and very slightly less accurate, version of sigmoid. For `x::Float32, perhaps 3 times faster, and maximum errors 2 eps instead of 1.

See also tanh_fast.

julia> sigmoid(0.2f0)
0.54983395f0

julia> sigmoid_fast(0.2f0)
0.54983395f0

julia> hardฯƒ(0.2f0)
0.53333336f0
NNlib.hardtanh โ€” Function
hardtanh(x) = max(-1, min(1, x))

Segment-wise linear approximation of tanh, much cheaper to compute. See "Large Scale Machine Learning".

See also tanh_fast.

julia> lineplot(hardtanh, -2, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”            
         1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โฃ€โ ”โ ‹โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ”‚ hardtanh(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โฃ€โกคโ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โข€โกคโ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
   f(x)    โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโกคโกทโ ฅโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚            
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก โ –โ โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก โ –โ ‹โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
        -1 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โ ”โ ‹โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜            
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €            
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €x

julia> lineplot(tanh, -2, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        
         1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โก โ คโ คโ ’โ ’โ ’โ Šโ ‰โ ‰โ ‰โ”‚ tanh(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โข€โก โ ”โ Šโ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โข€โกคโ ’โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
   f(x)    โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโกคโกทโ ฅโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โกคโ –โ โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โก โ ”โ Šโ โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
        -1 โ”‚โฃ€โฃ€โฃ€โก โ คโ คโ คโ –โ ’โ Šโ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €        
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €        
NNlib.tanh_fast โ€” Function
tanh_fast(x)

This is a faster but slighly less accurate version of tanh.

Where Julia's tanh function has an error under 2 eps, this may be wrong by 5 eps, a reduction by less than one decimal digit.

For x::Float32 this is usually about 10 times faster, with a smaller speedup for x::Float64. For any other number types, it just calls tanh.

See also sigmoid_fast.

julia> tanh(0.5f0)
0.46211717f0

julia> tanh_fast(0.5f0)
0.46211714f0

julia> hard_tanh(0.5f0)
0.5f0
NNlib.leakyrelu โ€” Function
leakyrelu(x, a=0.01) = max(a*x, x)

Leaky Rectified Linear Unit activation function. You can also specify the coefficient explicitly, e.g. leakyrelu(x, 0.01).

julia> lineplot(x -> leakyrelu(x, 0.5), -2, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”       
         2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ ’โ ‰โ”‚ #42(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ ”โ Šโ ‰โ €โ €โ €โ €โ”‚       
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โฃ€โกคโ –โ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ”‚       
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โฃ€โ คโ –โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚       
           โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโฃคโฃคโกคโกงโ ถโ ญโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚       
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โข€โฃ€โฃ€โ คโ คโ ’โ ’โ ‹โ ‰โ โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚       
        -1 โ”‚โฃ€โฃ€โ คโ คโ ’โ ’โ Šโ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚       
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜       
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €       
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €       

julia> leakyrelu(-10f0, 0.2)
-2.0f0

julia> leakyrelu(-10f0, 0.02)
-0.5f0
NNlib.lisht โ€” Function
lisht(x) = x * tanh(x)

Activation function from "LiSHT: Non-Parametric Linearly Scaled Hyperbolic Tangent ..."

julia> lineplot(lisht, -2, 2, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         
        2 โ”‚โ ขโฃ„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ”‚ lisht(x)
          โ”‚โ €โ ˆโ ‘โขฆโก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โกคโ Šโ โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ ˆโ ฃโฃ„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ โ €โ €โ €โ €โ”‚         
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ ‘โข†โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก โ Šโ โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ ขโก„โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โข€โ ”โ ‹โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ˆโ “โข„โก€โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โข€โก โ –โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
        0 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ˆโ “โ ฆโฃ„โฃ€โฃ€โฃ‡โฃ€โฃ€โ คโ ’โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         
          โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €         
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €         

julia> lineplot!(ans, logcosh)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”           
        2 โ”‚โ ขโฃ„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ”‚ lisht(x)  
          โ”‚โ €โ ˆโ ‘โขฆโก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โกคโ Šโ โ €โ”‚ logcosh(x)
          โ”‚โ ขโฃ„โ €โ €โ ˆโ ฃโฃ„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ โ €โ €โฃ€โ ”โ”‚           
   f(x)   โ”‚โ €โ ˆโ ‘โ ขโฃ€โ €โ €โ ‘โข†โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก โ Šโ โ €โฃ€โ ”โ Šโ โ €โ”‚           
          โ”‚โ €โ €โ €โ €โ €โ ‰โ ขโข„โก€โ ‰โ ขโก„โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โข€โ ”โ ‹โ €โก โ ”โ ‹โ โ €โ €โ €โ €โ”‚           
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ “โ ฆโฃŒโก“โข„โก€โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โข€โก โ –โฃโ คโ ’โ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ”‚           
        0 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ “โ ชโ ทโฃฆโฃ„โฃ€โฃ€โฃ‡โฃ€โฃ€โฃคโ ถโ •โ ’โ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚           
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           
          โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €           
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €           
NNlib.logcosh โ€” Function
logcosh(x)

Return log(cosh(x)) which is computed in a numerically stable way.

julia> lineplot(logcosh, -5, 5, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”           
        5 โ”‚โก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚ logcosh(x)
          โ”‚โ ‰โ ขโฃ„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ ‹โ”‚           
          โ”‚โ €โ €โ €โ ‘โ ขโฃ„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ Šโ โ €โ €โ”‚           
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ ‘โ ฆโฃ€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ Šโ โ €โ €โ €โ €โ €โ”‚           
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‘โ ฆโก€โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โข€โกคโ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ”‚           
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ˆโ “โ ฆโก€โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โข€โกคโ ’โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚           
        0 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ˆโ ‘โ ขโข„โฃ€โฃ€โฃ‡โฃ€โก โ ”โ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚           
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           
          โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €           
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €           
NNlib.logsigmoid โ€” Function
logฯƒ(x)

Return log(ฯƒ(x)) which is computed in a numerically stable way.

julia> lineplot(logsigmoid, -5, 5, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        
         0 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกงโ คโ ”โ ’โ ’โ ’โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ”‚ logฯƒ(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ –โ Šโ ‰โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ ’โ ‰โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โข€โกคโ –โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โฃ€โ ”โ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โกคโ –โ ‹โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
        -6 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        
           โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €        
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €        
NNlib.mish โ€” Function
mish(x) = x * tanh(softplus(x))

Activation function from "Mish: A Self Regularized Non-Monotonic Neural Activation Function".

julia> lineplot(mish, -5, 5, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        
         5 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ –โ ‹โ”‚ mish(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ ’โ โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โก โ ”โ ‹โ โ €โ €โ €โ €โ €โ €โ”‚        
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โข€โก โ –โ ‹โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โข€โกคโ –โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃงโฃ”โฃŠโฃโฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โ”‚        
        -1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        
           โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €        
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €        
NNlib.relu โ€” Function
relu(x) = max(0, x)

Rectified Linear Unit activation function.

julia> lineplot(relu, -2, 2, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        
        2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ ‹โ”‚ relu(x)
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ Šโ โ €โ €โ”‚        
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โกคโ Šโ โ €โ €โ €โ €โ €โ”‚        
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โข€โกคโ –โ โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โก โ –โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โก โ –โ ‹โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
        0 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ‡โ ”โ ‹โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        
          โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €        
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €        
NNlib.relu6 โ€” Function
relu6(x) = min(max(0, x), 6)

Rectified Linear Unit activation function capped at 6. See "Convolutional Deep Belief Networks" from CIFAR-10.

julia> lineplot(relu6, -10, 10, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         
        6 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ Žโ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ”‚ relu6(x)
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โข€โก”โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โกคโ ƒโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โก โ Žโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โข€โ –โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โก”โ ƒโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
        0 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โกงโ ‹โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         
          โ €-10โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €10โ €         
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €         
NNlib.rrelu โ€” Function
rrelu(x, lo=1/8, hi=1/3) = max(a*x, x)
# where `a` is randomly sampled from uniform distribution `U(lo, hi)`

Randomized Leaky Rectified Linear Unit activation function. See "Empirical Evaluation of Rectified Activations" You can also specify the bound explicitly, e.g. rrelu(x, 0.0, 1.0).

julia> lineplot(rrelu, -20, 10, height=7)
            โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         
         10 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โขธโ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ –โ ‹โ”‚ rrelu(x)
            โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โขธโ €โ €โ €โ €โ €โข€โก โ –โ ‹โ โ €โ €โ €โ”‚         
            โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โขธโ €โข€โก โ ”โ Šโ โ €โ €โ €โ €โ €โ €โ €โ”‚         
   f(x)     โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโกคโ คโฃคโฃคโขคโฃคโฃคโ คโ คโ คโขผโ ฎโ ฅโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚         
            โ”‚โฃฐโข€โฃ†โก„โฃ„โก„โก โกฐโ ฆโ ทโกœโขขโ ทโ ณโ ขโ Šโ ‰โ ‰โ €โ €โ โ €โ €โ €โ €โ €โขธโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
            โ”‚โ ƒโ ‰โ ™โ ˜โ ƒโ ˆโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โขธโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
        -10 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โขธโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
            โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         
            โ €-20โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €10โ €         
            โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €         

julia> extrema(rrelu.(fill(-10f0, 1000)))
(-3.3316886f0, -1.2548422f0)
NNlib.selu โ€” Function
selu(x) = ฮป * (x โ‰ฅ 0 ? x : ฮฑ * (exp(x) - 1))

ฮป โ‰ˆ 1.05070...
ฮฑ โ‰ˆ 1.67326...

Scaled exponential linear units. See "Self-Normalizing Neural Networks".

julia> lineplot(selu, -3, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        
         3 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚ selu(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ คโ ’โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โข€โฃ€โ คโ –โ Šโ ‰โ €โ €โ €โ €โ”‚        
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โฃ€โก โ คโ ’โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โฃ‰โ ญโ ›โกโ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โฃ€โฃ€โกคโ คโ ’โ Šโ ‰โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
        -2 โ”‚โ คโ คโ –โ ’โ ’โ ’โ ’โ ’โ ’โ ’โ ‰โ ‰โ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        
           โ €-3โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €        
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €        

julia> selu(-10f0)
-1.7580194f0
NNlib.sigmoid โ€” Function
ฯƒ(x) = 1 / (1 + exp(-x))

Classic sigmoid activation function. Unicode ฯƒ can be entered as \sigma then tab, in many editors. The ascii name sigmoid is also exported.

See also sigmoid_fast.

julia> using UnicodePlots

julia> lineplot(sigmoid, -5, 5, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     
        1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โฃ€โก โ คโ –โ ’โ ’โ ‹โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ”‚ ฯƒ(x)
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โข€โก โ –โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โฃ€โ ”โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก โกโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก”โ ‹โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ Šโ โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
        0 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โ คโ คโ คโ ’โ Šโ ‰โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚     
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     
          โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €     
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €     

julia> sigmoid === ฯƒ
true
NNlib.softplus โ€” Function
softplus(x) = log(exp(x) + 1)

See "Deep Sparse Rectifier Neural Networks", JMLR 2011.

julia> lineplot(softplus, -3, 3, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”            
        4 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚ softplus(x)
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ”‚            
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ ”โ Šโ โ €โ”‚            
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ ”โ Šโ โ €โ €โ €โ €โ €โ”‚            
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โฃ€โก โ คโ ’โ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โฃ€โกงโ คโ ’โ Šโ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
        0 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โก โ คโ คโ คโ คโ ”โ ’โ ’โ šโ ‰โ ‰โ โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜            
          โ €-3โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €3โ €            
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €            

julia> lineplot!(ans, relu)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”            
        4 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚ softplus(x)
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โฃ โ”‚ relu(x)    
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โฃ โกดโ žโ ‹โ โ”‚            
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โฃคโกดโ žโ ‹โ โ €โ €โ €โ €โ”‚            
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โฃ€โก โขคโกฒโ โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โฃ€โกงโ คโ ’โ Šโฃ‰โ ฅโ šโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
        0 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ โฃคโฃคโฃคโฃคโฃ”โฃ’โฃ’โฃšโฃ‰โฃ‰โฃโฃ€โฃ‡โ ดโ ’โ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜            
          โ €-3โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €3โ €            
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €            

julia> softplus(16f0)
16.0f0
NNlib.softshrink โ€” Function
softshrink(x, ฮป=0.5) =
    (x โ‰ฅ ฮป ? x - ฮป : (-ฮป โ‰ฅ x ? x + ฮป : 0))

See "Softshrink Activation Function".

julia> lineplot(softshrink, -2, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”              
         2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ”‚ softshrink(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โฃ€โกคโ ”โ ’โ ‰โ โ”‚              
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ คโ ’โ ‹โ โ €โ €โ €โ €โ €โ €โ”‚              
   f(x)    โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโฃคโกคโ คโ คโ คโ คโ คโ คโกงโ คโ คโ คโ คโ ถโ ฎโ ญโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚              
           โ”‚โ €โ €โ €โ €โ €โ €โข€โฃ€โ คโ –โ ’โ ‰โ โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
           โ”‚โ €โฃ€โ คโ ”โ ’โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
        -2 โ”‚โ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜              
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €              
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €              

julia> lineplot!(ans, tanhshrink)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”              
         2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ”‚ softshrink(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โฃ€โกคโ ”โ ’โฃ‰โกกโ”‚ tanhshrink(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ คโฃ’โฃ‹โ ฅโ คโ ’โ Šโ ‰โ โ €โ”‚              
   f(x)    โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโฃคโฃคโฃคโฃคโกคโ คโ คโ คโ คโ คโ คโกทโ ถโ ถโ ถโ ถโ ถโ พโ ฟโ ฏโ ญโ ญโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚              
           โ”‚โ €โข€โฃ€โก โ คโ –โข’โฃ‹โ ญโ —โ ’โ ‰โ โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
           โ”‚โ Šโฃ‰โ คโ ”โ ’โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
        -2 โ”‚โ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜              
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €              
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €

julia> softshrink.((-10f0, 10f0))
(-9.5f0, 9.5f0)
NNlib.softsign โ€” Function
softsign(x) = x / (1 + |x|)

See "Quadratic Polynomials Learn Better Image Features" (2009).

julia> lineplot(softsign, -5, 5, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”            
         1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โฃ€โฃ€โฃ€โฃ€โ คโ คโ คโ คโ คโ”‚ softsign(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โฃ€โกคโ –โ ’โ ‹โ ‰โ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โก”โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
   f(x)    โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโกฏโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚            
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ”โ โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โฃ€โฃ€โ คโ คโ ’โ ‹โ โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
        -1 โ”‚โ ’โ ’โ ’โ ’โ ’โ Šโ ‰โ ‰โ ‰โ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜            
           โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €            
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €            

julia> lineplot!(ans, tanh)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”            
         1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โข€โกคโ –โ Šโ ‰โ ‰โ ‰โฃ‰โฃ‰โฃ‰โฃ‰โฃ‰โ ญโ ญโ ญโ ญโ ญโ”‚ softsign(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โก”โฃƒโกคโ –โ ’โ ‹โ ‰โ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚ tanh(x)    
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃงโกžโ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
   f(x)    โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโกฏโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚            
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกดโ ƒโก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โฃ€โฃ€โ คโ คโ ’โข‹โ •โ โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
        -1 โ”‚โฃ’โฃ’โฃ’โฃ’โฃ’โฃŠโฃ‰โฃ‰โฃ‰โฃ‰โฃโฃ€โฃ€โก โ คโ ’โ โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚            
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜            
           โ €-5โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €            
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €            

julia> softsign(1f0)
0.5f0

julia> softsign(100f0)
0.990099f0
NNlib.swish โ€” Function
swish(x) = x * ฯƒ(x)

Self-gated activation function. See "Swish: a Self-Gated Activation Function".

julia> lineplot(swish, -2, 2, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         
         2 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ”‚ swish(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ –โ ‹โ โ €โ”‚         
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ –โ ‹โ โ €โ €โ €โ €โ €โ”‚         
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โข€โฃ€โกคโ ”โ Šโ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
           โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโฃคโฃคโกคโกงโ ดโ ถโ ฏโ ฅโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚         
           โ”‚โ ‰โ ‘โ ’โ ’โ ’โ ’โ ’โ ’โ ’โ ’โ ’โ ’โ ‰โ ‰โ ‰โ ‰โ โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
        -1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €2โ €         
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €         
NNlib.hardswish โ€” Function
hardswish(x) = x * hardฯƒ(x)

Hard-Swish activation function. See "Searching for MobileNetV3".

julia> lineplot(hardswish, -2, 5, height = 7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”             
         5 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ ”โ ’โ ‰โ”‚ hardswish(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โก โ ”โ ’โ ‰โ โ €โ €โ €โ €โ”‚             
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ คโ –โ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚             
   f(x)    โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ ”โ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚             
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โข€โฃ€โ คโ –โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚             
           โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ‡โฃคโฃคโฃ–โฃšโฃ‰โฃโฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โ”‚             
        -1 โ”‚โ ‰โ ’โ ’โ ’โ ’โ ‰โ ‰โ ‰โ ‰โ โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚             
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜             
           โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €5โ €             
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €             

julia> lineplot(hardswish, -4, 0, height = 7);

julia> lineplot!(ans, swish)
             โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”             
           0 โ”‚โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โขฃโก€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โกœโ”‚ hardswish(x)
             โ”‚โ ’โ ’โ ขโ คโข„โฃ€โก€โ €โ €โ €โ €โ ฑโก„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โ Žโ €โ”‚ swish(x)    
             โ”‚โ €โ €โ €โ €โ €โ €โ ˆโ ‰โ ‘โ ’โ ฆโข„โฃ˜โข„โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โกดโ ƒโ €โ €โ”‚             
   f(x)      โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ‰โ ‘โก–โ ฆโข„โฃ€โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โข”โ โ โ €โ €โ €โ”‚             
             โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ˆโ ฃโฃ„โ €โ ‰โ ‘โ ’โ ฆโ คโข„โฃ€โฃ€โฃ€โฃ€โก โ คโ –โฃŠโ •โ โ €โ €โ €โ €โ €โ”‚             
             โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ “โ คโก€โ €โ €โ €โ €โ €โ €โ €โ €โข€โกคโ –โ โ €โ €โ €โ €โ €โ €โ €โ”‚             
        -0.4 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ ˆโ ‰โ ’โ ขโ คโ คโ ”โ ’โ ‹โ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚             
             โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜             
             โ €-4โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €0โ €             
             โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €             

julia> hardswish.(-5:5)'
1ร—11 adjoint(::Vector{Float64}) with eltype Float64:
 -0.0  -0.0  -0.0  -0.333333  -0.333333  0.0  0.666667  1.66667  3.0  4.0  5.0
NNlib.tanhshrink โ€” Function
tanhshrink(x) = x - tanh(x)

See "Tanhshrink Activation Function".

julia> lineplot(tanhshrink, -3, 3, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”              
         3 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚ tanhshrink(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โก โ คโ –โ Šโ”‚              
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โข€โฃ€โก โ คโ ’โ Šโ ‰โ โ €โ €โ €โ €โ”‚              
   f(x)    โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโขคโฃคโกคโ คโ คโ คโ คโ คโ คโกทโ ถโ ถโ ถโ ถโ ถโ ฎโ ญโ ฅโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚              
           โ”‚โ €โ €โ €โ €โ €โฃ€โก โ ดโ ’โ Šโ ‰โ โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
           โ”‚โก โ ดโ ’โ Šโ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
        -3 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚              
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜              
           โ €-3โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €3โ €              
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €              

julia> tanhshrink.((-10f0, 10f0))
(-9.0f0, 9.0f0)
NNlib.trelu โ€” Function
trelu(x, theta=1) = x > theta ? x : 0

Threshold gated rectified linear activation function. See "Zero-bias autoencoders and the benefits of co-adapting features"

julia> lineplot(trelu, -2, 4, height=7)
          โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”         
        4 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โกคโ –โ ‹โ”‚ trelu(x)
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ –โ ‹โ โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โข€โก โ ”โ Šโ โ €โ €โ €โ €โ €โ €โ €โ”‚         
   f(x)   โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ดโ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โฃ โ คโ ’โ ‰โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โกโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
        0 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ‡โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚         
          โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜         
          โ €-2โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €4โ €         
          โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €         

One More

Julia's Base.Math also provides tanh, which can be used as an activation function.

Note that many Flux layers will automatically replace this with NNlib.tanh_fast when called, as Base's tanh is slow enough to sometimes be a bottleneck.

julia> using UnicodePlots

julia> lineplot(tanh, -3, 3, height=7)
           โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”        
         1 โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โฃ€โ คโ ”โ ’โ ’โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ ‰โ”‚ tanh(x)
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โ €โ €โก โ –โ ‹โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก‡โกฐโ Šโ โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
   f(x)    โ”‚โ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโกคโกฏโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ คโ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โก โ Žโ โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ”‚โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โฃ€โ ดโ Šโ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
        -1 โ”‚โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โฃ€โกคโ คโ ”โ ’โ ‰โ โ €โ €โ €โ €โ €โก‡โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ”‚        
           โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜        
           โ €-3โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €3โ €        
           โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €xโ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €โ €