Saturday, August 31, 2024

TI 30Xa Algorithm: The Sigmoid Function and its Integral

 TI 30Xa Algorithm: The Sigmoid Function and its Integral



The Sigmoid Function


The sigmoid function is defined as:


S = 1 / (1 + e^(-x))

If we multiply the last equation by e^(x) / e^(x), we get:

S = e^(x) / (e^(x) + 1) = e^(x) / (1 + e^(x))


The sigmoid function takes functions from the real numbers and maps them to the interval (0,1). If x → -∞, S → 0. If x → +∞, S → 1.


The inverse of the sigmoid function is the logit function, from which we can derive:


S = 1 / (1 + e^(-x))

1 / S = 1 + e^(-x)

1 / S – 1 = e^(-x)

ln( 1 / S – 1 ) = -x

ln( (1 – S) / S ) = -x (Note: 1 / S – 1 = 1 / S – S / S = (1 – S) / S )

-ln( (1 – S) / S ) = x

ln( S / (1 – S)) = x (Note: For any x, -ln(x) = ln(x^(-1)) = ln(1 / x))


The rest of the blog will focus on the sigmoid function.


The Integral of the Sigmoid Function


Funding the area of the curve under the sigmoid function is pretty straight forward.


∫ 1 / (1 + e^(-x)) dx


= ∫ e^(x) / (e^(x) + 1) dx


Let u = e^(x) + 1. The du = e^(x) dx and:


∫ du / u


= ln | u | + C

= ln (e^(x) +1) + C (since e^(x) + 1 > 0 for all real x)


The definite integral (area) can be calculated as:


x = b

∫ e^(x) / (e^(x) + 1) dx

x = a


= ln (1 + e^b) – ln (1 + e^a)


What if we are given the area, A (capital A), from negative infinity to a value x? Here we are finding the lower tail area.


t = x

∫ e^(t) / (e^(t) + 1) dx = A

t = -∞


ln(1 + e^(x)) – ln(1 + e^(-∞)) = A

Note that e^(-∞) → 0 as t → -∞

We can estimate that:

ln(1 + e^(x)) – ln( 1 ) = A

ln(1 + e^(x)) – 0 = A

1 + e^(x) = e^(A)

e^(x) = e^(A) – 1

x = ln(e^(A) – 1)



TI-30Xa Algorithms


Sigmoid function:

S = 1 / (1 + e^(-x)) = e^(x) / (e^(x) + 1)


Algorithm:

[ ( ] x [ +/- ] [ 2nd ] [ LN ] {e^x} [ + ] 1 [ ) ] [ 1/x ] [ = ]


Example:

S(1.5):

[ ( ] 1.5 [ +/- ] [ 2nd ] [ LN ] {e^x} [ + ] 1 [ ) ] [ 1/x ] [ = ]

Result: 0.817574476



Integral of the sigmoid function:

x = b

∫ e^(x) / (e^(x) + 1) dx

x = a


Algorithm:

[ ( ] b [ 2nd ] [ LN ] {e^x} [ + ] 1 [ ) ] [ LN ]

[ - ] [ ( ] a [ 2nd ] [ LN ] {e^x} [ + ] 1 [ ) ] [ LN ] [ = ]


Example:

x = 3

∫ e^(x) / (e^(x) + 1) dx

x = 0


(a = 0, b = 3)

[ ( ] 3 [ 2nd ] [ LN ] {e^x} [ + ] 1 [ ) ] [ LN ]

[ - ] [ ( ] 0 [ 2nd ] [ LN ] {e^x} [ + ] 1 [ ) ] [ LN ] [ = ]

Result: 2.355440171



Find x given lower tail area:

x = ln(e^(A) – 1)


Algorithm:

[ ( ] A [ 2nd ] [ LN ] {e^x} [ - ] 1 [ ) ] [ LN ] [ = ]


Example:

Area: A = 0.5


[ ( ] 0.5 [ 2nd ] [ LN ] {e^x} [ - ] 1 [ ) ] [ LN ] [ = ]

Result: -0.4327521296



Until next time,


Eddie


All original content copyright, © 2011-2024. Edward Shore. Unauthorized use and/or unauthorized distribution for commercial purposes without express and written permission from the author is strictly prohibited. This blog entry may be distributed for noncommercial purposes, provided that full credit is given to the author.

Spotlight: Akron Brass FireCalc Pocket Computer

Spotlight: Akron Brass FireCalc Pocket Computer Welcome to a special Monday Edition of Eddie’s Math and Calculator blog. Thi...