Artificial Neural Network 简明教程

Artificial Neural Network - Building Blocks

ANN 的处理取决于以下三个组成部分 -

Processing of ANN depends upon the following three building blocks −

  1. Network Topology

  2. Adjustments of Weights or Learning

  3. Activation Functions

在本章中,我们将详细讨论人工神经网络的这三个组成部分

In this chapter, we will discuss in detail about these three building blocks of ANN

Network Topology

网络拓扑是网络及其节点和连接线的排列。根据拓扑结构,人工神经网络可分类为以下几种:

A network topology is the arrangement of a network along with its nodes and connecting lines. According to the topology, ANN can be classified as the following kinds −

Feedforward Network

它是一个非循环网络,在各层具有处理单元/节点,并且一层中的所有节点都与前一层的节点连接。连接具有不同的权重。没有反馈回路意味着信号只能从输入到输出单向流动。它可以分为以下两种类型:

It is a non-recurrent network having processing units/nodes in layers and all the nodes in a layer are connected with the nodes of the previous layers. The connection has different weights upon them. There is no feedback loop means the signal can only flow in one direction, from input to output. It may be divided into the following two types −

  1. Single layer feedforward network − The concept is of feedforward ANN having only one weighted layer. In other words, we can say the input layer is fully connected to the output layer.

single layer feedforward network
  1. Multilayer feedforward network − The concept is of feedforward ANN having more than one weighted layer. As this network has one or more layers between the input and the output layer, it is called hidden layers.

multilayer feedforward network

Feedback Network

顾名思义,反馈网络具有反馈路径,这意味着信号可以使用环路双向流动。这使其成为一个非线性动态系统,不断变化,直到达到平衡状态。它可以分为以下类型:

As the name suggests, a feedback network has feedback paths, which means the signal can flow in both directions using loops. This makes it a non-linear dynamic system, which changes continuously until it reaches a state of equilibrium. It may be divided into the following types −

  1. Recurrent networks − They are feedback networks with closed loops. Following are the two types of recurrent networks.

  2. Fully recurrent network − It is the simplest neural network architecture because all nodes are connected to all other nodes and each node works as both input and output.

fully recurrent network
  1. Jordan network − It is a closed loop network in which the output will go to the input again as feedback as shown in the following diagram.

jordan network

Adjustments of Weights or Learning

在人工神经网络中学习是修改指定网络中神经元之间连接权重的方法。人工神经网络学习可以分为三大类,即监督学习、无监督学习和强化学习。

Learning, in artificial neural network, is the method of modifying the weights of connections between the neurons of a specified network. Learning in ANN can be classified into three categories namely supervised learning, unsupervised learning, and reinforcement learning.

Supervised Learning

顾名思义,此类学习是在老师的监督下进行的。这一学习过程是依赖的。

As the name suggests, this type of learning is done under the supervision of a teacher. This learning process is dependent.

在有监督学习下的人工神经网络训练期间,输入向量将呈现给网络,这将产生一个输出向量。该输出向量将与期望输出向量进行比较。如果实际输出和期望输出向量之间有差异,则会生成一个误差信号。在此误差信号的基础上,将调整权重,直到实际输出与期望输出匹配。

During the training of ANN under supervised learning, the input vector is presented to the network, which will give an output vector. This output vector is compared with the desired output vector. An error signal is generated, if there is a difference between the actual output and the desired output vector. On the basis of this error signal, the weights are adjusted until the actual output is matched with the desired output.

supervised learning

Unsupervised Learning

顾名思义,此类学习是在不经老师监督的情况下进行的。这一学习过程是独立的。

As the name suggests, this type of learning is done without the supervision of a teacher. This learning process is independent.

在无监督学习下的人工神经网络训练期间,将类似类型的输入向量组合在一起以形成集群。当应用新的输入模式时,神经网络将产生输出响应,指示输入模式所属的类别。

During the training of ANN under unsupervised learning, the input vectors of similar type are combined to form clusters. When a new input pattern is applied, then the neural network gives an output response indicating the class to which the input pattern belongs.

该过程中没有来自环境的反馈,表明什么应该是期望输出以及该输出是否正确或不正确。因此,在该类型的学习中,网络本身必须从输入数据中发现模式和特征,以及输入数据与输出之间的关系。

There is no feedback from the environment as to what should be the desired output and if it is correct or incorrect. Hence, in this type of learning, the network itself must discover the patterns and features from the input data, and the relation for the input data over the output.

unsupervised learning

Reinforcement Learning

顾名思义,此类学习用于加强或增强网络中一些批判性信息。这一学习过程类似于监督式学习,不过我们可能了解的信息非常少。

As the name suggests, this type of learning is used to reinforce or strengthen the network over some critic information. This learning process is similar to supervised learning, however we might have very less information.

在强化学习下网络训练期间,网络从环境中收到一些反馈。这使其在某种程度上类似于监督式学习。然而,在此处获得的反馈是评价性的,而不是指导性的,这意味着没有监督式学习中的老师。收到反馈后,网络将调整权重以在将来获取更佳的批判性信息。

During the training of network under reinforcement learning, the network receives some feedback from the environment. This makes it somewhat similar to supervised learning. However, the feedback obtained here is evaluative not instructive, which means there is no teacher as in supervised learning. After receiving the feedback, the network performs adjustments of the weights to get better critic information in future.

reinforcement learning

Activation Functions

可以将它定义为施加在输入上的额外力或努力,以获得精确的输出。在人工神经网络中,我们还可以在输入上应用激活函数以获得精确的输出。以下是一些有趣的激活函数:

It may be defined as the extra force or effort applied over the input to obtain an exact output. In ANN, we can also apply activation functions over the input to get the exact output. Followings are some activation functions of interest −

Linear Activation Function

它也被称为恒等函数,因为它不执行输入编辑。它可以定义为-

It is also called the identity function as it performs no input editing. It can be defined as −

F(x)\:=\:x

Sigmoid Activation Function

它有两种类型,如下所示 -

It is of two type as follows −

  1. Binary sigmoidal function − This activation function performs input editing between 0 and 1. It is positive in nature. It is always bounded, which means its output cannot be less than 0 and more than 1. It is also strictly increasing in nature, which means more the input higher would be the output. It can be defined as F(x)\:=\:sigm(x)\:=\:\frac{1}{1\:+\:exp(-x)}

  2. Bipolar sigmoidal function − This activation function performs input editing between -1 and 1. It can be positive or negative in nature. It is always bounded, which means its output cannot be less than -1 and more than 1. It is also strictly increasing in nature like sigmoid function. It can be defined as F(x)\:=\:sigm(x)\:=\:\frac{2}{1\:+\:exp(-x)}\:-\:1\:=\:\frac{1\:-\:exp(x)}{1\:+\:exp(x)}