我对神经网络还比较陌生,需要一些帮助来理解基础知识。我正在尝试创建一个具有两个输入、一个偏置和一个输出的单个神经元。
这个过程是这样的,
output = w1 * x + w2 * y + bias * wb
这里x和y是输入,w1、w2、wb是权重,偏置是0.5
之后,输出会通过Sigmoid函数处理。
sout = S(output)
为了测试,我试图让这个神经元模拟“与”和“或”门。
所以我的问题是,
为了计算目标值和输出的差异,我是否需要将目标值(0或1)也通过Sigmoid函数处理,然后计算它们之间的差异?
还是我只需要计算目标值(0或1)与通过Sigmoid函数处理后的输出之间的差异?
此外,随着训练轮次的进行,“与”和“或”函数的误差变化是不同的。“与”函数的误差变化看起来很奇怪,而“或”函数的误差变化是可以接受的。为什么“与”函数的误差图表会出现这种上下波动的奇怪情况?
“或”误差图表
“与”误差图表
谢谢
回答:
你应该计算的差异是第二个提议的方案。你将输入(x,y)通过网络处理,然后计算相关输出与目标值(0或1)之间的差异。这假设你正在进行二元分类任务,其中目标值是0或1。