Page 1 of 1
Math E and function Sigmoid()
Posted: Fri Jun 30, 2017 5:03 pm
by Antonio Linares
https://www.lemoda.net/c/maths-constants/
Code: Select all
#include "FiveWin.ch"
function Main()
MsgInfo( Math_E() )
return nil
#pragma BEGINDUMP
#include <hbapi.h>
#include <math.h>
HB_FUNC( MATH_E )
{
hb_retnd( M_E );
}
#pragma ENDDUMP
Re: Math E and function Sigmoid()
Posted: Sat Jul 01, 2017 4:43 am
by Antonio Linares
function Sigmoid( nValue )
return 1 / ( 1 + Math_E() ^ ( -nValue / 1 ) )
Re: Math E and function Sigmoid()
Posted: Sat Jul 01, 2017 4:59 am
by Antonio Linares
Sigmoid demo:
sigmoid.prg
Code: Select all
#include "FiveWin.ch"
function Main()
local n
for n = 1 to 20
MsgInfo( Sigmoid( If( n % 2 == 0, -1, 1 ) * nRandom() / nRandom() ) )
next
return nil
function Sigmoid( nValue )
return 1 / ( 1 + Math_E() ^ ( -nValue / 1 ) )
#pragma BEGINDUMP
#include <hbapi.h>
#include <math.h>
HB_FUNC( MATH_E )
{
hb_retnd( M_E );
}
#pragma ENDDUMP
Re: Math E and function Sigmoid()
Posted: Sat Jul 01, 2017 5:03 am
by Antonio Linares
https://en.wikipedia.org/wiki/Sigmoid_function
A wide variety of sigmoid functions have been used as the activation function of artificial neurons
Re: Math E and function Sigmoid()
Posted: Sat Jul 01, 2017 7:47 am
by Enrico Maria Giordano
Antonio Linares wrote:function Sigmoid( nValue )
return 1 / ( 1 + Math_E() ^ ( -nValue / 1 ) )
Simplified:
Code: Select all
return 1 / ( 1 + Math_E() ^ -nValue )
EMG
Re: Math E and function Sigmoid()
Posted: Sat Jul 01, 2017 7:57 am
by Antonio Linares
thanks
Re: Math E and function Sigmoid()
Posted: Fri Oct 02, 2020 9:19 am
by Antonio Linares
function dSigmoid( n ) --> returns the derivative of the sigmoid function
Code: Select all
function dSigmoid( nValue )
local n := Sigmoid( nValue )
return n * ( 1 - n )
Re: Math E and function Sigmoid()
Posted: Fri Oct 02, 2020 9:25 am
by Antonio Linares
Example
Code: Select all
function Main()
local n
SET DECIMALS TO 10
for n = 1 to 10
? Sigmoid( n ), dSigmoid( n )
next
return nil
function Sigmoid( nValue )
return 1 / ( 1 + Math_E() ^ -nValue )
function dSigmoid( nValue ) // returns the derivative of the sigmoid function
local n := Sigmoid( nValue )
return n * ( 1 - n )
0.7310585786 0.19661193324148180000
0.8807970780 0.10499358540350660000
0.9525741268 0.04517665973091220000
0.9820137900 0.01766270621329111000
0.9933071491 0.00664805667079003200
0.9975273768 0.00246650929135993100
0.9990889488 0.00091022118012178410
0.9996646499 0.00033523767075636810
0.9998766054 0.00012337934976493020
0.9999546021 0.00004539580773590766