CN111753774B - 一种脉冲双向联想记忆的认知方法及系统 - Google Patents

一种脉冲双向联想记忆的认知方法及系统 Download PDF

Info

Publication number
CN111753774B
CN111753774B CN202010608109.9A CN202010608109A CN111753774B CN 111753774 B CN111753774 B CN 111753774B CN 202010608109 A CN202010608109 A CN 202010608109A CN 111753774 B CN111753774 B CN 111753774B
Authority
CN
China
Prior art keywords
semantics
pulse
action
sequence
associative memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010608109.9A
Other languages
English (en)
Other versions
CN111753774A (zh
Inventor
燕锐
李灯举
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Zhejiang Lab
Original Assignee
Zhejiang University of Technology ZJUT
Zhejiang Lab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT, Zhejiang Lab filed Critical Zhejiang University of Technology ZJUT
Priority to CN202010608109.9A priority Critical patent/CN111753774B/zh
Publication of CN111753774A publication Critical patent/CN111753774A/zh
Application granted granted Critical
Publication of CN111753774B publication Critical patent/CN111753774B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开一种脉冲双向联想记忆的认知方法及系统,涉及智能系统技术领域,方法包括:获取用户指令;若为视觉指令,则对用户图像进行处理,得到待认知的物体属性语义的脉冲序列,将其输入到训练和优化后的脉冲双向联想记忆网络模型中,根据得到的待认知的动作语义的脉冲序列确定用户的意图;若为动作指令,则对用户手势动作进行识别,得到待认知的动作语义的脉冲序列,将其输入到训练和优化后的脉冲双向联想记忆网络模型中,根据得到的待认知的物体属性语义的脉冲序列确定用户的意图。该方法及系统无需消耗大量计算成本即可实现视觉‑动作通过语义建立的双向联想记忆,将接收到的视觉信息和动作信息相互联系,准确识别人类意图。

Description

一种脉冲双向联想记忆的认知方法及系统
技术领域
本发明涉及智能系统技术领域,特别是涉及一种脉冲双向联想记忆的认知方法及系统。
背景技术
联想学习和记忆是人类生活中认知信息存储的一种常见形式,在人类认知、情感和行为中发挥了重要作用,联想学习和记忆将外源性信号(exogenous signals)通过联想思维和逻辑推理整合得到内源性信号(endogenous signals),即从初级联想记忆到次级联想记忆的过程和结果,在人类进行比较、计算、决策、意图和计划时扮演了重要角色。研究提出,在联想学习与记忆中,不同的感知模态和皮层检测对象或环境的各种特征信号,这些跨模态信号(cross-modal signals),被集成到相应的联想存储中。例如,在环境中有一个橘子,人类的视觉系统检测它的颜色和形状,嗅觉系统检测它的气味,味觉系统检测它的甜度,语言系统说出它的名字,听觉系统听到它的名字等。一旦有关橘子的联想记忆形成,其中的一种信号就会激发其它的关联信号的记忆,反之亦然。基于这些关联信号,可以指导人们的下一步决策或意图,一个可口的橘子会激发起人们想吃的欲望,如果味觉系统尝到了橘子腐坏的味道,则可能会让人停止吃的动作并将其丢弃。举一个橘子图像与单词联想学习的例子,视觉皮层(Visual Cortex,VC)和听觉皮层(Auditory Cortex,AC)中的联想记忆细胞分别通过相互刺激来编码橘子的视觉特征(如:形状和颜色等)和“橘子”单词的听觉特征(如:单字和发音等),从而使得VC和AC的联想记忆细胞共同激活,并激活了它们各自内部和跨模态联想记忆细胞之间的神经突触连接。
随着机器人技术的不断发展,机器人在机械结构上变得越来越复杂。然而,在智能系统领域,尤其是认知发展机器人领域,如何将智能系统提升到与人类认知能力相当的水平,如何使人类以更自然、更友好的方式与系统进行认知交互。机器人仍然面临着巨大的挑战,即便不在一个快速变化的环境中,这也是认知系统研究的首要目标。这种认知交互的实现需要社会学、关联理论、认知科学、神经科学、发展学、认知心理学等多学科的融合。关联理论深入探讨了人与人之间的交流和互动过程。它提到人们的交往不仅是思想的交流,而且是认知环境的建立。例如,一个语言能力受损但听力良好的人与一个普通人互动,普通人说“你好”,虽然语言能力受损的人不能说话,但他可以把像“你好”这样的词变成相关的概念,然后用手势来表达,而普通人也可以理解。这种情况的发生是因为他们在自己的认知环境中建立了概念之间的关系,或者是共享了认知环境。认知机器人有必要建立一个认知环境,以便快速推断人类的动作、语言或观察到的物体,从而提高人机交互体验。
在一些研究中,联想记忆(Associative Memory,AM)被认为在构建机器人的认知环境中起着至关重要的作用。几十年来,人们对许多神经联想记忆的改善进行了详尽的研究。在神经科学方面,最近的研究表明,海马的亚区(海马1和海马3,Cornu Ammonis 1和Cornu Ammonis 3,CA1和CA3)与联想记忆的形成密切相关,包括自联想记忆(Auto-Associative Memory,AAM)和异联想记忆(Hetero-Associative Memory,HAM)。在计算智能中,联想记忆是一种用于存储和回忆信息的脑启发数学模型。给定两个模式空间χ和γ,联想记忆构建一个函数ψ将模式空间χ映射到模式空间γ,假设有k对映射,上面所述可以表示为:yi=ψ(xi),xi∈χ,yi∈γ,i=1,...,k。其中xi和yi代表单个模式,如果xi=yi,则认为其是自联想,否则为异联想。双向联想记忆(Bidirectional Associative Memory,BAM)是异联想记忆中的一类,它具有两层结构,两层都可以作为输入层或输出层,以实现不同模式的关联。
越来越多关于人类神经机制和生物结构的发现可以应用到机器人上,以改善它们的感知、认知、学习和运动控制。许多研究者利用生物启发的算法,可以在复杂环境中实现低功耗、高鲁棒性、自适应、多通道的数据处理,从而创造出更智能的机器人。脉冲神经网络(Spiking Neural Network,SNN)被认为是具有较强生物可信性的第三代神经网络,其神经时序动态特性决定了时空模式能够得到较好的处理。
最近的研究表明,一些学者使用脉冲神经网络在联想记忆问题上进行研究,但是在实时联想记忆任务和物理机器人应用上,脉冲神经网络仍然是一个稀缺的研究领域。Zamani等人受到生物机制启发,提出了一种基于脉冲神经网络和时间编码的双向联想记忆模型,利用遗传算法(Genetic Algorithm,GA)对模型进行学习,完成了简单的脉冲模式关联任务。作者对脉冲神经网络构建双向联想记忆模型进行了初步探究,其使用的遗传算法有一定的生物启发性,但是这种方法计算成本很高,作者也在寻找其他的替代方法,并且该研究缺乏更复杂应用场景的实践。Yorita等人的研究中,传统标准双向联想记忆被用来将物体属性与相应的手势进行联系,他们构建的模型用于关爱老人的陪伴机器人MOBiMac上,可以用于增强简单的日常沟通,使得机器人能够更好地推断人类的意图,从而实现更自然的人机交互。但是他们采用的是基于传统人工神经网络的标准双向联想记忆模型,此模型缺乏一定的生物可信性。Cyr等人提出了基于脉冲神经网络的联想记忆,在仿真与物理机器人上实现了噪声模式的恢复和不同模式之间的关联,但是该研究只完成了简单的模式单向关联,没有提到更复杂的机器人上的应用。在B.J.Devereux等人和S.Nishida等人的研究中,展示了人类视觉感知与大脑语义表征之间的密切关系。语义可以表示不同类型的人类的感知内容,如物体、动作、印象等。
现在普遍存在的一些陪伴机器人,常常只捕获单一的模式,而不会将捕捉到的模式信息很好的关联,比如,机器人询问用户是否开心,用户哭着脸说很开心,此时假如只分析各种单一的模式,很有可能会错误识别用户的意图。目前虽然也有传统的标准BAM对机器人捕获的信息进行联想学习,但是传统的双向联想记忆模型缺乏对脉冲模式进行关联,而能够对脉冲模式进行关联的现有的脉冲双向联想记忆网络模型,即Zamani等人在2010年提出的模型为代表,他们的模型在学习方法上使用了遗传算法,在神经元选择上使用了Izhikevich神经元,其具有一定的生物启发意义,但计算复杂,需要消耗大量的计算成本,计算上缺乏便利性,生物可信性和准确率低。
发明内容
本发明的目的是提供一种脉冲双向联想记忆的认知方法及系统,无需消耗大量计算成本即可实现视觉-动作通过语义建立的双向联想记忆,将接收到的视觉信息和动作信息相互联系,准确识别人类意图。
为实现上述目的,本发明提供了如下方案:
一种脉冲双向联想记忆的认知方法,包括:
获取用户指令,并判断所述用户指令是否为视觉指令;所述用户指令包括视觉指令和动作指令;
若所述用户指令为视觉指令,则对用户拍照,得到用户图像;
对所述用户图像进行处理,得到待认知的物体属性语义的脉冲序列;所述待认知的物体属性语义为所述用户图像中的显著性物体的物体属性语义;
将所述待认知的物体属性语义的脉冲序列输入到训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的动作语义的脉冲序列;所述训练和优化后的脉冲双向联想记忆网络模型是利用训练数据集和精准脉冲驱动学习算法对脉冲双向联想记忆网络模型进行训练和优化得到的;所述脉冲双向联想记忆网络模型包括均由多个神经元组成的第一层和第二层;所述神经元采用泄漏集成-发放模型作为神经元模型;所述训练数据集包括一一对应的物体属性语义的脉冲序列和动作语义的脉冲序列;所述物体属性语义包括以空格隔开的物体形状字符串和物体颜色字符串;所述动作语义为动作字符串;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述物体属性语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述物体属性语义的脉冲序列对应的动作语义的脉冲序列;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述动作语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述动作语义的脉冲序列对应的物体属性语义的脉冲序列;
根据所述待认知的动作语义的脉冲序列确定用户的意图;
若所述用户指令为动作指令,则捕获用户手势动作的视频序列;
对所述视频序列中的手势动作进行识别,得到待认知的动作语义的脉冲序列;
将所述待认知的动作语义的脉冲序列输入到所述训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的物体属性语义的脉冲序列;
根据所述待认知的物体属性语义的脉冲序列确定用户的意图。
为实现上述目的,本发明还提供了如下方案:
一种脉冲双向联想记忆的认知系统,包括:
用户指令获取模块,用于获取用户指令,并判断所述用户指令是否为视觉指令;所述用户指令包括视觉指令和动作指令;
拍照模块,用于若所述用户指令获取模块的输出结果为视觉指令,则对用户拍照,得到用户图像;
图像处理模块,用于对所述用户图像进行处理,得到待认知的物体属性语义的脉冲序列;所述待认知的物体属性语义为所述用户图像中的显著性物体的物体属性语义;
第一认知模块,用于将所述待认知的物体属性语义的脉冲序列输入到训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的动作语义的脉冲序列;所述训练和优化后的脉冲双向联想记忆网络模型是利用训练数据集和精准脉冲驱动学习算法对脉冲双向联想记忆网络模型进行训练和优化得到的;所述脉冲双向联想记忆网络模型包括均由多个神经元组成的第一层和第二层;所述神经元采用泄漏集成-发放模型作为神经元模型;所述训练数据集包括一一对应的物体属性语义的脉冲序列和动作语义的脉冲序列;所述物体属性语义包括以空格隔开的物体形状字符串和物体颜色字符串;所述动作语义为动作字符串;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述物体属性语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述物体属性语义的脉冲序列对应的动作语义的脉冲序列;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述动作语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述动作语义的脉冲序列对应的物体属性语义的脉冲序列;
第一用户意图确定模块,用于根据所述待认知的动作语义的脉冲序列确定用户的意图;
视频录制模块,用于若所述用户指令获取模块的输出结果为动作指令,则捕获用户手势动作的视频序列;
手势动作识别模块,用于对所述视频序列中的手势动作进行识别,得到待认知的动作语义的脉冲序列;
第二认知模块,用于将所述待认知的动作语义的脉冲序列输入到所述训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的物体属性语义的脉冲序列;
第二用户意图确定模块,用于根据所述待认知的物体属性语义的脉冲序列确定用户的意图。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明公开的脉冲双向联想记忆的认知方法及系统,在脉冲双向联想记忆(Bidirectional Associative Memory,BAM)网络模型的学习方法上使用精准脉冲驱动(Precise-Spike-Driven,PSD)学习算法,从而在计算和生物可信性上都具有优势,在BAM网络模型的神经元选择上使用泄漏集成-发放(Leaky Integrate-and-Fire,LIF)神经元模型,从而在计算上更具便利性。通过构建包含物体属性语义的脉冲序列和动作语义的脉冲序列的训练数据集,将训练数据集输入BAM网络模型中,并采用PSD学习算法对BAM网络模型进行训练和优化,从而使训练和优化后的BAM网络模型计算更简单、计算成本更低,生物可信性和准确率更高,在无需消耗大量计算成本的情况下即可实现视觉-动作通过语义建立的双向联想记忆,将接收到的视觉信息和动作信息相互联系,准确识别人类意图。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明脉冲双向联想记忆的认知方法实施例1的流程图;
图2为本发明图片字母A和图片数字0进行双向联想过程示意图;
图3为本发明以200个元素作为一个位置单位窗口时位置单位窗口的前部和后部示意图;
图4为本发明根据发放时间状态依次在有效时间窗口内分配发放时间示意图;
图5为本发明单个神经元的结构示意图;
图6为本发明脉冲双向联想记忆网络模型与传统标准的双向联想记忆模型的对比图;
图7为本发明脉冲双向联想记忆的认知系统实施例3的结构图;
图8为本发明用于NAO机器人的认知系统的结构示意图;
图9为本发明用于NAO机器人的认知系统的工作流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种脉冲双向联想记忆的认知方法及系统,无需消耗大量计算成本即可实现视觉-动作通过语义建立的双向联想记忆,将接收到的视觉信息和动作信息相互联系,准确识别人类意图。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例1:
图1为本发明脉冲双向联想记忆的认知方法实施例1的流程图。参见图1,该脉冲双向联想记忆的认知方法包括:
步骤101:获取用户指令,并判断所述用户指令是否为视觉指令;所述用户指令包括视觉指令和动作指令。若所述用户指令为视觉指令,则执行步骤102;若所述用户指令为动作指令,则执行步骤106。
步骤102:对用户拍照,得到用户图像。
步骤103:对所述用户图像进行处理,得到待认知的物体属性语义的脉冲序列;所述待认知的物体属性语义为所述用户图像中的显著性物体的物体属性语义。
该步骤103具体包括:
采用深度显著性形状检测模型对所述用户图像进行处理,得到所述用户图像中显著性物体的形状属性和颜色属性;所述形状属性和所述颜色属性均以字符串的形式表示。
输出以空格隔开的形状字符串和颜色字符串,得到待认知的物体属性语义。
对所述待认知的物体属性语义进行二进制编码,得到待认知的物体属性语义的二进制序列。
对所述待认知的物体属性语义的二进制序列进行异或状态时间编码,得到待认知的物体属性语义的脉冲序列。
步骤104:将所述待认知的物体属性语义的脉冲序列输入到训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的动作语义的脉冲序列;所述训练和优化后的脉冲双向联想记忆网络模型是利用训练数据集和精准脉冲驱动学习算法对脉冲双向联想记忆网络模型进行训练和优化得到的;所述脉冲双向联想记忆网络模型包括均由多个神经元组成的第一层和第二层;所述神经元采用泄漏集成-发放模型作为神经元模型;所述训练数据集包括一一对应的物体属性语义的脉冲序列和动作语义的脉冲序列;所述物体属性语义包括以空格隔开的物体形状字符串和物体颜色字符串;所述动作语义为动作字符串;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述物体属性语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述物体属性语义的脉冲序列对应的动作语义的脉冲序列;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述动作语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述动作语义的脉冲序列对应的物体属性语义的脉冲序列。
该步骤104中,所述训练数据集的建立过程具体包括:
建立物体属性语义与动作语义一一对应的映射表。
对所述映射表中的所述物体属性语义进行二进制编码,得到所述物体属性语义的二进制序列。
对所述物体属性语义的二进制序列进行异或状态时间编码,得到所述物体属性语义的脉冲序列。
对所述映射表中的所述动作语义进行二进制编码,得到所述动作语义的二进制序列。
对所述动作语义的二进制序列进行异或状态时间编码,得到所述动作语义的脉冲序列。
建立所述物体属性语义的脉冲序列与所述动作语义的脉冲序列一一对应的训练数据集。
其中,异或状态时间编码的编码过程,具体包括:
将二进制序列中的每个元素依次按序对应于每个所述神经元。
对每个所述神经元标记三元组状态其中,/>表示位置状态,/>时表示第i个神经元被分配在一个单位窗口的前部,/>时表示第i个神经元被分配在一个单位窗口的后部;/>表示激活状态,/>时表示第i个神经元处于激活状态,/>时表示第i个神经元处于不激活状态;/>表示发放时间状态,/>其中/>表示异或计算,Ne表示所述神经元的个数,/>时表示第i个神经元在所述单位窗口的一个时间窗口的有效前部内发放,/>时表示第i个神经元在所述单位窗口的一个时间窗口的有效后部内发放。
使用辅助神经元以设定分配时间间隔有序且重复的填充所述时间窗口的有效前部和所述时间窗口的有效后部之外的辅助时间窗口。
根据发放时间状态依次在所述有效前部或所述有效后部内以所述设定分配时间间隔分配发放时间,得到二进制序列对应的脉冲序列。
步骤105:根据所述待认知的动作语义的脉冲序列确定用户的意图。
该步骤105具体包括:
对所述待认知的动作语义的脉冲序列进行异或状态时间解码,得到待认知的动作语义的二进制序列。
对所述待认知的动作语义的二进制序列进行二进制解码,得到待认知的动作语义。
根据所述待认知的动作语义确定用户当前及之后的动作。
在该步骤105之后还包括将所述意图以语音和动作的方式反馈给用户。
步骤106:捕获用户手势动作的视频序列。
步骤107:对所述视频序列中的手势动作进行识别,得到待认知的动作语义的脉冲序列。
该步骤107具体包括:
采用基于脉冲神经网络的手势识别算法对所述视频序列中的手势动作进行识别,输出动作字符串,得到待认知的动作语义。
对所述待认知的动作语义进行二进制编码,得到待认知的动作语义的二进制序列。
对所述待认知的动作语义的二进制序列进行异或状态时间编码,得到待认知的动作语义的脉冲序列。
步骤108:将所述待认知的动作语义的脉冲序列输入到所述训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的物体属性语义的脉冲序列。
步骤109:根据所述待认知的物体属性语义的脉冲序列确定用户的意图。
该步骤109具体包括:
对所述待认知的物体属性语义的脉冲序列进行异或状态时间解码,得到待认知的物体属性语义的二进制序列。
对所述待认知的物体属性语义的二进制序列进行二进制解码,得到待认知的物体属性语义。
根据所述待认知的物体属性语义确定用户需要的物体。
在该步骤109之后还包括:
将所述意图以语音的方式反馈给用户。
实施例2:
本实施例提出一种基于新型BAM网络模型的脉冲双向联想记忆的认知方法,含有一套用于联想学习不同领域概念的方法,可以在机器人(如NAO机器人)上实现视觉与动作的映射。特别提出一种可以用于构建PSD双向联想记忆模型的脉冲编码方案。
本实施例提出一种新型的BAM网络,并提出了名为“异或状态时间编码”的脉冲编码方案用于编码/解码相应的二进制/脉冲模式,方案适用于PSD学习算法,并构建BAM网络模型,该编码方案解决了PSD算法在期望脉冲发放时间点之前需要有足够传入脉冲,否则不能发放的技术问题。模型可以将输入模式映射到目标脉冲模式,由于模型的双向性,此过程可以反转。例如可以将表示字母的黑白图片和表示数字的黑白图片分别对应进行双向联想,此处的黑白像素点即可对应0/1进行二进制编码。标准的BAM网络可以描述为,两个有k对一对一映射的模式空间χ和γ:
χ={x1,x2,...,xk},γ={y1,y2,...,yk}
yi=f(W·xi),xi=f(WT·yi) (1)
式(1)中,xi,yi(i=1,...,k)是分别为m维和n维在模式空间χ和γ的单个模式,f是映射函数,W表示大小为m*n的权重矩阵,WT表示矩阵的转置。脉冲BAM网络与标准BAM网络结构类似,但使用了脉冲神经元作为网络的处理单元,因此更具生物可信性,相比标准BAM,回忆准确率、容量、抗噪性也更强。
本实施例中脉冲双向联想记忆网络模型的工作过程如下步骤所示:
步骤1:将二进制数据使用异或状态时间编码得到相应的脉冲序列。
以大小为20*20像素的图片字母A和图片数字0进行双向联想为例,其过程示意如图2所示,包含以下几个步骤:
步骤1.1:图片按行展开为包含400个元素的二进制序列,每一个元素依次按序对应于每个神经元,每个神经元包含了其激活状态信息,即表示颜色的0和1,还包含了其位置状态信息,即属于一个位置单位窗口的前部或后部。如图3所示,其中U=200表示位置单位窗口大小,以200个元素为划分单位,每个单位中的前半部和后半部的位置状态分别记为1和0。由于PSD算法的特性,在目标发放时间点之前需要有足够多的传入脉冲,因此使用辅助神经元来进行填充最前的时间周期。
步骤1.2:利用异或状态时间编码对400个元素进行编码,异或状态时间编码描述为,对每个神经元设置三个状态,标记为三元组三元组中的每个元素都等于0或1。
其中,位置(Position)记为表示第i个神经元被分配在一个单位窗口的前部;/>表示第i个神经元被分配在一个单位窗口的后部。
激活(Activation)记为表示第i个神经元处于激活状态;/>表示第i个神经元处于不激活状态。
发放时间(Firing Time)记为表示第i个神经元在一个时间窗口的有效前部内发放;/>表示第i个神经元在一个时间窗口的有效后部内发放。
步骤1.3:有了激活状态和位置状态,通过异或计算可以得到发放时间状态,根据发放时间状态,依次在有效时间窗口内分配发放时间,如图4所示,其中ti=0.5为分配时间间隔,te为有效时间周期,即可以得到二进制序列对应的脉冲序列模式,其编码过程如公式(2)所示:
其中Ne=400表示有效神经元个数,表示异或计算,使用的辅助神经元个数Na=60。对于所有的有效传入神经元,如果/>则第i个神经元在有效前部时间[5,20)发放;如果/>则第i个神经元在有效后部时间[25,40)发放;对于辅助传入神经元,它们被有序且重复的规划使用相同的间隔ti=0.5来填充辅助时间周期。例如,一个二进制序列可能被编码为[…,28.0,28.5,9.0,9.5,10.0,30.5,31.0,…]这样的脉冲序列模式。
步骤1.4:使用相同的编码方法,将目标二进制模式,此处即图片数字0,编码成相应的脉冲序列,当作目标发放脉冲模式,用于脉冲双向联想记忆网络进行联想学习。
步骤2:进行脉冲神经网络的联想学习(Associative Learning),在回忆阶段(Recalling Phase)不执行此步骤。为了计算的便利性,使用LIF神经元模型。它的神经元动力学由以下微分方程表示:
式(3)中,Vm表示神经元膜电位[mV];Rm表示膜电阻[mΩ],其值为1;Cm表示膜电容[nF],其值为10;τm表示膜时间常数,其值为10,τm=RmCm;τs表示慢衰减常数,其值为10,τs=τm;τf表示快衰减常数,其值为2.5,τf=τs/4;Vrest表示静息电位[mV],其值为0;Vreset表示重置电位,其值为0,Vrest=Vreset[mV],Vthr表示阈值电位[mV],其值为18;Isyn表示突触电流[mA],Inoise表示背景常数电流噪音[mA],其值为10;tref表示不应期[ms],其值为3。
对于输出层的每一个神经元,将传入神经元代表的脉冲序列模式通过联想学习,进行突触适应即权重调整使得该神经元在目标发放时间点产生脉冲。
具体的,设定每个脉冲神经元只发放单个脉冲,单个神经元的结构如图5所示,传入神经元在不同时刻传入脉冲,每一个传入脉冲都会产生突触后电流(Post-SynapticCurrent,PSC),其中wi表示第i个传入神经元到当前神经元的突触权重,Isyn表示对所有PSCs加权求和后的总电流,用于计算当前时刻神经元膜电位,当神经元的膜电位超过设定阈值电位后,就发放一个脉冲,之后神经元进入短暂的不应期,使用PSD学习规则对神经元突触进行调整,如下公式表示:
目标发放脉冲sd和真实发放脉冲so之间的误差导致权重的自适应,而正误差会引起长期增强(Long-Term Potentiation,LTP),而负误差会引起长期抑制(Long-TermDepression,LTD),而当真实发放脉冲正好在目标时间点发放时则不会引起突触权重变化。
在学习阶段(Learning Phase),前向过程和后向过程交替进行,输入和输出都是原始脉冲模式,过程中,前后向的实际输出脉冲和目标发放脉冲时间的误差会逐渐减小,最终脉冲双向联想记忆网络模型会学习到一个权重矩阵,在输入脉冲模式和目标输出脉冲模式之间建立联系。
步骤3:通过联想学习后,脉冲BAM网络学习到一个权重矩阵,将建立了对应联系的脉冲序列模式输入网络中,可以回忆(Recall)出对应的脉冲模式。
具体的,在回忆阶段,输出模式Po可能会出现三种状况,采取以下的误差修正过程:
1、第i个输出神经元刚好发放一个脉冲。神经元的脉冲发放时间直接赋值给模式Po的第i个发放时间,而且发放时间不做修改。2、第i个输出神经元发放多个脉冲。选择神经元的最后脉冲发放时间以保证只有单个脉冲。3、第i个输出神经元没有发放脉冲。选择该神经元的相邻神经元脉冲发放时间作为它的脉冲发放时间。
步骤4:将回忆得到的脉冲模式,利用异或状态时间编/解码方法,把脉冲模式解码成相应的二进制序列,即可还原成对应的黑白位图内容。
具体的,有如下过程:
通过回忆过程,得到了神经元的脉冲发放时间,根据时间属于时间窗口的前部或后部,即可得到神经元发放时间状态St,而神经元的位置状态Sp已知,此时只需要针对有效神经元进行计算,辅助神经元中没有编码需要的信息,因此辅助神经元被直接摒弃。解码计算公式如下:
公式(5)中的参数含义与编码公式中的一致。
目前,计算机中信息数据都是通过二进制表示的,通过使用本实施例中的异或状态时间编码方案,可以将任意二进制模式转换为脉冲模式,脉冲模式对本实施例中脉冲双向联想记忆网络模型联想学习可以进行双向联系,实现输入给定脉冲模式,输出相应的目标脉冲模式。在字母-数字联想实验中,本实施例中的脉冲双向联想记忆网络模型相比传统标准的双向联想记忆模型有更高回忆准确率、存储容量和抗噪性,如图6和表1所示,这是因为脉冲双向联想记忆网络模型中的脉冲神经元考虑了时间信息,可以携带并处理更多的数据且更具鲁棒性。基于此,可以利用脉冲双向联想记忆网络模型来构建应用,如分别将视觉模式和动作模式编码成相应的脉冲模式之后,就可以实现视觉-动作之间的联想学习与记忆。
表1不同编码方法准确率对照表
相比现有技术,本发明的脉冲双向联想记忆的认知方法具有以下优势:
1、相比标准BAM网络模型,本发明的脉冲双向联想记忆的认知方法准确率高,抗噪性更强。这是因为使用了脉冲神经元,脉冲信号可以携带更多的信息,并且单个脉冲神经元的处理能力强于普通人工神经网络的神经元,组建的网络更具鲁棒性。2、相比没有使用本发明中异或状态时间编码方案的模型,本发明的脉冲双向联想记忆的认知方法准确率更高,主要是PSD算法要求在目标脉冲发放点之前有足够多的传入脉冲,因此,在最靠前的目标发放点,往往都没有足够的传入脉冲,导致这些目标点的脉冲不发放,降低了准确率。本发明的脉冲双向联想记忆的认知方法使用了辅助神经元以及辅助时间周期用于填充最前的传入脉冲时间点,使得编码了信息的有效神经元可以正常发放脉冲,而辅助神经元可以被直接摒弃,因此提高了准确率。3、由于PSD算法是硬件友好性算法,本发明组建的脉冲双向联想记忆网络模型有潜力在神经拟态电路上实现,有高性能、低功耗的优势。
实施例3
图7为本发明脉冲双向联想记忆的认知系统实施例3的结构图。参见图7,该脉冲双向联想记忆的认知系统包括:
用户指令获取模块701,用于获取用户指令,并判断所述用户指令是否为视觉指令;所述用户指令包括视觉指令和动作指令。
拍照模块702,用于若所述用户指令获取模块的输出结果为视觉指令,则对用户拍照,得到用户图像。
图像处理模块703,用于对所述用户图像进行处理,得到待认知的物体属性语义的脉冲序列;所述待认知的物体属性语义为所述用户图像中的显著性物体的物体属性语义。
该图像处理模块703具体包括:
图像处理单元,用于采用深度显著性形状检测模型对所述用户图像进行处理,得到所述用户图像中显著性物体的形状属性和颜色属性;所述形状属性和所述颜色属性均以字符串的形式表示。
输出单元,用于输出以空格隔开的形状字符串和颜色字符串,得到待认知的物体属性语义。
第一二进制编码单元,用于对所述待认知的物体属性语义进行二进制编码,得到待认知的物体属性语义的二进制序列。
第一异或状态时间编码单元,用于对所述待认知的物体属性语义的二进制序列进行异或状态时间编码,得到待认知的物体属性语义的脉冲序列。
第一认知模块704,用于将所述待认知的物体属性语义的脉冲序列输入到训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的动作语义的脉冲序列;所述训练和优化后的脉冲双向联想记忆网络模型是利用训练数据集和精准脉冲驱动学习算法对脉冲双向联想记忆网络模型进行训练和优化得到的;所述脉冲双向联想记忆网络模型包括均由多个神经元组成的第一层和第二层;所述神经元采用泄漏集成-发放模型作为神经元模型;所述训练数据集包括一一对应的物体属性语义的脉冲序列和动作语义的脉冲序列;所述物体属性语义包括以空格隔开的物体形状字符串和物体颜色字符串;所述动作语义为动作字符串;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述物体属性语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述物体属性语义的脉冲序列对应的动作语义的脉冲序列;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述动作语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述动作语义的脉冲序列对应的物体属性语义的脉冲序列。
该第一认知模块704中,所述训练数据集的建立过程具体包括:
建立物体属性语义与动作语义一一对应的映射表;
对所述映射表中的所述物体属性语义进行二进制编码,得到所述物体属性语义的二进制序列;
对所述物体属性语义的二进制序列进行异或状态时间编码,得到所述物体属性语义的脉冲序列;
对所述映射表中的所述动作语义进行二进制编码,得到所述动作语义的二进制序列;
对所述动作语义的二进制序列进行异或状态时间编码,得到所述动作语义的脉冲序列;
建立所述物体属性语义的脉冲序列与所述动作语义的脉冲序列一一对应的训练数据集。
其中,所述异或状态时间编码的编码过程,具体包括:
将二进制序列中的每个元素依次按序对应于每个所述神经元;
对每个所述神经元标记三元组状态其中,/>表示位置状态,/>时表示第i个神经元被分配在一个单位窗口的前部,/>时表示第i个神经元被分配在一个单位窗口的后部;/>表示激活状态,/>时表示第i个神经元处于激活状态,/>时表示第i个神经元处于不激活状态;/>表示发放时间状态,/>其中/>表示异或计算,Ne表示所述神经元的个数,/>时表示第i个神经元在所述单位窗口的一个时间窗口的有效前部内发放,/>时表示第i个神经元在所述单位窗口的一个时间窗口的有效后部内发放;
使用辅助神经元以设定分配时间间隔有序且重复的填充所述时间窗口的有效前部和所述时间窗口的有效后部之外的辅助时间窗口;
根据发放时间状态依次在所述有效前部或所述有效后部内以所述设定分配时间间隔分配发放时间,得到二进制序列对应的脉冲序列。
第一用户意图确定模块705,用于根据所述待认知的动作语义的脉冲序列确定用户的意图。
该第一用户意图确定模块705具体包括:
第一异或状态时间解码单元,用于对所述待认知的动作语义的脉冲序列进行异或状态时间解码,得到待认知的动作语义的二进制序列;
第一二进制解码单元,用于对所述待认知的动作语义的二进制序列进行二进制解码,得到待认知的动作语义;
动作确定单元,用于确定根据所述待认知的动作语义确定用户当前及之后的动作。
该第一用户意图确定模块705还包括:
第一反馈单元,用于将所述意图以语音和动作的方式反馈给用户。
视频录制模块706,用于若所述用户指令获取模块的输出结果为动作指令,则捕获用户手势动作的视频序列。
手势动作识别模块707,用于对所述视频序列中的手势动作进行识别,得到待认知的动作语义的脉冲序列。
该手势动作识别模块707具体包括:
手势动作识别单元,用于采用基于脉冲神经网络的手势识别算法对所述视频序列中的手势动作进行识别,输出动作字符串,得到待认知的动作语义;
第二二进制编码单元,用于对所述待认知的动作语义进行二进制编码,得到待认知的动作语义的二进制序列;
第二异或状态时间编码单元,用于对所述待认知的动作语义的二进制序列进行异或状态时间编码,得到待认知的动作语义的脉冲序列。
第二认知模块708,用于将所述待认知的动作语义的脉冲序列输入到所述训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的物体属性语义的脉冲序列。
第二用户意图确定模块709,用于根据所述待认知的物体属性语义的脉冲序列确定用户的意图。
该第二用户意图确定模块709具体包括:
第二异或状态时间解码单元,用于对所述待认知的物体属性语义的脉冲序列进行异或状态时间解码,得到待认知的物体属性语义的二进制序列;
第二二进制解码单元,用于对所述待认知的物体属性语义的二进制序列进行二进制解码,得到待认知的物体属性语义;
需求确定单元,用于根据所述待认知的物体属性语义确定用户需要的物体。
该第二用户意图确定模块709还包括:
第二反馈单元,用于将所述意图以语音的方式反馈给用户。
实施例4:
基于实施例2的方法方案,构建一个用于NAO机器人(NAO是阿尔德巴兰机器人公司出品的可编程人型机器人,搭载了Linux系统,以及提供了丰富的接口便于使用)的认知系统,可以实现视觉-动作通过语义建立的双向联想记忆。
系统的结构如图8所示,系统由5个部分组成,其中(a)是人机交互界面模块,用于用户给机器人发送指令,此模块可根据实际交互方式修改,如通过语音、客户端操作等。(b)是DSSD模型,用于从视觉到动作的过程中处理输入图像数据,DSSD模型能够自动检测出目标的显著性,并从复杂环境中提取出目标的形状和颜色,最终输出相应的语义符号(英文字符串)。(c)是基于脉冲神经网络的手势识别算法,用于从动作到视觉的过程中识别用户的简单动作,最终输出相应的语义符号(英文字符)。(d)是脉冲双向联想记忆网络模型,是该系统的核心模块,用于执行二进制模式、脉冲模式编解码以及联想学习功能,用于建立视觉和动作之间的双向映射。(e)是机器人交互和反馈模块,用于机器人对当前执行的结果进行反馈,针对前向和后向处理过程有不同的反馈内容。具体地,在前向过程中,执行结果为视觉信息对应的动作信息,机器人将通过语音和动作的方式进行反馈。在后向过程中,执行结果为动作信息对应的视觉信息,机器人将通过语音的方式进行反馈,如图8所示。
系统的工作流程如图9所示,其中展示了具有两个脉冲BAM网络模型的结构,实心箭头表示前向计算,空心箭头表示后向计算。虚线框中的节点表示模型的额外输入或输出,包括了深度显著性形状检测(Deeply Salient Shape Detection,DSSD)模型和基于脉冲神经网络(Spiking Neural Network,SNN)的手势识别算法。
在DSSD模型的算法中,基于短连接的深度神经网络的显著性目标检测方法作为DSSD模型的插件,提取显著性目标的地图。经过一系列的形态学处理后,在凸包地图上利用多边形估计算法来根据边缘得到凸包的显著形状,如三条边代表一个三角形,四条边代表一个矩形,五条到七条边代表一个多边形,超过八条边代表一个圆。基于颜色相似度算法,得到显著形状的主色。输出的形状、颜色都以语义字符(即字符串表示),通过ASCII码,可以将字符串转换为对应的二进制序列。
基于脉冲神经网络的手势识别算法可以识别包括底部、顶部、左右四个方向的平面运动,以及包括近、远两个方向的深度运动。利用脉冲神经元分别记录两种运动的轨迹。在对来自SNN的数据进行投影和平移后,利用支持向量机(Support Vector Machine,SVM)进行数据分类,识别出手势。输出的手势动作都以语义字符(即字符串表示),通过ASCII码,可以将字符串转换为对应的二进制序列。
如图8和图9所示,系统有两条工作路径,一条路径显示从视觉到动作的正向处理过程:用户发送“Look”指令,机器人将开启摄像头捕获图像,图像中显著物体的形状和颜色属性可以首先通过DSSD模型检测到得到。将对象的语义属性输入到脉冲BAM网络模型中,通过联想回忆得到相应的对象和动作语义信息。最后,机器人输出语音信息并展示相应的动作。另一条路径显示从动作到视觉的逆向处理。用户发起“Action”指令,机器人开启摄像头并捕获一段人类的手势动作视频序列,利用基于SNN的手势识别方法,实现机器人对人的手势动作的识别。然后,将语义动作输入脉冲BAM网络模型,得到相应的对象及其属性语义表示。最后,机器人输出语音信息。(由于NAO机器人的计算局限性,DSSD模型可以部署在云GPU服务器上,以服务的形式为NAO机器人提供实时检测能力)。
结合该实施例的方法方案,此系统的执行过程如下:
学习阶段:
a)建立以下的物体属性-物体-动作之间通过语义联系的映射关系:
表2物体属性-物体-动作之间通过语义联系的映射关系表
物体属性 物体 动作
red circle basketball play
blue circle football kick
red polygon sofa sit
orange circle orange eat
white rectangle cup drink
yellow triangle sign watch
具体地,通过ASCII编码,将上面表中的字符串转换为二进制序列,每个字符使用8个比特表示,限长160,不足的用0补齐,此长度最多可表示20个字符。
b)执行实施例2中的步骤1,将得到的二进制序列转换为脉冲序列。具体地,执行步骤1.1,使用160个有效神经元来表示二进制序列,使用40个辅助神经元来填充辅助时间周期,设置单位窗口大小U=160。执行步骤1.2,对160个有效神经元进行编码,获得其三元组状态。执行步骤1.3,执行异或状态时间编码,获得每个神经元的发放时间点。
c)执行实施例2中的步骤2,使用两个脉冲双向联想记忆网络通过联想学习分别建立物体属性-物体以及物体-动作的双向映射。例如,物体属性-物体之间的联想学习,在前向过程中,物体属性的脉冲序列作为输出层的传入脉冲,物体的脉冲序列作为输出层的预期输出脉冲;在反向过程中,物体的脉冲序列作为输出层的传入脉冲,物体属性的脉冲序列作输出层的预期输出脉冲。通过PSD算法进行突触适应从而调整连接权重,实现脉冲模式的联想记忆。
回忆阶段:
从视觉到动作:
a)通过DSSD模型,获得视频帧中的显著性物体的形状和颜色,输出以空格隔开的字符串表示。
b)通过ASCII编码,将字符串转换为物体属性的二进制序列,每个字符使用8个比特表示,限长160,不足的用0补齐。
c)执行实施例2中的步骤1,将得到的物体属性二进制序列转换为表示物体属性的脉冲序列。具体地,执行步骤1.1,使用160个有效神经元来表示二进制序列,使用40个辅助神经元来填充辅助时间周期,设置单位窗口大小U=160。执行步骤1.2,对160个有效神经元进行编码,获得其三元组状态。执行步骤1.3,执行异或状态时间编码,获得每个神经元的发放时间点。
d)在第一个脉冲BAM网络,执行实施例2中的步骤3,将编码后得到的表示物体属性的脉冲模式作为X层的发放脉冲,即Y层的传入脉冲。通过正向回忆,可以得到每个神经元相应的脉冲输出,通过对输出模式进行脉冲发放纠正,得到最终表示物体的脉冲模式。
e)执行实施例2中的步骤4,将最终表示物体的脉冲模式解码成相应表示物体的二进制序列。
f)将得到的表示物体的二进制序列转换成物体的字符串。
g)将解码后的物体的字符串,通过ASCII编码,将字符串转换成二进制序列,每个字符使用8个比特表示,限长160,不足的用0补齐。
h)执行实施例2中的步骤1,将得到的物体二进制序列转换为表示物体的脉冲序列。具体地,执行步骤1.1,使用160个有效神经元来表示二进制序列,使用40个辅助神经元来填充辅助时间周期,设置单位窗口大小U=160。执行步骤1.2,对160个有效神经元进行编码,获得其三元组状态。执行步骤1.3,执行异或状态时间编码,获得每个神经元的发放时间点。
i)在第二个脉冲BAM网络,执行实施例2中的步骤3,将编码后得到的表示物体的脉冲模式作为X层的发放脉冲,即Y层的传入脉冲。通过正向回忆,可以得到每个神经元相应的脉冲输出,通过对输出模式进行脉冲发放纠正,得到最终表示动作的脉冲模式。
j)执行实施例2中的步骤4,将最终的表示动作的脉冲模式解码成相应的表示动作的二进制序列。
k)将得到表示动作的二进制序列转换成动作的字符串。
l)将动作的字符串作为用于NAO机器人执行的命令的参数,机器人即可运行相应的行为。
从动作到视觉:
a)通过基于SNN的手势识别方法,从视频流中识别出相应动作,并输出动作的字符标签。
b)通过ASCII编码,将字符串转换为表示动作的二进制序列,每个字符使用8个比特表示,限长160,不足的用0补齐。
c)执行实施例2中的步骤1,将得到的表示动作的二进制序列转换为表示动作的脉冲序列。具体地,执行步骤1.1,使用160个有效神经元来表示二进制序列,使用40个辅助神经元来填充辅助时间周期,设置单位窗口大小U=160。执行步骤1.2,对160个有效神经元进行编码,获得其三元组状态。执行步骤1.3,执行异或状态时间编码,获得每个神经元的发放时间点。
d)在第一个脉冲BAM网络,执行实施例2中的步骤3,将编码后得到的表示动作的脉冲模式作为Y层的发放脉冲,即X层的传入脉冲。通过反向回忆,可以得到每个神经元相应的脉冲输出,通过对输出模式进行脉冲发放纠正,得到最终表示物体的脉冲模式。
e)执行实施例2中的步骤4,将最终表示物体的脉冲模式解码成相应表示物体的二进制序列。
f)将得到的表示物体的二进制序列转换成物体的字符串。
g)将解码后的物体的字符串,通过ASCII编码,将字符串转换成表示物体的二进制序列,每个字符使用8个比特表示,限长160,不足的用0补齐。
h)执行实施例2中的步骤1,将得到的表示物体的二进制序列转换为表示物体的脉冲序列。具体地,执行步骤1.1,使用160个有效神经元来表示二进制序列,使用40个辅助神经元来填充辅助时间周期,设置单位窗口大小U=160。执行步骤1.2,对160个有效神经元进行编码,获得其三元组状态。执行步骤1.3,执行异或状态时间编码,获得每个神经元的发放时间点。
i)在第二个脉冲BAM网络,执行实施例2中的步骤3,将编码后得到的表示物体的脉冲模式作为Y层的发放脉冲,即X层的传入脉冲。通过反向回忆,可以得到每个神经元相应的脉冲输出,通过对输出模式进行脉冲发放纠正,得到最终表示物体属性的脉冲模式。
j)执行实施例2中的步骤4,将最终的表示物体属性的脉冲模式解码成相应的表示物体属性的二进制序列。
k)将得到表示物体属性的二进制序列转换成物体属性的字符串。
l)将物体属性的字符串作为用于NAO机器人执行的命令的参数,机器人即可运行相应的行为。
该实施例在二进制序列转换成字符串过程中,系统因为采用精确的编解码,可能会因为出现一些误差,导致最后解码出错,为了解决这个问题,可以使用重复神经元编码一个比特位,在解码时使用投票纠正机制,来得到正确的解码结果。也可以建立字符字典,将解码后的内容进行查询,得到最相近的内容。也可以直接通过比较脉冲模式序列相似度,来确定最后输出的脉冲模式代表的含义。
相比现有技术,本发明的脉冲双向联想记忆的认知系统具有以下优势:
1、能解决相对更复杂的问题,可以用于多种场景中,比如儿童教育、日常对话等。2、考虑机器人的性能和能源影响,系统所采用的方法在硬件上的实现将更适合机器人应用。3、系统的扩展性强,对于系统的输入、输出端(如DSSD和基于脉冲神经网络的手势识别)可以根据具体需求进行扩展、改进等。
本发明中的脉冲BAM网络,其与标准的BAM网络相似,但采用了不同的处理神经元(即脉冲神经元)。脉冲神经元进行神经计算,需要将数据编码成脉冲序列的形式,根据数据类型的变化,需要使用不同的脉冲编码方案。Zamani等人在研究中使用时间编码方案,他们将固定长度的时间窗口分为两部分,二元值数据被分别分配到这两部分,落在每部分的时间点随机。Yu等人在研究中使用相位编码方案将二元数据值转换成脉冲序列,并将其应用到编码光学符号识别(OCR)数字的黑白图片上。然而,以上提到的编码方案都不能很好的应用于使用PSD学习算法的脉冲双向联想记忆网络。使用Zamani等人研究中的方法,如果在模式的二元数据值分布不平衡的情况下,在一些期望的脉冲发放点之前没有足够数量的传入脉冲,这不符合PSD学习算法的特征,那么可能导致学习失败。根据一些生物学证据,Yu等人在编码时引入了相位的概念,使得神经元需要根据自己的相位进行调度脉冲的时间是在前半个时间窗口还是后半个时间窗口。这可以使不同模式的编码分布更加均匀,但还没有解决需要足够的传入脉冲的模式编码问题。受相位编码方法的启发,本发明提出了异或状态时间编码方案(XOR state temporal coding scheme),该方案也考虑了编码时的附加条件,即增加由单位U组成的位置窗口,如图3所示,可以看作是相位振荡的周期。本发明使用异或计算简化相位编码过程来分配脉冲发放时间点,并使用额外的辅助神经元来填补前面的时间点,以便在每个期望脉冲发放时间点之前有足够的传入脉冲。该实施例构建的使用该编码方法的模型具有计算效率高、收敛速度快、召回率高等优点。由于PSD是一种硬件友好的脑启发算法,本发明的脉冲BAM网络模型有机会应用于神经形态电路,并具有高性能和低功耗的优点,这对机器人应用来说将大有裨益。通过脉冲BAM网络模型将物体的视觉输入和相应的动作通过语义联系起来,建立一个简单的用于认知机器人的认知环境,以增强人机交互体验,搭载系统的机器人可以用于在人机交互过程中,将接收到的视觉和动作信息相互联系,增强识别人类意图的能力。
本发明在方法上采取创新,基于脉冲神经网络构建脉冲双向联想记忆网络模型,并提出适用于精准脉冲驱动算法的异或状态时间编码(XOR State Temporal Coding)方案。实现了相比传统BAM模型和不使用此编码方案的模型,具有更高的相对准确率和绝对准确率。此外,本发明提出的脉冲双向联想记忆网络有可能在神经形态电路上实现,带来高性能和低功耗的优点。本发明系统实现上,在视觉识别方面,基于深度显著性检测模型改进,用于物体的形状检测识别,名为DSSD(Deeply Salient Shape Detection);在手势识别方面,使用了基于脉冲神经网络的手势识别算法,相比一些其他替代方案,本发明的模型和系统更具生物可信性,并且处理了更加复杂的问题,本发明系统与现有系统各方面情况对照表如下所示:
表3本发明系统与现有系统各方面情况对照表
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种脉冲双向联想记忆的认知方法,其特征在于,包括:
获取用户指令,并判断所述用户指令是否为视觉指令;所述用户指令包括视觉指令和动作指令;
若所述用户指令为视觉指令,则对用户拍照,得到用户图像;
对所述用户图像进行处理,得到待认知的物体属性语义的脉冲序列;所述待认知的物体属性语义为所述用户图像中的显著性物体的物体属性语义;
将所述待认知的物体属性语义的脉冲序列输入到训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的动作语义的脉冲序列;所述训练和优化后的脉冲双向联想记忆网络模型是利用训练数据集和精准脉冲驱动学习算法对脉冲双向联想记忆网络模型进行训练和优化得到的;所述脉冲双向联想记忆网络模型包括均由多个神经元组成的第一层和第二层;所述神经元采用泄漏集成-发放模型作为神经元模型;所述训练数据集包括一一对应的物体属性语义的脉冲序列和动作语义的脉冲序列;所述物体属性语义包括以空格隔开的物体形状字符串和物体颜色字符串;所述动作语义为动作字符串;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述物体属性语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述物体属性语义的脉冲序列对应的动作语义的脉冲序列;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述动作语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述动作语义的脉冲序列对应的物体属性语义的脉冲序列;
根据所述待认知的动作语义的脉冲序列确定用户的意图;
若所述用户指令为动作指令,则捕获用户手势动作的视频序列;
对所述视频序列中的手势动作进行识别,得到待认知的动作语义的脉冲序列;
将所述待认知的动作语义的脉冲序列输入到所述训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的物体属性语义的脉冲序列;
根据所述待认知的物体属性语义的脉冲序列确定用户的意图。
2.根据权利要求1所述的脉冲双向联想记忆的认知方法,其特征在于,所述对所述用户图像进行处理,得到待认知的物体属性语义的脉冲序列,具体包括:
采用深度显著性形状检测模型对所述用户图像进行处理,得到所述用户图像中显著性物体的形状属性和颜色属性;所述形状属性和所述颜色属性均以字符串的形式表示;
输出以空格隔开的形状字符串和颜色字符串,得到待认知的物体属性语义;
对所述待认知的物体属性语义进行二进制编码,得到待认知的物体属性语义的二进制序列;
对所述待认知的物体属性语义的二进制序列进行异或状态时间编码,得到待认知的物体属性语义的脉冲序列。
3.根据权利要求1所述的脉冲双向联想记忆的认知方法,其特征在于,所述训练数据集的建立过程,具体包括:
建立物体属性语义与动作语义一一对应的映射表;
对所述映射表中的所述物体属性语义进行二进制编码,得到所述物体属性语义的二进制序列;
对所述物体属性语义的二进制序列进行异或状态时间编码,得到所述物体属性语义的脉冲序列;
对所述映射表中的所述动作语义进行二进制编码,得到所述动作语义的二进制序列;
对所述动作语义的二进制序列进行异或状态时间编码,得到所述动作语义的脉冲序列;
建立所述物体属性语义的脉冲序列与所述动作语义的脉冲序列一一对应的训练数据集。
4.根据权利要求2或3所述的脉冲双向联想记忆的认知方法,其特征在于,所述异或状态时间编码的编码过程,具体包括:
将二进制序列中的每个元素依次按序对应于每个所述神经元;
对每个所述神经元标记三元组状态其中,/>表示位置状态,/>时表示第i个神经元被分配在一个单位窗口的前部,/>时表示第i个神经元被分配在一个单位窗口的后部;/>表示激活状态,/>时表示第i个神经元处于激活状态,/>时表示第i个神经元处于不激活状态;/>表示发放时间状态,/>其中/>表示异或计算,Ne表示所述神经元的个数,/>时表示第i个神经元在所述单位窗口的一个时间窗口的有效前部内发放,/>时表示第i个神经元在所述单位窗口的一个时间窗口的有效后部内发放;
使用辅助神经元以设定分配时间间隔有序且重复的填充所述时间窗口的有效前部和所述时间窗口的有效后部之外的辅助时间窗口;
根据发放时间状态依次在所述有效前部或所述有效后部内以所述设定分配时间间隔分配发放时间,得到二进制序列对应的脉冲序列。
5.根据权利要求1所述的脉冲双向联想记忆的认知方法,其特征在于,所述对所述视频序列中的手势动作进行识别,得到待认知的动作语义的脉冲序列,具体包括:
采用基于脉冲神经网络的手势识别算法对所述视频序列中的手势动作进行识别,输出动作字符串,得到待认知的动作语义;
对所述待认知的动作语义进行二进制编码,得到待认知的动作语义的二进制序列;
对所述待认知的动作语义的二进制序列进行异或状态时间编码,得到待认知的动作语义的脉冲序列。
6.根据权利要求1所述的脉冲双向联想记忆的认知方法,其特征在于,所述根据所述待认知的动作语义的脉冲序列确定用户的意图,具体包括:
对所述待认知的动作语义的脉冲序列进行异或状态时间解码,得到待认知的动作语义的二进制序列;
对所述待认知的动作语义的二进制序列进行二进制解码,得到待认知的动作语义;
根据所述待认知的动作语义确定用户当前及之后的动作。
7.根据权利要求1所述的脉冲双向联想记忆的认知方法,其特征在于,在所述根据所述待认知的动作语义的脉冲序列确定用户的意图之后,还包括:
将所述意图以语音和动作的方式反馈给用户。
8.根据权利要求1所述的脉冲双向联想记忆的认知方法,其特征在于,所述根据所述待认知的物体属性语义的脉冲序列确定用户的意图,具体包括:
对所述待认知的物体属性语义的脉冲序列进行异或状态时间解码,得到待认知的物体属性语义的二进制序列;
对所述待认知的物体属性语义的二进制序列进行二进制解码,得到待认知的物体属性语义;
根据所述待认知的物体属性语义确定用户需要的物体。
9.根据权利要求1所述的脉冲双向联想记忆的认知方法,其特征在于,在所述根据所述待认知的物体属性语义的脉冲序列确定用户的意图之后,还包括:
将所述意图以语音的方式反馈给用户。
10.一种脉冲双向联想记忆的认知系统,其特征在于,包括:
用户指令获取模块,用于获取用户指令,并判断所述用户指令是否为视觉指令;所述用户指令包括视觉指令和动作指令;
拍照模块,用于若所述用户指令获取模块的输出结果为视觉指令,则对用户拍照,得到用户图像;
图像处理模块,用于对所述用户图像进行处理,得到待认知的物体属性语义的脉冲序列;所述待认知的物体属性语义为所述用户图像中的显著性物体的物体属性语义;
第一认知模块,用于将所述待认知的物体属性语义的脉冲序列输入到训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的动作语义的脉冲序列;所述训练和优化后的脉冲双向联想记忆网络模型是利用训练数据集和精准脉冲驱动学习算法对脉冲双向联想记忆网络模型进行训练和优化得到的;所述脉冲双向联想记忆网络模型包括均由多个神经元组成的第一层和第二层;所述神经元采用泄漏集成-发放模型作为神经元模型;所述训练数据集包括一一对应的物体属性语义的脉冲序列和动作语义的脉冲序列;所述物体属性语义包括以空格隔开的物体形状字符串和物体颜色字符串;所述动作语义为动作字符串;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述物体属性语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述物体属性语义的脉冲序列对应的动作语义的脉冲序列;当所述训练和优化后的脉冲双向联想记忆网络模型的输入为所述动作语义的脉冲序列时,所述训练和优化后的脉冲双向联想记忆网络模型的输出为与所述动作语义的脉冲序列对应的物体属性语义的脉冲序列;
第一用户意图确定模块,用于根据所述待认知的动作语义的脉冲序列确定用户的意图;
视频录制模块,用于若所述用户指令获取模块的输出结果为动作指令,则捕获用户手势动作的视频序列;
手势动作识别模块,用于对所述视频序列中的手势动作进行识别,得到待认知的动作语义的脉冲序列;
第二认知模块,用于将所述待认知的动作语义的脉冲序列输入到所述训练和优化后的脉冲双向联想记忆网络模型中,得到待认知的物体属性语义的脉冲序列;
第二用户意图确定模块,用于根据所述待认知的物体属性语义的脉冲序列确定用户的意图。
CN202010608109.9A 2020-06-29 2020-06-29 一种脉冲双向联想记忆的认知方法及系统 Active CN111753774B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010608109.9A CN111753774B (zh) 2020-06-29 2020-06-29 一种脉冲双向联想记忆的认知方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010608109.9A CN111753774B (zh) 2020-06-29 2020-06-29 一种脉冲双向联想记忆的认知方法及系统

