逻辑函数错误分类

2024-05-27 11:17:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我在教神经网络异或逻辑函数时遇到了困难。我已经用双曲正切和ReLU作为激活函数对网络进行了成功的训练(关于ReLU,我知道它不适合这种问题,但我仍然想测试它)。不过,我还是不能用logistic function。我对函数的定义是:

def logistic(data):
    return 1.0 / (1.0 + np.exp(-data))

及其衍生物:

def logistic_prime(data):
    output = logistic(data)
    return output * (1.0 - output)

其中np是指定给导入的NumPy包的名称。由于异或逻辑使用的是0和1,逻辑函数应该是适当的激活函数。不过,我得到的结果在所有情况下都接近0.5,即0和1的任何输入组合的结果都接近0.5。我说的有错误吗?你知道吗

不要犹豫,问我更多的上下文或更多的代码。提前谢谢。你知道吗


Tags: 函数网络outputdatareturn定义defnp
1条回答
网友
1楼 · 发布于 2024-05-27 11:17:41

我和你有同样的问题。 当数据不能被线性超平面分割时,问题就出现了。 尝试训练数据:

X = [[-1,0],[0,1],[1,0],[0,-1]]
Y = [1,0,1,0]

如果你把它画在一个坐标上,你会发现它不是线性可分的。 对其进行logistic训练,参数均接近0,结果接近0.5。你知道吗

另一个线性可分的例子是useY = [1,1,0,0] 以及后勤工作。你知道吗

相关问题 更多 >

    热门问题