继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

探索 sigmoid 函数:神经网络中的奥秘与魅力

慕斯王
关注TA
已关注
手记 385
粉丝 111
获赞 513

探索 sigmoid 函数:神经网络中的奥秘与魅力

在神经网络中,sigmoid 函数是一个重要的模块。它的输出值范围在 0 到 1 之间,可以用来表示概率或者激活神经网络中的神经元。今天,我们将一起探索 sigmoid 函数的奥秘与魅力。

sigmoid 函数的定义

sigmoid 函数是一个常用的非线性函数,它的定义如下:

import numpy as np

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

这个函数可以通过对输入的 x 进行指数运算并取反得到。它的输出值范围在 0 到 1 之间,且在输入值大于 0 时,输出值接近于 1,在输入值小于 0 时,输出值接近于 0。

sigmoid 函数的应用

sigmoid 函数在神经网络中有很多应用,下面我们将介绍一些常见的应用。

  1. 概率计算

sigmoid 函数可以用来计算一个神经元在输出为 1 时的事件概率。这对于神经网络中的分类任务非常有用,例如在二分类任务中,我们可以使用 sigmoid 函数来计算一个神经元输出为 1 的概率。

import numpy as np

# 生成一个概率分布
prob_dist = np.array([[0.1, 0.9],
                        [0.2, 0.8],
                        [0.3, 0.7],
                        [0.4, 0.6],
                        [0.5, 0.5]])

# 计算每个神经元的概率
prob = sigmoid(np.array([[0.1, 0.9],
                        [0.2, 0.8],
                        [0.3, 0.7],
                        [0.4, 0.6],
                        [0.5, 0.5]]))

# 打印结果
print(prob)
  1. 激活函数

sigmoid 函数也可以用作神经网络中的激活函数。它可以将输入的值映射到输出值在 0 到 1 之间的范围。

import numpy as np

# 生成一个神经网络
net = np.array([[0.1, 0.9],
                 [0.2, 0.8],
                 [0.3, 0.7],
                 [0.4, 0.6],
                 [0.5, 0.5]])

# 将输入值代入网络中
inputs = np.array([[0.1], [0.2], [0.3], [0.4], [0.5]])

# 计算输出值
outputs = sigmoid(np.array(inputs))

# 打印结果
print(outputs)
  1. 决策树

sigmoid 函数还可以用于决策树。在决策树中,每个内部节点的输出值也是通过 sigmoid 函数计算得出的。

import numpy as np

# 生成一个决策树
tree = np.array([[0.1, 0.9],
                 [0.2, 0.8],
                 [0.3, 0.7],
                 [0.4, 0.6],
                 [0.5, 0.5]])

# 计算每个节点的输出值
outputs = sigmoid(tree)

# 打印结果
print(outputs)

总结

sigmoid 函数是神经网络中一个非常重要的函数,它在神经网络中有很多应用。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP