sigmoid函数原理解释

def sigmoid(z):
  return 1/1+np.exp(-z)

要理解sigmoid函数,首先明白线性特征归一化的函数为:

X n o r m = X − X m i n / X m a x − X m i n X_{norm} = X-X_{min}/X_{max}-X_{min} Xnorm=XXmin/XmaxXmin

1. X − X m i n 得 到 当 前 值 的 Y 轴 去 掉 截 距 的 水 平 高 度 1.X-X_{min} 得到当前值的Y轴去掉截距的水平高度 1.XXminY

2. X m a x − X m i n 得 到 数 据 集 的 极 差 , 当 X − X m i n 除 以 当 前 数 据 集 的 极 差 , 也 就 显 示 了 当 前 X 在 数 据 集 里 的 高 度 分 位 , 也 就 是 X i 在 Y 轴 高 度 的 比 例 。 2.X_{max}-X_{min}得到数据集的极差,当 X-X_{min} 除以当前数据集的极差,也就显示了当前 X_{}在数据集里的高度分位,也就是X_i在Y轴高度的比例。 2.XmaxXminXXminXXiY

而sigmoid之所以可以表示的 X i X_{i} Xi是X矩阵的概率归一化的原因是:

概 率 的 整 体 密 度 是 1 , X 向 量 作 为 常 数 的 指 数 向 量 的 时 候 , 得 到 就 是 函 数 的 整 体 在 Y 轴 的 反 向 比 例 概率的整体密度是1,X向量 作为常数的指数向量的时候,得到就是函数的整体在Y轴的反向比例 1,XY
exampleX = (np.random.randn(100))
plt.figure(figsize=(8,8))
plt.plot(np.exp(-exampleX),c='g')
plt.plot(exampleX,c='r')
plt.plot(np.zeros_like(exampleX),'black')
plt.plot(np.ones_like(exampleX),'black')

在这里插入图片描述

1 + e X 1+e^{X} 1+eX 时,可以消除比例相反的问题

plt.figure(figsize=(8,8))
plt.plot(1+np.exp(-exampleX),c='g')
plt.plot(exampleX,c='r')
plt.plot(np.zeros_like(exampleX),'black')
plt.plot(np.ones_like(exampleX),'black')

在这里插入图片描述

所以用 1 / 1 + e X 1/1+e^{X} 1/1+eX 就可以得到向量的概率归一化,yhat的值在正负1之间

plt.figure(figsize=(8,8))
plt.plot(1/(1+np.exp(-exampleX)),c='g')
plt.plot(exampleX,c='r')
plt.plot(np.zeros_like(exampleX),'black')
plt.plot(np.ones_like(exampleX),'black')

在这里插入图片描述

用一个序列函数则可以更好的表明它

examplearray = np.arange(-10,10,0.1)
plt.figure(figsize=(8,8))
plt.plot(1/(1+np.exp(-examplearray)),c='g')
plt.plot(np.zeros_like(examplearray),'y')
plt.plot(np.ones_like(examplearray),'y')

在这里插入图片描述

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值