是否曾经好奇过人脑是如何运作的?在学校里,可能已经学习过相关知识。人工神经网络(ANN)的功能与人脑神经系统中的神经元相似。让开始这篇文章,快速了解ANN。
人工神经网络(ANNs)是目前最广泛使用的机器学习技术之一。这些神经网络最初在20世纪70年代被开发出来,但由于近年来计算能力的增加,它们变得极其流行,现在几乎无处不在。神经网络为使用的每个程序提供了智能界面,让保持参与。
“人工神经网络”这个术语来源于生物神经网络,它定义了人脑的结构。像人脑一样,人工神经网络在多层中拥有相互连接的神经元,这些神经元被称为节点。
在ANN中,节点层包括输入层、一个或多个隐藏层和输出层。每个节点,或人工神经元,都有自己的权重和阈值,并与其他节点相连。当节点的输出达到某个阈值时,它会被激活,并将数据发送到网络的下一层。如果情况并非如此,则不会将数据发送到网络的下一层。
# 导入所需的Python库:
from keras.models import Sequential
from keras.layers import Dense, Activation
import numpy as np
# numpy数组用于存储输入(x)和输出(y):
x = np.array([[0,0], [0,1], [1,0], [1,1]])
y = np.array([[0], [1], [1], [0]])
# 定义网络模型及其参数。
# 设置每层的神经元/节点数量:
model = Sequential()
model.add(Dense(2, input_shape=(2,)))
model.add(Activation('sigmoid'))
model.add(Dense(1))
model.add(Activation('sigmoid'))
# 编译模型及其准确度计算:
model.compile(loss='mean_squared_error', optimizer='sgd', metrics=['accuracy'])
# 打印模型的摘要:
model.summary()
一个神经元本质上是一个节点,具有多个输入和一个输出,而神经网络由许多相互连接的神经元组成。为了执行它们的工作,神经网络必须经历一个“学习阶段”,在这个阶段它们必须学会关联输入和输出信号。然后它们开始工作,接收输入数据并根据累积的数据生成输出信号。