如何确定神经网络中神经元触发的阈值?

我有一个简单的任务,使用神经网络根据人的身高和头发长度将其分类为“男人”或“女人”类别。还需要教它一些示例模式,然后让它自己进行分类。

我对神经网络有基本的了解,但在这里我真的需要一些帮助。

我知道每个神经元将区域划分为两个子区域,这也就是为什么在这里使用P = w0 + w1*x1 + w2*x2 + … + wn*xn(权重只是在几何表示中移动线条)。

我明白每个周期都应该修改权重以更接近正确的结果,但我从未编程实现过,我对如何开始感到无助。

我应该如何进行,意思是:我如何确定阈值以及如何处理输入?

这不是作业,而是对有兴趣的人的任务。我有兴趣,我希望能理解它。


回答:

看起来你正在处理一个带有阈值激活函数的简单感知器。看看这个问题。由于你确实使用了偏置神经元(w0),你可以将阈值设置为0。

然后你只需将网络的输出与0进行比较,例如,如果x < 0,则输出类别1,如果x > 0,则输出类别2。你可以将x=0的情况建模为“模糊不清”。

为了学习权重,你需要应用Delta学习规则,这可以很容易地实现。但要小心:带有简单阈值激活函数的感知器只有在你的数据是线性可分的情况下才正确。如果你有更复杂的数据,你将需要多层感知器和非线性激活函数,如Logistic Sigmoid函数。

详细信息请查看Geoffrey Hinton的Coursera课程,第2讲

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注