基于距离的深度学习的制作方法

    技术2025-04-24  54


    本发明一般涉及关联存储器设备,尤其涉及关联存储器设备中的深度学习。


    背景技术:

    1、神经网络是通过考虑示例来学习完成任务的计算系统,通常没有任务特定的编程。典型的神经网络是按层组织的节点的互连组;每个层可以对其输入执行不同的转换。神经网络可以在数学上表示为向量,表示层中节点的激活,以及矩阵,表示相邻层的节点之间的互连的权重。网络功能是对向量和矩阵以及在向量和矩阵之间执行的一系列数学运算,以及对存储在向量和矩阵中的值执行的非线性运算。

    2、在整个本技术中,矩阵由粗体的大写字母表示,例如,a,以小写粗体的向量,例如,a,以及由斜体字体表示的向量和矩阵的条目,例如a和a。因此,矩阵a的i、j项由aij表示,矩阵a的行i表示为ai-,矩阵a的列j表示为a-j,而向量a的条目i由ai表示。

    3、循环神经网络(rnn)是当当前计算的输出取决于先前计算的值时对值序列的操作有用的特殊类型的神经网络。lstm(长短期记忆)和gru(门控循环单元)是rnn的示例。

    4、网络的输出特征向量(循环和非循环)是存储m个数值的向量h。在语言建模中,h可以是输出嵌入向量(表示词汇中的单词或短语的数字的向量(实数、整数、有限精度等)),并且在其他深度学习学科中,h可以是有问题的对象的特征。应用可能需要确定向量h表示的项。在语言建模中,h可以表示应用可能需要识别的v个词的词汇表中的一个词。可以意识到,v可能非常大,例如,对于英语,v约为170,000。

    5、图1中的rnn以两种表示示出:折叠100a和非折叠100b。非折叠表示100b在时间t-1、t和t+1中描述rnn随时间的变化。在折叠表示中,向量x是“一般”输入向量,并且在非折叠表示中,xt表示在时间t处的输入向量。可以意识到,输入向量xt表示由rnn处理的项序列中的项。向量xt可以通过“独热”向量表示v项的集合中的项k,即除了位置k中的单个“1”之外全部为零的向量。矩阵w、u和z是参数矩阵,使用特定尺寸创建以适合计划的操作。矩阵以随机值初始化并在rnn的操作期间、在训练阶段期间以及有时在推理阶段期间更新。

    6、在折叠表示中,向量h表示rnn的隐藏层。在非折叠表示中,ht是时间t处的隐藏层的值,根据等式1从时间t-1处的隐藏层的值计算:

    7、ht= f(u*x + w*ht-1) 等式1

    8、在折叠表示中,y表示输出向量。在非折叠表示中,yt是时间t处的输出向量,对于v项的集合中的每个项,具有在时间t处的项的类的概率。根据等式2,可以使用非线性函数(例如softmax)计算概率:

    9、yt= softmax(z*ht)  等式2

    10、其中z是尺寸调整矩阵,旨在将ht的大小调整为yt的大小。

    11、rnn用于处理项的序列的许多应用,例如:语言建模(处理单词序列);机器翻译;语音识别;对话;视频注释(处理图片序列);手写识别(处理标志序列);基于图像的序列识别等。

    12、例如,语言建模计算特定序列中多个单词出现的概率。m个单词的序列由{w1,…,wm}给出。序列的概率由p(w1,…,wm)定义,并且以序列中所有先前单词为条件的单词wi的概率可以通过n个先前单词的窗口来近似,如等式3中定义的:

    13、

    14、等式3

    15、可以通过凭经验计算单词的每个组合在文本的语料库中出现的次数来估计单词的序列的概率。对于n个单词,该组合称为n元语言模型(n-gram),对于两个单词,它被称为二元语言模型(bi-gram)。计算n元语言模型出现次数的存储器要求随着窗口大小n呈指数增长,因此在不耗尽存储器的情况下对大型窗口建模极为困难。

    16、rnn可以用于模拟单词序列的可能性,而不必明确地存储每个序列的概率。用于语言建模的rnn计算的复杂度与建模语言的词汇表的大小v成比例。它需要大量的矩阵向量乘法和softmax操作,这些都是繁重的计算。


    技术实现思路

    1、根据本发明的优选实施例,提供了一种用于神经网络的方法。该方法包括并行计算神经网络的输出特征向量与多个有限(qualified)特征向量中的每一个有限特征向量之间的距离向量。输出特征向量描述未分类项,并且多个有限特征向量中的每一个有限特征向量描述分类项集合中的一个分类项。该方法还包括并行计算针对每个距离向量的相似性分数;并且创建多个计算的相似性分数的相似性分数向量。

    2、此外,根据本发明的优选实施例,该方法还包括通过将输入向量与输入嵌入矩阵的多个列并行相乘来减小神经网络的输入向量的大小。

    3、此外,根据本发明的优选实施例,该方法还包括在相似性分数向量的所有元素上并行激活非线性函数,以提供概率分布向量。

    4、此外,根据本发明的优选实施例,非线性函数是softmax函数。

    5、另外,根据本发明的优选实施例,该方法还包括在概率分布向量中找到极值以找到与未分类项最相似的分类项,其计算复杂度为o(1)。

    6、此外,根据本发明的优选实施例,该方法还包括在相似性分数向量上激活k最近邻(knn)函数,以提供与未分类项最相似的k个分类项。

    7、根据本发明的优选实施例,提供了一种用于神经网络的系统。该系统包括关联存储器阵列、输入编排器、隐藏层计算机和输出处理器。关联存储器阵列包括行和列。输入编排器存储关于关联存储器阵列中的未分类项的信息,操纵信息并创建对神经网络的输入。隐藏层计算机接收输入并在神经网络中运行输入以计算隐藏层向量。输出处理器将隐藏层向量变换为输出特征向量,并且在关联存储器阵列内并行计算输出特征向量与多个有限特征向量中的每一个有限特征向量之间的距离向量,每个有限特征向量描述一个分类项。输出处理器还在关联存储器阵列内并行计算针对每个距离向量的相似性分数。

    8、此外,根据本发明的优选实施例,输入编排器减小了信息的尺寸。

    9、此外,根据本发明的优选实施例,输出处理器还包括线性模块和非线性模块。

    10、此外,根据本发明的优选实施例,非线性模块实现softmax函数以根据相似性分数的向量创建概率分布向量。

    11、另外,根据本发明的优选实施例,该系统还包括极值查找器,以在概率分布向量中找到极值。

    12、此外,根据本发明的优选实施例,非线性模块是k最近邻模块,其提供与未分类项最相似的k个分类项。

    13、此外,根据本发明的优选实施例,线性模块是用于生成相似性分数的距离变换器。

    14、另外,根据本发明的优选实施例,距离变换器还包括向量调整器和距离计算器。

    15、此外,根据本发明的优选实施例,距离变换器将调整矩阵的列存储在存储器阵列的第一计算列中,并将隐藏层向量分配给每个计算列,并且向量调整器计算第一计算列中的输出特征向量。

    16、此外,根据本发明的优选实施例,距离变换器初始地将输出嵌入矩阵的列存储在关联存储器阵列的第二计算列中,并将输出特征向量分配给所有第二计算列,并且距离计算器计算第二计算列内的距离向量。

    17、根据本发明的优选实施例,提供了一种用于将由特征的未分类向量描述的未分类项与多个分类项进行比较的方法,每个分类项由特征的分类的向量描述。该方法包括并行计算未分类向量与每个分类向量之间的距离向量;并且并行计算针对每个距离向量的距离标量,每个距离标量提供未分类项与多个分类项中的一个之间的相似性分数,从而创建包括多个距离标量的相似性分数向量。

    18、另外,根据本发明的优选实施例,该方法还包括在相似性分数向量上激活非线性函数以创建概率分布向量。

    19、此外,根据本发明的优选实施例,非线性函数是softmax函数。

    20、此外,根据本发明的优选实施例,该方法还包括在概率分布向量中找到极值以找到与未分类项最相似的分类项。

    21、此外,根据本发明的优选实施例,该方法还包括在相似性分数向量上激活k最近邻(knn)函数,以提供与未分类项最相似的k个分类项。


    技术特征:

    1.一种用于循环神经网络的方法,所述方法包括:

    2.如权利要求1所述的方法,还包括通过并行将所述循环神经网络的输入向量乘以输入嵌入矩阵的多个列来减小所述输入向量的大小。

    3.如权利要求1所述的方法,还包括并行激活所述关联存储器设备的至少两行,以在所述相似性分数向量的所有元素上并行激活非线性函数,以提供概率分布向量。

    4.如权利要求3所述的方法,其中,所述非线性函数是softmax函数。

    5.如权利要求3所述的方法,还包括找到所述概率分布向量中的极值以找到与所述未分类项最相似的分类项,其计算复杂度为o(1)。

    6.如权利要求1所述的方法,还包括并行激活所述关联存储器设备的至少两行以在所述相似性分数向量上激活k-最近邻(knn)函数,以提供与所述未分类项最相似的k个分类项。

    7.一种用于循环神经网络的系统,所述系统包括:

    8.如权利要求7所述的系统,并且还包括所述输入编排器,其用于减小所述信息的尺寸。

    9.如权利要求7所述的系统,其中,所述输出处理器还包括线性模块和非线性模块。

    10.如权利要求8所述的系统,其中,所述非线性模块实现softmax函数以根据所述相似性分数的向量来创建概率分布向量。

    11.如权利要求10所述的系统,还包括极值查找器,其用于在所述概率分布向量中找到极值。

    12.如权利要求8所述的系统,其中,所述非线性模块是k-最近邻模块,以提供与所述未分类项最相似的k个分类项。

    13.如权利要求8所述的系统,其中,所述线性模块是距离变换器,其用于产生所述相似性分数。

    14.如权利要求13所述的系统,其中,所述距离变换器包括向量调整器和距离计算器。

    15.如权利要求14所述的系统,所述距离变换器用于将调整矩阵的列存储在所述关联存储器设备的第一计算列中,并且用于将所述隐藏层向量分配给每个计算列,并且所述向量调整器用于在所述第一计算列内计算所述输出特征向量。

    16.如权利要求15所述的系统,所述距离变换器用于最初将输出嵌入矩阵的列存储在所述关联存储器设备的第二计算列中,并且用于将所述输出特征向量分配给所有所述第二计算列,并且所述距离计算器用于在所述第二计算列内计算距离向量。

    17.一种用于将由特征的未分类向量描述的未分类语言项与多个分类语言项进行比较的方法,每个分类语言项由特征的分类向量描述,所述方法包括:

    18.如权利要求17所述的方法,其中,所述非线性函数是softmax函数。

    19.如权利要求17所述的方法,并且还包括找到所述概率分布向量中的极值以找到与所述未分类语言项最相似的分类语言项。

    20.如权利要求17所述的方法,并且还包括在所述相似性分数向量上激活k-最近邻(knn)函数,以提供与所述未分类语言项最相似的k个分类语言项。


    技术总结
    用于神经网络的方法包括并行计算输出特征向量与多个有限特征向量中的每一个有限特征向量之间的距离向量,所述输出特征向量描述未分类项,每个有限特征向量描述分类项集合中的一个分类项。该方法包括并行计算针对每个距离向量的相似性分数并创建多个计算的相似性分数的相似性分数向量。用于神经网络的系统包括关联存储器阵列、输入编排器、隐藏层计算机和输出处理器。输入编排器操纵描述存储在存储器阵列中的未分类项的信息。隐藏层计算机计算隐藏层向量。输出处理器计算输出特征向量并并行计算输出特征向量与多个有限特征向量中的每一个有限特征向量之间的距离向量,并并行计算针对每个距离向量的相似性分数。

    技术研发人员:E·埃雷兹
    受保护的技术使用者:GSI 科技公司
    技术研发日:
    技术公布日:2024/10/24
    转载请注明原文地址:https://symbian.8miu.com/read-29859.html

    最新回复(0)