首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在神经网络中使用3神经元?

如何在神经网络中使用3神经元?
EN

Stack Overflow用户
提问于 2021-11-23 15:45:55
回答 1查看 26关注 0票数 1

这是具有1个神经元的感知器学习模型的经典可视化。假设我想使用3个神经元或5个神经元进行训练,我可以在没有隐藏层的情况下进行训练吗?我只是不能在脑海中想象。以下是代码;

代码语言:javascript
复制
import numpy as np

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

def tanh_derivative(x):
    return 1-x**2

#inputs  
training_inputs = np.array([[0,0,0],[0,0,1],[0,1,0],[0,1,1],[1,0,0],[1,0,1],[1,1,0],[1,1,1]])
                          
#outputs
training_outputs =np.array([[1,0,0,1,0,1,1,0]]).T

#3 input 1 output //
synaptic_weights = 2* np.random.random((3,1))-1 
print('Random weights :{}'.format(synaptic_weights))


for i in range(20000):
    input_layer = training_inputs
    outputs = tanh(np.dot(input_layer,synaptic_weights))
    error = training_outputs - outputs
    weight_adjust = error * tanh_derivative(outputs)
    
    synaptic_weights += np.dot(input_layer.T, weight_adjust)
print('After training Synaptic Weights: {}'.format(synaptic_weights))
print('\n')
print('After training Outputs :\n{}'.format(outputs))
EN

回答 1

Stack Overflow用户

发布于 2021-11-23 15:51:37

如果你在输出层有3个神经元,你就有3个输出。这对于某些问题是有意义的-想象一个带有RGB分量的颜色。

输入的大小决定了输入节点的数量;输出的大小决定了输出节点的数量。只有隐藏层大小可以自由选择。但任何有趣的网络都至少有一个隐藏层。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70083788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档