论文部分内容阅读
人工神经网络(artificial neural network,缩写ANN)是一种基于生物神经元仿生得到的算法,作为机器学习领域的一大重要组成部分,其已在机器人控制、声音图像识别等方面发挥出了重要的作用。将物联网与人工智能相结合也是现如今的一大趋势。在这种结合中,通过将每个设备作为单个神经元,将多个设备组成阵列,连接成为神经网络——也就是“分散式组网”,因其灵活的组网方式,针对小型网络可以快速搭建也成为了近年的一个新的研究趋势。但在以物联网节点为神经元的分散式组网的物联网ANN结构中,神经网络可能会因软件或硬件发生故障导致节点间中断,发生故障时寻找出失效的神经元节点对于及时地重组网络恢复工作是很重要的问题,这一问题尚未有人提出解决办法。针对分散式组网出现的节点设备因发生错误而需要查找的问题,本文提出了一个用于分散式ANN网络进行错误场景复现的分散式ANN节点模块。该节点模块可在网络运行中进行可控的错误模拟(也就是可错误注入),使用这种节点组成被诊断网络的镜像网络,通过在镜像网络中的节点注入错误,然后与真正发生问题的网络进行对比,可以辅助完成对错误模块的定位和故障原因分析。在本文中,主要从以下几方面对该模块进行阐述:首先针对常规ANN算法进行分析,仔细分析了前向传播以及反向传播以及各阶段的具体流程,再对基于基于常规ANN算法的分散式ANN网络进行了简要介绍,并提出了分散式ANN网络在实际应用场景中所存在的缺陷,为适用于神经网络的支持故障模拟的ANN算法及其节点模块的提出提供了理论基础。然后本文提出了权重错误注入的故障模型,并基于此模型设计了可错误注入ANN,继而以集群算法为原型,进行了对照试验。本对照实验分为常规ANN模拟集群算法以及三种错误注入情况下的可错误注入ANN模拟集群算法这四组对照组,其中三种错误注入情况为权重翻倍、权重减半和指定权重清零。通过将三种错误注入情况与常规ANN模拟集群算法运算结果的对比,突出了可错误注入ANN在权重翻倍,减半以及清零三种情况下表现出的三种不同运动趋势,通过这三种运动趋势的对比,可以得到经过该可错误注入ANN参与后,不同的出错方式间具有可区分性,能够实现对不同故障情况的区分功能。接着本文实现了可应用于硬件设备的可错误注入的ANN节点硬件模块,用于针对物联网AI的分散式组网硬件的故障复现,为满足分散式组网的灵活性,将以神经元的形式进行设计,并对该模块进行了系统级及模块级的设计描述。在完成对错误注入ANN节点模块的设计后,对该模块从子模块以及整体两个层面进行了功能仿真,并将该模块进行组网,形成具有错误注入功能的分散式ANN网络,与正常工作的分散式ANN网络和剔除特定节点的分散式ANN网络进行工作结果对比,基于本文所设计的支持故障模拟的节点搭建的ANN,错误注入后能够复现剔除特定节点的分散式ANN网络的错误场景。通过错误注入ANN结构这一设计,为以物联网节点为神经元所进行的神经元分散式组网在出现节点中断问题时的故障排查提供了技术支持。