|
| 1 | +\begin{Verbatim}[commandchars=\\\{\},codes={\catcode`\$=3\catcode`\^=7\catcode`\_=8\relax}] |
| 2 | +\PYG{l+s+sd}{\PYGZdq{}\PYGZdq{}\PYGZdq{}The sigmoid function (or the logistic curve) is a} |
| 3 | +\PYG{l+s+sd}{function that takes any real number, z, and outputs a number (0,1).} |
| 4 | +\PYG{l+s+sd}{It is useful in neural networks for assigning weights on a relative scale.} |
| 5 | +\PYG{l+s+sd}{The value z is the weighted sum of parameters involved in the learning algorithm.\PYGZdq{}\PYGZdq{}\PYGZdq{}} |
| 6 | + |
| 7 | +\PYG{k+kn}{import} \PYG{n+nn}{numpy} |
| 8 | +\PYG{k+kn}{import} \PYG{n+nn}{matplotlib.pyplot} \PYG{k}{as} \PYG{n+nn}{plt} |
| 9 | +\PYG{k+kn}{import} \PYG{n+nn}{math} \PYG{k}{as} \PYG{n+nn}{mt} |
| 10 | + |
| 11 | +\PYG{n}{z} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{arange}\PYG{p}{(}\PYG{o}{\PYGZhy{}}\PYG{l+m+mi}{5}\PYG{p}{,} \PYG{l+m+mi}{5}\PYG{p}{,} \PYG{l+m+mf}{.1}\PYG{p}{)} |
| 12 | +\PYG{n}{sigma\PYGZus{}fn} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{vectorize}\PYG{p}{(}\PYG{k}{lambda} \PYG{n}{z}\PYG{p}{:} \PYG{l+m+mi}{1}\PYG{o}{/}\PYG{p}{(}\PYG{l+m+mi}{1}\PYG{o}{+}\PYG{n}{numpy}\PYG{o}{.}\PYG{n}{exp}\PYG{p}{(}\PYG{o}{\PYGZhy{}}\PYG{n}{z}\PYG{p}{)))} |
| 13 | +\PYG{n}{sigma} \PYG{o}{=} \PYG{n}{sigma\PYGZus{}fn}\PYG{p}{(}\PYG{n}{z}\PYG{p}{)} |
| 14 | + |
| 15 | +\PYG{n}{fig} \PYG{o}{=} \PYG{n}{plt}\PYG{o}{.}\PYG{n}{figure}\PYG{p}{()} |
| 16 | +\PYG{n}{ax} \PYG{o}{=} \PYG{n}{fig}\PYG{o}{.}\PYG{n}{add\PYGZus{}subplot}\PYG{p}{(}\PYG{l+m+mi}{111}\PYG{p}{)} |
| 17 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{plot}\PYG{p}{(}\PYG{n}{z}\PYG{p}{,} \PYG{n}{sigma}\PYG{p}{)} |
| 18 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}ylim}\PYG{p}{([}\PYG{o}{\PYGZhy{}}\PYG{l+m+mf}{0.1}\PYG{p}{,} \PYG{l+m+mf}{1.1}\PYG{p}{])} |
| 19 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}xlim}\PYG{p}{([}\PYG{o}{\PYGZhy{}}\PYG{l+m+mi}{5}\PYG{p}{,}\PYG{l+m+mi}{5}\PYG{p}{])} |
| 20 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{grid}\PYG{p}{(}\PYG{k+kc}{True}\PYG{p}{)} |
| 21 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}xlabel}\PYG{p}{(}\PYG{l+s+s1}{\PYGZsq{}z\PYGZsq{}}\PYG{p}{)} |
| 22 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}title}\PYG{p}{(}\PYG{l+s+s1}{\PYGZsq{}sigmoid function\PYGZsq{}}\PYG{p}{)} |
| 23 | + |
| 24 | +\PYG{n}{plt}\PYG{o}{.}\PYG{n}{show}\PYG{p}{()} |
| 25 | + |
| 26 | +\PYG{l+s+sd}{\PYGZdq{}\PYGZdq{}\PYGZdq{}Step Function\PYGZdq{}\PYGZdq{}\PYGZdq{}} |
| 27 | +\PYG{n}{z} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{arange}\PYG{p}{(}\PYG{o}{\PYGZhy{}}\PYG{l+m+mi}{5}\PYG{p}{,} \PYG{l+m+mi}{5}\PYG{p}{,} \PYG{l+m+mf}{.02}\PYG{p}{)} |
| 28 | +\PYG{n}{step\PYGZus{}fn} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{vectorize}\PYG{p}{(}\PYG{k}{lambda} \PYG{n}{z}\PYG{p}{:} \PYG{l+m+mf}{1.0} \PYG{k}{if} \PYG{n}{z} \PYG{o}{\PYGZgt{}=} \PYG{l+m+mf}{0.0} \PYG{k}{else} \PYG{l+m+mf}{0.0}\PYG{p}{)} |
| 29 | +\PYG{n}{step} \PYG{o}{=} \PYG{n}{step\PYGZus{}fn}\PYG{p}{(}\PYG{n}{z}\PYG{p}{)} |
| 30 | + |
| 31 | +\PYG{n}{fig} \PYG{o}{=} \PYG{n}{plt}\PYG{o}{.}\PYG{n}{figure}\PYG{p}{()} |
| 32 | +\PYG{n}{ax} \PYG{o}{=} \PYG{n}{fig}\PYG{o}{.}\PYG{n}{add\PYGZus{}subplot}\PYG{p}{(}\PYG{l+m+mi}{111}\PYG{p}{)} |
| 33 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{plot}\PYG{p}{(}\PYG{n}{z}\PYG{p}{,} \PYG{n}{step}\PYG{p}{)} |
| 34 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}ylim}\PYG{p}{([}\PYG{o}{\PYGZhy{}}\PYG{l+m+mf}{0.5}\PYG{p}{,} \PYG{l+m+mf}{1.5}\PYG{p}{])} |
| 35 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}xlim}\PYG{p}{([}\PYG{o}{\PYGZhy{}}\PYG{l+m+mi}{5}\PYG{p}{,}\PYG{l+m+mi}{5}\PYG{p}{])} |
| 36 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{grid}\PYG{p}{(}\PYG{k+kc}{True}\PYG{p}{)} |
| 37 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}xlabel}\PYG{p}{(}\PYG{l+s+s1}{\PYGZsq{}z\PYGZsq{}}\PYG{p}{)} |
| 38 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}title}\PYG{p}{(}\PYG{l+s+s1}{\PYGZsq{}step function\PYGZsq{}}\PYG{p}{)} |
| 39 | + |
| 40 | +\PYG{n}{plt}\PYG{o}{.}\PYG{n}{show}\PYG{p}{()} |
| 41 | + |
| 42 | +\PYG{l+s+sd}{\PYGZdq{}\PYGZdq{}\PYGZdq{}Sine Function\PYGZdq{}\PYGZdq{}\PYGZdq{}} |
| 43 | +\PYG{n}{z} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{arange}\PYG{p}{(}\PYG{o}{\PYGZhy{}}\PYG{l+m+mi}{2}\PYG{o}{*}\PYG{n}{mt}\PYG{o}{.}\PYG{n}{pi}\PYG{p}{,} \PYG{l+m+mi}{2}\PYG{o}{*}\PYG{n}{mt}\PYG{o}{.}\PYG{n}{pi}\PYG{p}{,} \PYG{l+m+mf}{0.1}\PYG{p}{)} |
| 44 | +\PYG{n}{t} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{sin}\PYG{p}{(}\PYG{n}{z}\PYG{p}{)} |
| 45 | + |
| 46 | +\PYG{n}{fig} \PYG{o}{=} \PYG{n}{plt}\PYG{o}{.}\PYG{n}{figure}\PYG{p}{()} |
| 47 | +\PYG{n}{ax} \PYG{o}{=} \PYG{n}{fig}\PYG{o}{.}\PYG{n}{add\PYGZus{}subplot}\PYG{p}{(}\PYG{l+m+mi}{111}\PYG{p}{)} |
| 48 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{plot}\PYG{p}{(}\PYG{n}{z}\PYG{p}{,} \PYG{n}{t}\PYG{p}{)} |
| 49 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}ylim}\PYG{p}{([}\PYG{o}{\PYGZhy{}}\PYG{l+m+mf}{1.0}\PYG{p}{,} \PYG{l+m+mf}{1.0}\PYG{p}{])} |
| 50 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}xlim}\PYG{p}{([}\PYG{o}{\PYGZhy{}}\PYG{l+m+mi}{2}\PYG{o}{*}\PYG{n}{mt}\PYG{o}{.}\PYG{n}{pi}\PYG{p}{,}\PYG{l+m+mi}{2}\PYG{o}{*}\PYG{n}{mt}\PYG{o}{.}\PYG{n}{pi}\PYG{p}{])} |
| 51 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{grid}\PYG{p}{(}\PYG{k+kc}{True}\PYG{p}{)} |
| 52 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}xlabel}\PYG{p}{(}\PYG{l+s+s1}{\PYGZsq{}z\PYGZsq{}}\PYG{p}{)} |
| 53 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}title}\PYG{p}{(}\PYG{l+s+s1}{\PYGZsq{}sine function\PYGZsq{}}\PYG{p}{)} |
| 54 | + |
| 55 | +\PYG{n}{plt}\PYG{o}{.}\PYG{n}{show}\PYG{p}{()} |
| 56 | + |
| 57 | +\PYG{l+s+sd}{\PYGZdq{}\PYGZdq{}\PYGZdq{}Plots a graph of the squashing function used by a rectified linear} |
| 58 | +\PYG{l+s+sd}{unit\PYGZdq{}\PYGZdq{}\PYGZdq{}} |
| 59 | +\PYG{n}{z} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{arange}\PYG{p}{(}\PYG{o}{\PYGZhy{}}\PYG{l+m+mi}{2}\PYG{p}{,} \PYG{l+m+mi}{2}\PYG{p}{,} \PYG{l+m+mf}{.1}\PYG{p}{)} |
| 60 | +\PYG{n}{zero} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{zeros}\PYG{p}{(}\PYG{n+nb}{len}\PYG{p}{(}\PYG{n}{z}\PYG{p}{))} |
| 61 | +\PYG{n}{y} \PYG{o}{=} \PYG{n}{numpy}\PYG{o}{.}\PYG{n}{max}\PYG{p}{([}\PYG{n}{zero}\PYG{p}{,} \PYG{n}{z}\PYG{p}{],} \PYG{n}{axis}\PYG{o}{=}\PYG{l+m+mi}{0}\PYG{p}{)} |
| 62 | + |
| 63 | +\PYG{n}{fig} \PYG{o}{=} \PYG{n}{plt}\PYG{o}{.}\PYG{n}{figure}\PYG{p}{()} |
| 64 | +\PYG{n}{ax} \PYG{o}{=} \PYG{n}{fig}\PYG{o}{.}\PYG{n}{add\PYGZus{}subplot}\PYG{p}{(}\PYG{l+m+mi}{111}\PYG{p}{)} |
| 65 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{plot}\PYG{p}{(}\PYG{n}{z}\PYG{p}{,} \PYG{n}{y}\PYG{p}{)} |
| 66 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}ylim}\PYG{p}{([}\PYG{o}{\PYGZhy{}}\PYG{l+m+mf}{2.0}\PYG{p}{,} \PYG{l+m+mf}{2.0}\PYG{p}{])} |
| 67 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}xlim}\PYG{p}{([}\PYG{o}{\PYGZhy{}}\PYG{l+m+mf}{2.0}\PYG{p}{,} \PYG{l+m+mf}{2.0}\PYG{p}{])} |
| 68 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{grid}\PYG{p}{(}\PYG{k+kc}{True}\PYG{p}{)} |
| 69 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}xlabel}\PYG{p}{(}\PYG{l+s+s1}{\PYGZsq{}z\PYGZsq{}}\PYG{p}{)} |
| 70 | +\PYG{n}{ax}\PYG{o}{.}\PYG{n}{set\PYGZus{}title}\PYG{p}{(}\PYG{l+s+s1}{\PYGZsq{}Rectified linear unit\PYGZsq{}}\PYG{p}{)} |
| 71 | + |
| 72 | +\PYG{n}{plt}\PYG{o}{.}\PYG{n}{show}\PYG{p}{()} |
| 73 | + |
| 74 | +\end{Verbatim} |
0 commit comments