存储推理程序的计算机可读记录介质以及推理方法与流程

文档序号:29963597发布日期:2022-05-11 09:44阅读:103来源:国知局
存储推理程序的计算机可读记录介质以及推理方法与流程

1.本文讨论的实施方式涉及存储推理程序的计算机可读记录介质以及推理方法。


背景技术:

2.如今,神经网络(nn)被积极地用于图像识别和其他领域。例如,通过使用深度学习(dl)来显著提高图像识别的准确性。
3.作为相关技术,例如,存在一种用于面部识别的技术,在该技术中使用神经网络将面部的图像变换成高维向量,并且将该高维向量距新的面部的距离与经训练面部的参考向量集合进行比较。
4.另外,作为相关技术,存在作为专注于大脑中的信息表达的非冯诺依曼计算技术之一的超维计算(hyperdimensional computing,hdc)。
5.相关技术的示例包括如下:日本公开特许公报第2019-165431号。
6.相关技术的示例还包括如下:kanerva,p,“hyperdimensional computing:an introduction to computing in distributed representation with high-dimensional random vectors”,cognitive computation,卷1,第2期,第139至159页,2009。


技术实现要素:

7.[技术问题]
[0008]
由于通过学习获得的知识被包括在nn中,所以nn存在所获得的知识不清楚的问题。在当今的计算中,可以使用dl进行分析和推理。然而,为了实现更接近人类智能的智能计算,重要的是利用知识,并且阐明并存储通过nn获得的知识是对知识进行利用的前提。
[0009]
在一方面,本实施方式的目的是阐明并存储通过nn获得的知识。
[0010]
[问题的解决方案]
[0011]
根据实施方式的一方面,提供了一种非暂态计算机可读记录介质,其存储用于使计算机执行以下处理的推理程序。在示例中,所述处理包括:通过将数据片(a piece of data)输入至神经网络来提取该数据片的一个或更多个特征;基于所提取的一个或更多个特征生成超维向量;以及将所生成的超维向量存储在存储单元中,其中超维向量与数据片的标签相关联。
[0012]
[发明的有益效果]
[0013]
在该方面,本公开内容可以阐明并存储通过nn获得的知识。
附图说明
[0014]
图1是用于说明由根据实施方式的推理设备执行的推理的图;
[0015]
图2a和图2b示出了用于说明hv的图;
[0016]
图3示出了通过相加获得的集合的表示示例;
[0017]
图4是用于说明hdc中的学习和推理的图;
[0018]
图5是用于说明根据实施方式的推理设备的多模态能力的图;
[0019]
图6是用于说明根据使用属性hv的实施方式的推理设备的多模态能力的图;
[0020]
图7示出了根据实施方式的推理设备的多模态能力的示例;
[0021]
图8示出了根据实施方式的推理设备的功能配置;
[0022]
图9a示出了短期学习;
[0023]
图9b示出了中期学习;
[0024]
图9c示出了长期学习;
[0025]
图10是示出由推理设备执行的学习阶段中的处理的流程的流程图;
[0026]
图11是示出由推理设备执行的推理阶段中的处理的流程的流程图;
[0027]
图12示出了用于实现智能计算的观察-判断-决策-执行(observe-orient-decide-act,ooda)循环;以及
[0028]
图13示出了根据实施方式的执行推理程序的计算机的硬件配置。
具体实施方式
[0029]
在下文中,参照附图详细描述本技术中公开的推理程序和推理方法的实施方式。该实施方式不限制所公开的技术。
[0030]
[实施方式]
[0031]
首先,将描述由根据实施方式的推理设备执行的推理。图1是用于说明由根据实施方式的推理设备执行的推理的图。如图1所示,根据实施方式的推理设备通过在学习阶段将训练数据输入至神经网络(nn 11)来提取训练数据的特征。然后,根据实施方式的推理设备基于所提取的特征生成超维向量(hyperdimensional vector,hv),并且将所生成的hv作为知识存储在hv存储器15中,其中,所生成的hv与训练数据的标签相关。hv存储器15是内容可寻址存储器(cam)并且从hv引出(evoke)标签。注意,训练数据的特征可以被称为特征量(feature quantity)、特征量(feature amount)等。
[0032]
在推理阶段,根据实施方式的推理设备通过将查询输入至nn 11来提取查询的特征。根据实施方式的推理设备基于所提取的特征生成hv、通过使用hv存储器15来识别从所生成的hv引出的标签并且输出所识别的标签作为推理结果。
[0033]
图2(即,图2a和图2b)是用于说明hv的图。hv是超维计算(hdc)中使用的数据表示。在hv中,通过10000维度或更大维度的超维向量以分布式方式表示数据。在hv中,各种类型的数据由具有相同位长的向量表示。
[0034]
如图2a所示,在正常数据表示中,逐片地(piece-by-piece basis)统一表示诸如a、b、c的多个数据片。相比之下,如图2b所示,在超维向量中,以分布式方式表示诸如a、b、c的多个数据片。在hdc中,能够通过简单的运算例如相加和相乘来操纵数据。同样在hdc中,能够以相加或相乘的方式来表示多个数据片之间的关系。
[0035]
图3示出了通过相加获得的集合的表示示例。在图3中,hv编码器2分别根据猫#1的图像、猫#2的图像和猫#3的图像生成猫#1的hv、猫#2的hv和猫#3的hv。hv的各个元素为“+1”或
“‑
1”。猫#1至猫#3每个均由10000个维度的hv表示。
[0036]
如图3所示,通过将猫#1的hv、猫#2的hv和猫#3的hv相加而获得的hv表示包括猫#1、猫#2和猫#3的集合,例如“猫群(cats)”。hv的相加是逐个元素地执行的相加。当相加结果
为正时,用“+1”代替相加结果。当相加结果为负时,用
“‑
1”代替相加结果。当相加结果为“0”时,根据预定规则用“+1”或
“‑
1”代替相加结果。在hdc中,能够保持“猫”和“猫”彼此远离的状态以及每只“猫”和“猫群”彼此靠近的状态。在hdc,“猫群”能够被作为猫#1至猫#3的整合概念来处理。
[0037]
图4是用于说明hdc中的学习和推理的图。如图4所示,在学习阶段,hv编码器2分别根据猫#1的图像、猫#2的图像和猫#3的图像生成猫#1的hv、猫#2的hv和猫#3的hv。将猫#1的hv、猫#2的hv和猫#3的hv相加以生成“猫群”的hv并且将所生成的hv存储在hv存储器15中,其中所生成的hv与“猫群”相关。
[0038]
在推理阶段,根据另一只猫的图像生成hv,通过最近邻匹配从hv存储器15中检索“猫群”的hv作为与所生成的hv相匹配的hv,并且输出“猫”作为推理结果。此处,最近邻匹配就是通过利用hv之间的点积来计算hv之间的匹配度并输出具有最高匹配度的标签。当两个hv为hi、hj时,在hi和hj匹配的情况下,点积p=hi·hj
为d(hv的维度),而在hi和hj彼此正交的情况下,点积p=hi·hj
为-d。由于hv存储器15是内容可寻址存储器,因此以高速执行最近邻匹配。
[0039]
在图1中,基于由nn 11而不是hv编码器2提取的特征生成hv。在图1中,由nn 11执行从图像中提取特征,即图案化处理(patternlike processing),并且由hdc执行将hv存储在hv存储器15中并通过使用hv存储器15进行关联,即符号处理(symbolic processing)。以这种方式,当利用nn 11和hdc的有利特性时,根据实施方式的推理设备可以高效地执行训练和推理。
[0040]
尽管图4示出了处理单个类型的数据的情况,但是根据实施方式的推理设备能够处理多种类型的数据。例如,根据实施方式的推理设备具有多模态能力。图5是用于说明根据实施方式的推理设备的多模态能力的图。在图5中,根据实施方式的推理设备对图像数据、声音数据和文本数据进行处理。
[0041]
如图5所示,根据实施方式的推理设备通过使用图像nn 11a从图像数据中提取图像特征、通过使用声音nn 11b从声音数据中提取声音特征以及通过使用文本nn 11c从文本数据中提取文本特征。根据实施方式的推理设备分别基于图像特征、声音特征和文本特征生成图像hv、声音hv和文本hv。根据实施方式的推理设备将图像hv、声音hv和文本hv相加以对这些hv进行整合,并且将所整合的hv存储在hv存储器15中。
[0042]
以这种方式,根据实施方式的推理设备可以通过在hdc中执行加法来容易地整合多种类型的知识。尽管图5示出了处理三种类型的数据的情况,但是根据实施方式的推理设备可以处理更多种类型的数据。
[0043]
尽管在图5中将图像hv、声音hv和文本hv相加以进行整合,但是根据实施方式的推理设备可以将图像hv、声音hv和文本hv分别与图像属性hv、声音属性hv和文本属性hv相乘并且将结果相加。hv的相乘是逐个hv元素地执行的相乘。图像属性hv、声音属性hv、文本属性hv的维度与图像hv、声音hv、文本hv的维度相同。图6是用于说明根据使用属性hv的实施方式的推理设备的多模态能力的图。
[0044]
如图6所示,根据实施方式的推理设备执行图像hv与图像属性hv之间的相乘、声音hv与声音属性hv之间的相乘以及文本hv与文本属性hv之间的相乘。根据实施方式的推理设备将通过将三个相乘结果相加而获得的整合hv存储在hv存储器15中。
[0045]
根据实施方式的推理设备在推理阶段查阅(refer to)hv存储器15。根据实施方式的推理设备对hv存储器15进行操纵。例如,根据实施方式的推理设备将hv存储器15中两个相似的hv相加并进行整合以将两个hv整合成单个概念。
[0046]
图7示出了根据实施方式的推理设备的多模态能力的示例。如图7所示,根据实施方式的推理设备根据猫的图像生成猫图像hv、根据猫的声音生成猫声音hv并且根据猫的文本生成猫文本hv。根据实施方式的推理设备将猫图像hv与图像属性hv相乘、将猫声音hv与声音属性hv相乘并且将猫文本hv与文本属性hv相乘。根据实施方式的推理设备能够将通过将猫图像hv与图像属性hv相乘而获得的hv和通过将猫声音hv与声音属性hv相乘而获得的hv相加来生成包括图像和声音的猫概念的hv。
[0047]
将hv与属性hv相乘的运算是将hv映射到子空间。例如,将猫图像hv与图像属性hv相乘是将猫图像hv映射到图像属性子空间,并且将猫声音hv与声音属性hv相乘是将猫声音hv映射到声音属性子空间。当根据实施方式的推理设备如以上所描述的将hv与属性hv相乘以将hv映射到子空间时,能够将整合前的各个hv与整合后的整合hv中的其他hv分开。
[0048]
接下来,将描述根据实施方式的推理设备的功能配置。图8示出了根据实施方式的推理设备的功能配置。如图8所示,根据实施方式的推理设备1包括图像nn 11a、声音nn 11b、文本nn 11c、图像hv生成单元12a、声音hv生成单元12b、文本hv生成单元12c、整合单元13、存储单元14以及hv存储器15。根据实施方式的推理设备1还包括关联单元16、操纵单元17、图像学习单元18a、声音学习单元18b以及文本学习单元18c。
[0049]
图像nn 11a接收图像数据并输出图像的特征。图像的特征是例如图像nn 11a的输出层的节点的输出值。图像nn 11a在学习阶段接收训练数据的图像数据并且在推理阶段接收未知数据的图像数据。
[0050]
声音nn 11b接收声音数据并输出声音的特征。声音的特征是例如声音nn 11b的输出层的节点的输出值。声音nn 11b在学习阶段接收训练数据的声音数据并且在推理阶段接收未知数据的声音数据。
[0051]
文本nn 11c接收文本数据并输出文本的特征。文本的特征是例如文本nn 11c的输出层的节点的输出值。文本nn 11c在学习阶段接收训练数据的文本数据并且在推理阶段接收未知数据的文本数据。
[0052]
为了实现图像nn 11a、声音nn 11b和文本nn 11c,例如使用深度学习(dl)专用的处理器和图形处理单元(gpu)。
[0053]
图像hv生成单元12a基于图像的特征生成图像hv。例如,当图像的特征向量为x且x的维度为n时,图像hv生成单元12a以x为中心。例如,图像hv生成单元12a通过使用下式(1)来计算x的平均值向量,并且如式(2)所示从x中减去x的平均值向量。在式(1)中,d
base
是x的集合,|d
base
|是x的集合的大小。
[0054][0055][0056]
图像hv生成单元12a将x归一化。例如,如下式(3)所示,图像hv生成单元12a将x除以x的l2范数。图像hv生成单元12a不一定执行定中心和归一化。
[0057][0058]
图像hv生成单元12a将x的每个元素量化成q个步长以生成q={q1,q2,...,qn}。图像hv生成单元12a可以执行线性量化或对数量化。
[0059]
图像hv生成单元12a生成以下式(4)表示的基础(base)hv(li)。在式(4)中,d是hv的维数,例如10000。图像hv生成单元12a通过在随机位置处翻转d/q个位来随机地生成l1并依次生成l2至lq。li和相邻的li彼此靠近,并且l1和lq彼此正交。
[0060]
l={l1,l2,

,lq},li∈{-1,+1}d…
(4)
[0061]
图像hv生成单元12a生成以下式(5)表示的通道(channel)hv(ci)。图像hv生成单元12a随机地生成ci,使得所有ci基本正交。
[0062]
c={c1,c2,

,cn},ci∈{-1,+1}d…
(5)
[0063]
图像hv生成单元12a通过使用下式(6)来计算图像hv。在式(6)中,“·”是点积。
[0064][0065]
声音hv生成单元12b基于声音的特征生成声音hv。声音hv生成单元12b以与图像hv生成单元12a的方式类似的方式通过使用基础hv和通道hv来计算声音hv,其中声音的特征向量被设置为x。
[0066]
文本hv生成单元12c基于文本的特征生成文本hv。文本hv生成单元12c以与图像hv生成单元12a的方式类似的方式通过使用基础hv和通道hv来计算文本hv,其中文本的特征向量被设置为x。
[0067]
整合单元13通过将图像hv与图像属性hv相乘来生成图像属性部分hv(其是图像属性空间向量的一个示例)、通过将语义/声音hv与语义/声音属性hv相乘来生成语义/声音属性空间hv(其是语义/声音属性空间向量的一个示例)并且通过将文本hv与文本属性hv相乘来生成文本属性部分hv(其是文本属性空间向量的一个示例)。整合单元13通过将图像属性部分hv、语义/声音属性空间hv和文本属性部分hv相加来生成整合hv。整合单元13在学习阶段将整合hv传递给存储单元14并且在推理阶段将整合hv传递给关联单元16。
[0068]
在学习阶段,存储单元14将由整合单元13生成的整合hv存储在hv存储器15中,其中整合hv与标签相关联。
[0069]
hv存储器15以整合hv与标签相关联地存储整合hv。例如,hv存储器15在与标签相对应的地址处存储整合hv。可替选地,hv存储器15将标签和整合hv相互关联并且存储标签和整合hv。hv存储器15是内容可寻址存储器。可以通过使用电阻随机存取存储器(reram)、忆阻器等来增加hv存储器15的速度和密度。
[0070]
在推理阶段,关联单元16根据由整合单元13生成的整合hv输出通过hv存储器15关联的标签作为推理结果。关联单元16高速地执行整合hv与存储在hv存储器15中的hv之间的匹配。
[0071]
操纵单元17对hv存储器15进行操纵。例如,对于存储在hv存储器15中的知识,操纵单元17对相似的知识片进行整合并删除不必要的知识片。此外,对于存储在hv存储器15中的知识,操纵单元17将频繁使用的知识片与标签一起移动到知识被快速搜索到的位置。在具有分层结构的存储器用作hv存储器15的情况下,操纵单元17将使用频率低的知识片释放
(discharge)到低速存储器。
[0072]
图像学习单元18a对图像nn 11a进行更新。例如,当图像数据的趋势改变时,图像学习单元18a重新训练图像nn 11a并执行例如参数的更新。声音学习单元18b对声音nn 11b进行更新。例如,当声音数据的趋势改变时,声音学习单元18b重新训练声音nn 11b并执行例如参数的更新。文本学习单元18c对文本nn 11c进行更新。例如,当文本数据的趋势改变时,文本学习单元18c重新训练文本nn 11c并执行例如参数的更新。
[0073]
接下来,参照图9a至图9c描述由推理设备1执行的三种类型的学习。推理设备1具有短期学习、中期学习和长期学习的功能。图9a示出了短期学习。短期学习是将整合hv存储在hv存储器15中。以上描述中的学习阶段对应于短期学习。由于短期学习仅执行特征的提取、简单的向量运算以及至hv存储器15的存储,因此推理设备1可以高速地执行短期学习。
[0074]
图9b示出了中期学习。在中期学习中,推理设备1对知识进行整合并且删除不必要的hv以解决hv存储器15的短缺。由操纵单元17执行的操纵对应于中期学习。推理设备1在数据输入不工作(nonoperating)时执行中期学习。
[0075]
图9c示出了长期学习。通过使用预先假定的各种数据对用于信息分析的图像nn 11a、声音nn 11b和文本nn 11c进行训练。在正常操作期间,推理设备1不对图像nn 11a、声音nn 11b或文本nn 11c的参数进行更新。然而,当例如输入数据的趋势改变时,作为长期学习,推理设备1对图像nn 11a、声音nn 11b和文本nn 11c进行重新训练。由图像学习单元18a执行的对图像nn 11a的再训练、由声音学习单元18b执行的对声音nn 11b的再训练、以及由文本学习单元18c执行的对文本nn 11c的再训练对应于长期学习。
[0076]
接下来,参照图10和图11描述由推理设备1执行的处理的流程。图10是示出由推理设备1执行的学习阶段中的处理的流程的流程图。如图10所示,推理设备1通过使用nn 11来提取训练数据的特征量(步骤s1)。例如,推理设备1通过使用图像nn 11a来提取图像特征、通过使用声音nn 11b来提取声音特征以及通过使用文本nn 11c来提取文本特征。
[0077]
推理设备1基于所提取的特征量生成hv(步骤s2)。例如,推理设备1基于图像特征生成图像hv、基于声音特征生成声音hv、基于文本特征生成文本hv,并且基于图像hv、声音hv和文本hv生成整合hv。
[0078]
推理设备1将所生成的hv存储在hv存储器15中并且其中所生成的hv与训练数据的标签相关联(步骤s3)。
[0079]
如以上所描述的,推理设备1能够通过基于训练数据的特征量生成hv并且将所生成的hv存储在hv存储器15中来存储知识。
[0080]
图11是示出由推理设备1执行的推理阶段中的处理的流程的流程图。如图11所示,推理设备1通过使用nn 11来提取未知数据的特征量(步骤s11)。例如,推理设备1通过使用图像nn 11a来提取图像特征、通过使用声音nn 11b来提取声音特征以及通过使用文本nn 11c来提取文本特征。
[0081]
推理设备1基于所提取的特征量生成hv(步骤s12)。例如,推理设备1基于图像特征生成图像hv、基于声音特征生成声音hv、基于文本特征生成文本hv,并且基于图像hv、声音hv和文本hv生成整合hv。
[0082]
推理设备1通过使用所生成的hv在hv存储器15中进行搜索(步骤s13)并识别与所生成的hv相关联的标签。
[0083]
如以上所描述的,推理设备1能够通过基于未知数据的特征量生成hv并且通过使用所生成的hv在hv存储器15中进行搜索来识别未知数据的标签。
[0084]
接下来,将描述知识在智能计算中的作用。图12示出了用于实现智能计算的观察-判断-决策-行动(ooda)循环。ooda是与决策制定和行动相关的理论。ooda循环包括观察阶段、判断阶段、决策阶段和行动阶段。在观察阶段,收集信息。在判断阶段,对收集到的信息进行分析并将其转化为知识。在决策阶段,基于知识生成假设、以模拟的方式执行重复生成假设并且然后基于知识做出决策。在行动阶段,基于决策采取行动。针对行动结果,再次收集信息,并重复ooda循环。
[0085]
通过使计算机基于分析得到知识、存储知识、基于知识生成假设并做出决策来实现智能计算。因此,知识的生成、存储和使用在实现智能计算方面发挥着重要作用。
[0086]
如以上所描述的,根据实施方式,推理设备1通过使用nn 11来提取训练数据的特征量。推理设备1基于所提取的特征量生成训练数据的hv。推理设备1将所生成的hv作为知识存储在hv存储器15中,其中所生成的hv与训练数据的标签相关联。因此,推理设备1可以阐明并存储通过nn 11获得的知识。
[0087]
同样根据实施方式,推理设备1通过使用nn 11来提取未知数据的特征量。推理设备1基于所提取的特征量生成未知数据的hv。推理设备1通过使用所生成的hv在hv存储器15中进行搜索,并且识别未知数据的标签。因此,推理设备1可以高速地识别未知数据的标签。
[0088]
根据实施方式,通过利用图像nn 11a接收图像数据来提取图像特征、通过利用声音nn 11b接收声音数据来提取声音特征并且通过利用文本nn 11c接收文本数据来提取文本特征。图像hv生成单元12a基于图像特征生成图像hv,声音hv生成单元12b基于声音特征生成声音hv,并且文本hv生成单元12c基于文本特征生成文本hv。整合单元13基于图像hv、声音hv和文本hv生成整合hv。因此,推理设备1可以基于多模态数据执行推理。
[0089]
根据实施方式,整合单元13将图像hv与图像属性hv相乘、将声音hv与声音属性hv相乘并且将文本hv与文本属性hv相乘。将三个相乘结果相加以生成整合hv。因此,推理设备1能够将整合之前的各个hv与整合hv中的其他hv分开。
[0090]
根据实施方式,对于存储在hv存储器15中的知识,操纵单元17对相似的知识片进行整合并删除不必要的知识片。因此,推理设备1可以改善存储在hv存储器15中的知识。此外,对于存储在hv存储器15中的知识,操纵单元17将频繁使用的知识片与标签一起移动至知识被及早搜索的位置。因此,推理设备1可以提高推理的速度。
[0091]
尽管已经根据实施方式描述了推理设备1,但是可以通过用软件实现推理设备1的配置来获得具有类似功能的推理程序。将描述执行推理程序的计算机。
[0092]
图13示出了根据实施方式的执行推理程序的计算机的硬件配置。如图13所示,计算机50包括主存储器51、中央处理单元(cpu)52、局域网(lan)接口53以及硬盘驱动器(hdd)54。计算机50还包括超级输入/输出(io)55、数字视频接口(dvi)56和光盘驱动器(odd)57。
[0093]
主存储器51是存储程序、程序的中间执行结果等的存储器。cpu 52是从主存储器51读取程序并且执行所述程序的中央处理单元。cpu 52包括包含存储器控制器的芯片组。
[0094]
lan接口53是用于经由lan将计算机50耦接至另一计算机的接口。hdd 54是存储程序和数据的磁盘装置,并且超级io 55是用于耦接输入装置例如鼠标和键盘的接口。dvi 56是用于耦接液晶显示装置的接口,并且odd 57是用于从数字多功能盘(dvd)读取或向其写
入的装置。
[0095]
lan接口53通过外围组件互连高速(pcie)耦接至cpu 52。hdd54和odd 57通过串行高级技术附件(sata)耦接至cpu 52。超级io55通过低引脚数(lpc)耦接至cpu 52。
[0096]
将要由计算机50执行的推理程序存储在作为计算机50可读的记录介质的示例的dvd中,通过odd 57从dvd读取该推理程序并将其安装在计算机50中。可替选地,将推理程序存储在通过lan接口53耦接的另一计算机系统的数据库等中、从数据库等中读取该推理程序并将其安装在计算机50中。所安装的推理程序被存储在hdd 54中、加载到主存储器51并由cpu 52执行。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1