Publications (2)

Publication Number Publication Date
CN111753774A CN111753774A (zh) 2020-10-09
CN111753774B true CN111753774B (zh) 2023-11-07

Family

ID=72678103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010608109.9A Active CN111753774B (zh) 2020-06-29 2020-06-29 一种脉冲双向联想记忆的认知方法及系统

Country Status (1)

Country Link
CN (1) CN111753774B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112529089A (zh) * 2020-12-18 2021-03-19 广东科学技术职业学院 基于仿生球周回路的气味识别方法、计算机装置及计算机可读存储介质
CN113361683B (zh) * 2021-05-18 2023-01-10 山东师范大学 一种生物仿脑存储方法及系统
EP4258018A1 (en) * 2022-04-09 2023-10-11 Tata Consultancy Services Limited Acoustic system and method based gesture detection using spiking neural networks
CN116343342B (zh) * 2023-05-30 2023-08-04 山东海量信息技术研究院 手语识别方法、系统、装置、电子设备及可读存储介质
CN116956289B (zh) * 2023-07-21 2024-04-09 上海则一供应链管理有限公司 动态调整潜在黑名单和黑名单的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10176382B1 (en) * 2015-10-01 2019-01-08 Hrl Laboratories, Llc Method and apparatus for sparse associative recognition and recall for visual media reasoning
CN111260054A (zh) * 2020-01-13 2020-06-09 清华大学 一种提高联想记忆脉冲神经网络准确度的学习方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10176382B1 (en) * 2015-10-01 2019-01-08 Hrl Laboratories, Llc Method and apparatus for sparse associative recognition and recall for visual media reasoning
CN111260054A (zh) * 2020-01-13 2020-06-09 清华大学 一种提高联想记忆脉冲神经网络准确度的学习方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
含有分布时滞和脉冲的杂交BAM神经网络的全局指数稳定性;王继禹;贾秀玲;;南阳师范学院学报(第06期);全文 *
噪音环境下语音识别理解系统的研究;江铭虎, 袁保宗, 林碧琴;铁道学报(第06期);全文 *

Also Published As

Publication number Publication date
CN111753774A (zh) 2020-10-09

Similar Documents

Publication Publication Date Title
CN111753774B (zh) 一种脉冲双向联想记忆的认知方法及系统
US20210406525A1 (en) Facial expression recognition method and apparatus, electronic device and storage medium
Neil et al. Learning to be efficient: Algorithms for training low-latency, low-compute deep spiking neural networks
CN111401174B (zh) 一种基于多模态信息融合的排球群体行为识别方法
WO2019174439A1 (zh) 图像识别方法、装置、终端和存储介质
Rudovic et al. Personalized estimation of engagement from videos using active learning with deep reinforcement learning
Rahman et al. An improved attention for visual question answering
CN107992844B (zh) 基于深度学习的人脸识别系统及方法
Rázuri et al. Automatic emotion recognition through facial expression analysis in merged images based on an artificial neural network
CN111612136B (zh) 一种神经形态视觉目标分类方法及系统
CN111401116B (zh) 基于增强卷积和空时lstm网络的双模态情感识别方法
Owayjan et al. Face detection with expression recognition using artificial neural networks
Xu et al. Face expression recognition based on convolutional neural network
CN109711356A (zh) 一种表情识别方法和系统
CN112069916A (zh) 人脸美丽预测方法、装置、系统及可读存储介质
CN115346096A (zh) 一种基于忆阻器所构建的脉冲神经网络模型
CN113095201B (zh) 基于人脸不同区域间自注意力和不确定性加权多任务学习的au程度估计模型建立方法
Guo et al. Facial expression recognition: a review
Li et al. Vision-action semantic associative learning based on spiking neural networks for cognitive robot
CN116080688B (zh) 一种类脑启发的智能驾驶视觉辅助方法、装置及存储介质
CN116151226B (zh) 一种基于机器学习的聋哑人手语纠错方法、设备和介质
Ahmed et al. Two person interaction recognition based on effective hybrid learning
Zhu [Retracted] A Face Recognition System Using ACO‐BPNN Model for Optimizing the Teaching Management System
Zhang et al. Classroom monitoring system based on facial expression recognition
Lin et al. An automatic image segmentation algorithm based on spiking neural network model

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant