技术领域
[0001] 本申请涉及人工智能以及图片领域,具体涉及一种分类方法。
相关背景技术
[0002] 第五代移动通信技术(英语:5th generation mobile networks或5th generation wireless systems、5th-Generation,简称5G或5G技术)是最新一代蜂窝移动通信技术,也是继4G(LTE-A、WiMax)、3G(UMTS、LTE)和2G(GSM)系统之后的延伸。5G的性能目标是高数据速率、减少延迟、节省能源、降低成本、提高系统容量和大规模设备连接。
[0003] 人工智能技术通过最近几年的发展,已经成为了5G手机的标配,但是现有的人工智能对图片分类较慢,并且芯片的成本较高,影响了用户体验度。
具体实施方式
[0021] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0022] 在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0023] 下面结合本申请实施例中的附图对本申请实施例进行描述。
[0024] 本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,表示前后关联对象是一种“或”的关系。
[0025] 本申请实施例中出现的“多个”是指两个或两个以上。本申请实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对设备个数的特别限定,不能构成对本申请实施例的任何限制。本申请实施例中出现的“连接”是指直接连接或者间接连接等各种连接方式,以实现设备间的通信,本申请实施例对此不做任何限定。
[0026] 本申请中的“||”表示绝对值。
[0027] 人工智能芯片计算的一般为普通数据,对于一个普通数据,其占用32比特或64比特,即无论该普通数据的数值大小,其均通过32比特或64比特来表示,对于人工智能来说,其元素值的数量多,尤其对于图片推荐,图片的数量较多时,需要多次运算,这样元素值的数量更多,若采用普通数据,会极大的占用存储空间,增加计算量,因此本申请采用稀疏数据来进行计算,对于稀疏数据,其一般会不存储零数据,例如通过一个位图来表示零数据的位置,这样能够减少数据的比特数量,较少的比特数量会降低存储空间和存储成本,也降低了计算成本,较少的比特数量会降低存储空间和存储成本,也降低了计算成本。
[0028] 参阅图1,图1提供了一种人工智能芯片结构示意图,如图1所示,该人工智能芯片结构包括:主处理电路、2个多路选择开关、6组从处理电路,每组从处理电路包括:多个从处理电路以及1个转发电路,所述多路选择开关为4P6T;主处理电路的6个端口与分别与6组从处理电路的每个转发电路连接,每个转发电路分别与同组从处理电路的多个从处理电路的广播端口连接;主处理电路的另外8个端口与分别与2个4P6T开关的4个P端口连接,2个4P6T开关的6个T端口分别连接每组从处理电路中相邻的第一从处理电路以及第二从处理电路;从处理电路还通过两个转发端口与同组从处理电路内的相邻的其他从处理电路连接;
[0029] 主处理电路101还包括:稀疏转换模块1010,所述稀疏转换模块用于执行稀疏数据以及普通数据之间的转换;
[0030] 上述稀疏转换可以包括:将稀疏数据转换成普通数据(即非稀疏数据),也可以为将普通数据转换成稀疏数据。
[0031] 稀疏转换的具体方法可以为:设置一个稀疏bitmap,该bitmap用于表示普通数据中元素值为零的位置,将普通数据中元素值为0的元素值删除得到过滤数据,将该bitmap添加在该过滤数据之前即得到稀疏数据。
[0032] 下面以10个数值为例,例如,第4、5、6、7的元素值均为0,那么该bitmap可以为,0001111000;则将普通数据中的第4、5、6、7元素值删除,然后添加该bitmap即得到稀疏数据,因为对于元素值为0的数据计算无含义,因此可以通过稀疏方式来减少数据存储的数量。
[0033] 将稀疏数据转换成普通数据即反过来,即通过稀疏数据的bitmap来确定0值的位置,将0值添加至对应位置得到普通数据。参阅图2,图2还提供一种图片的智能推荐方法,该方法如图2所示,包括如下步骤:
[0034] 步骤S200、主处理电路接收图片对应的输入矩阵以及权值向量;所述稀疏转换模块将输入矩阵以及权值向量的普通数据转换成稀疏数据,将稀疏权值向量通过6个端口分别广播至转发电路,将多个稀疏输入矩阵中每个稀疏输入矩阵划分成6组稀疏循环数据块,每组稀疏循环数据块包括:第一循环子数据块和第二循环子数据块,将第一循环子数据块通过4P6T开关的一组T端口中的T端口发送至第一从处理电路,将第二循环子数据块通过4P6T开关的另一组T端口中的T端口发送至第二从处理电路;
[0035] 上述输入矩阵可以通过特征提取的方式来获取,具体的,可以采用现有的特征提取方式,该提取的执行主体可以为主处理电路,当然在实际应用中,也可以为通用芯片来执行提取的操作,本申请对提取操作并不限定,例如通过特征提取网络来实现,本申请对特征提取方式并不限定。上述权值向量可以由分类操作的神经网络构架内携带的数据来确定,本申请并不限定该权值向量的具体表现形式。
[0036] 步骤S201、转发电路将接收到的稀疏权值向量转发给同组从处理电路内的多个从处理电路;4P6T开关通过P端口接收到主处理电路发送的一组循环转发数据块时,连接一组T端口的T端口发送至第一从处理电路,通过另一P端口接收到主处理电路发送的接收到另一组循环转发数据块时,连接另一组T端口的T端口发送至第二从处理电路;
[0037] 步骤S202、第一从处理电路接收到第一循环子数据块时,从第一循环子数据块中截取本地循环转发数据块,将剩余循环转发数据块逆时针转发给其他从处理电路;第二从处理电路接收到第二循环子数据块时,从第二循环子数据块中截取本地循环转发数据块,将剩余循环转发数据块顺时针转发给其他从处理电路;
[0038] 步骤S203、从处理电路通过一个转发端口接收剩余循环转发数据块,通过广播端口接收稀疏权值向量,从剩余循环转发数据块中截取本地循环转发数据块,将其他循环转发数据块通过另一转发端口发送至相邻的其他从处理电路;从处理电路将本地循环转发数据块与稀疏权值向量执行稀疏运算得到稀疏运算结果,将稀疏运算结果通过广播端口发送至转发电路;
[0039] 步骤S204、转发电路将该稀疏运算结果转发给主处理电路的稀疏转换模块,稀疏转换模块将该稀疏运算结果转换成浮点运算结果;主处理电路依据该浮点运算结果得到输入矩阵与权值向量的计算结果,依据该计算结果确定该图片对应的类别。
[0040] 上述依据该计算结果确定该图片对应的类别的实现方法有多种,例如,可以通过支持向量机的方式来确定该图片对应的类别,又如可以将该计算结果与预设的不同类别的结果进行比对确定相似度,将相似度最高的结果对应的类别确定为该图片的类别。
[0041] 本申请提供的方法在执行分类算法时,将广播数据以及循环转发数据通过两个端口来实现,这样相对于在一个端口进行广播以及循环转发来说,降低了端口的转发数据量,相对于现有技术(例如中科寒武纪的H型结构专利),其能够减少主处理电路单个端口的数据传输数量,并且也减少了转化电路的转发数据量,另外,设置顺时针以及逆时针两种不同的循环转发方向,这样能够使得从处理电路的转发数据量以及运算量均是相同的,能够实现数据转发更加均衡,进而提高计算效率,并且相对均衡的转发数据量以及运算量可以让从处理电路的硬件配置相同,进而降低硬件成本,提高用户体验度,另外,本申请的主处理电路以及从处理电路均实现的为稀疏数据的运算,相对于浮点运算,稀疏数据的存储量更小,运算更加方便,因此减少了计算量,降低了功耗。设置4P6T开关使得在对于循环转发数据时,主处理电路的端口选择更加的灵活,并且主处理电路与P端口连接的引脚出现故障时,可以通过4P6T进行更换,提高了芯片的可靠性。
[0042] 上述多个从处理电路以如图1所示的6个从处理电路,在一个逆时针转发和一个顺时针转发,每个从处理电路转发的数据量都是相同的,并且计算量也差不多,以第一从处理电路为例,每个从处理电路运算的数据量可以为一行元素值,那么对于第一从处理电路其会从第一循环子数据块截取一行元素值,例如第一循环子数据块包括6行元素值,截取第一行元素值,转发5行元素值,反过来顺时针转发时,第一从处理电路只会接收到一行元素值,无需转发,即其转发的数据量为5行元素值,对于第二从处理电路转发的数据量也是相同的,平衡的数据转发数据以及运算量可以让从处理电路的硬件配置更加的均衡,进而降低了从处理电路的成本。
[0043] 可选的,所述将多个输入矩阵中每个输入矩阵划分成6组循环数据块具体包括:
[0044] 主处理电路从多个稀疏输入矩阵中提取一个稀疏输入矩阵,将该稀疏输入矩阵按行值划分成6组稀疏循环数据块,每组稀疏循环数据块包括:m/6行元素值,第一循环子数据块包括:m/12行元素值,第二循环子数据块包括:m/12行元素值;所述元素值均为稀疏数据。该m可以为输入矩阵的行值的最大值。
[0045] 可选的,从处理电路,具体用于第一循环子数据块截取一行元素值确定为本地循环转发数据块。
[0046] 如图1所示,该多路选择开关包括6个T端口和4个P端口,每个P端口全连接6个T端口,这样任意一个P端口均可以依据需要连接6个T端口的任意一个端口,避免了单独端口连接出现故障时,没有备用端口进行替换的问题,提高了芯片的可靠性。
[0047] 本申请的技术方案还提供一种电子设备,所述电子设备执行上述方法。
[0048] 可选的,所述电子设备包括:智能手机、平板电脑、VR设备、智能眼镜、电梯图片终端、智能电视或智能音箱。
[0049] 以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。