CN112561081B - 深度学习模型的转换方法、装置、电子设备和存储介质 - Google Patents
深度学习模型的转换方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112561081B CN112561081B CN202011507114.7A CN202011507114A CN112561081B CN 112561081 B CN112561081 B CN 112561081B CN 202011507114 A CN202011507114 A CN 202011507114A CN 112561081 B CN112561081 B CN 112561081B
- Authority
- CN
- China
- Prior art keywords
- operation nodes
- nodes
- deep learning
- item set
- candidate
- 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
Links
- 238000013136 deep learning model Methods 0.000 title claims abstract description 92
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 68
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000013135 deep learning Methods 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 abstract description 13
- 238000013473 artificial intelligence Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 23
- 238000004422 calculation algorithm Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000007418 data mining Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了深度学习模型的转换方法、装置、电子设备和存储介质,涉及深度学习等人工智能技术领域。具体实现方案为:将深度学习模型的原深度学习框架进行转换,以得到深度学习模型的目标深度学习框架,并基于目标深度学习框架,确定深度学习模型的模型图结构,并从模型图结构中的运算节点中,确定出对应的频繁项集集合,并结合对N个运算节点之中的部分节点进行合并,以合并为模块,根据模块和未合并的运算节点生成优化后的模型图结构,对优化后的模型图结构进行代码转换,以得到代码结果。由此,实现对模型图结构中的运算节点进行模块化处理,减少了优化后的模型图结构中的节点的数量,从而达到优化代码,提升转换后代码的可读性。
Description
技术领域
本申请涉及计算机技术领域,具体涉及深度学习等人工智能技术领域,尤其涉及深度学习模型的转换方法、装置、电子设备和存储介质。
背景技术
随着人工智能领域的快速发展,涌现了许多优秀的深度学习框架。在一些场景中,在用户需要将一种深度学习框架所构建的模型,转移到另一个自己所熟悉的深度学习框架上,此时,用户可通过模型转换工具对模型的框架进行转换。然而,相关技术中的模型转换工具的转换效果并不理想,用户的模型转换体验较差。
发明内容
本申请提供了一种用于深度学习模型的转换方法、装置、电子设备和存储介质。
根据本申请的一方面,提供了一种深度学习模型的转换方法,包括:将深度学习模型的原深度学习框架进行转换,以得到所述深度学习模型的目标深度学习框架;根据所述目标深度学习框架,确定所述深度学习模型的模型图结构,其中,所述模型图结构包括依次连接的N个运算节点,其中,N为大于1的整数;根据所述N个运算节点,确定出对应的频繁项集集合,其中,所述频繁项集集合包括至少一个频繁项集,其中,所述频繁项集由依次连接的M个运算节点组成,其中,M为大于1,且小于N的整数;根据所述至少一个频繁项集对所述N个运算节点之中的部分节点进行合并,以合并为模块;根据所述模块和未合并的所述运算节点生成优化后的模型图结构;对所述优化后的模型图结构进行代码转换,以得到所述深度学习模型的代码结果。
根据本申请的另一方面,提供了一种深度学习模型的转换装置,包括:第一转换模块,用于将深度学习模型的原深度学习框架进行转换,以得到所述深度学习模型的目标深度学习框架;第一确定模块,用于根据所述目标深度学习框架,确定所述深度学习模型的模型图结构,其中,所述模型图结构包括依次连接的N个运算节点,其中,N为大于1的整数;第二确定模块,用于根据所述N个运算节点,确定出对应的频繁项集集合,其中,所述频繁项集集合包括至少一个频繁项集,其中,所述频繁项集由依次连接的M个运算节点组成,其中,M为大于1,且小于N的整数;合并模块,用于根据所述至少一个频繁项集对所述N个运算节点之中的部分节点进行合并,以合并为模块;生成模块,用于根据所述模块和未合并的所述运算节点生成优化后的模型图结构;第二转换模块,用于对所述优化后的模型图结构进行代码转换,以得到所述深度学习模型的代码结果。
根据本申请的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请的深度学习模型的转换方法。
根据本申请的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请实施例公开的深度学习模型的转换方法。
根据本申请的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本申请的深度学习模型的转换方法。
上述申请中的一个实施例具有如下优点或有益效果:
在对深度学习模型的深度学习框架进行转换的过程,将深度学习模型的原深度学习框架进行转换,以得到深度学习模型的目标深度学习框架,并基于目标深度学习框架,确定深度学习模型的模型图结构,并从模型图结构中的运算节点中,确定出对应的频繁项集集合,并结合对N个运算节点之中的部分节点进行合并,以合并为模块,根据模块和未合并的运算节点生成优化后的模型图结构,对优化后的模型图结构进行代码转换,以得到深度学习模型的代码结果。由此,实现了对模型图结构中的运算节点进行模块化处理,减少了优化后的模型图结构中的节点的数量,进而可降低对优化后的模型图结构中的节点进行一一转换所得到的代码量,从而达到了优化代码,提升了转换后代码的可读性。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请一个实施例提供的一种深度学习模型的转换方法的流程示意图;
图2是深度学习模型的模型图结构的示例图;
图3是步骤103的细化流程图;
图4是生成图2所示的模型图结构的频繁项集集合过程中各个结果的示例图;
图5是步骤104的细化流程示意图;
图6是根据本申请一个实施例提供的一种深度学习模型的转换装置的结构示意图;
图7是根据本申请另一个实施例提供的一种深度学习模型的转换装置的结构示意图;
图8是用来实现本申请实施例的深度学习模型的转换方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
相关技术中,在需要对模型的深度学习框架进行转换时,用户可借助模型转换工具进行转换。然而,相关技术中,转换工具所提供的转换后的模型的代码量较大,并且代码的可读性比较差,需要用户手动对转换后模型的代码进行大量修改,用户的体验度较差。为此,本申请提出了一种深度学习模型的转换方法,在对深度学习模型的深度学习框架进行转换的过程,将深度学习模型的原深度学习框架进行转换,以得到深度学习模型的目标深度学习框架,并基于目标深度学习框架,确定深度学习模型的模型图结构,并从模型图结构中的运算节点中,确定出对应的频繁项集集合,并结合对N个运算节点之中的部分节点进行合并,以合并为模块,根据模块和未合并的运算节点生成优化后的模型图结构,对优化后的模型图结构进行代码转换,以得到深度学习模型的代码结果。由此,实现了对模型图结构中的运算节点进行模块化处理,减少了优化后的模型图结构中的节点的数量,进而可降低对优化后的模型图结构中的节点进行一一转换所得到的代码量,从而达到了优化代码,提升了转换后代码的可读性。
下面参考附图描述本申请实施例的深度学习模型的转换方法、装置、电子设备和存储介质。
图1是根据本申请第一实施例提供的一种深度学习模型的转换方法的流程示意图。
如图1所示,该深度学习模型的转换方法可以包括:
步骤101,将深度学习模型的原深度学习框架进行转换,以得到深度学习模型的目标深度学习框架。
其中,上述深度学习模型的转换方法的执行主体为深度学习模型的转换装置,该深度学习模型的转换装置可以由软件和/或硬件的方式实现,该实施例中的深度学习模型的转换装置可以配置电子设备中,该电子设备可以包括但不限于终端设备、服务器等。
作为一种示例性性的实施方式,在需要对深度学习模型进行转换时,深度学习模型的转换装置中从多个候选深度学习框架中,选择出目标深度学习框框,并在接收到确认转换的指令后,深度学习框架的转换装置可将深度学习模型的原深度学习框架进行转换,以得到深度学习模型的目标深度学习框架。
其中,可以理解的是,本实施例中的深度学习框架的转换装置中保存了各种深度学习框架之间的转换规则,对应地,可根据原深度学习框架与目标深度学习框架之间的转换规则进行框架转换。
步骤102,根据目标深度学习框架,确定深度学习模型的模型图结构,其中,模型图结构包括依次连接的N个运算节点,其中,N为大于1的整数。
在本申请的一个实施例中,可基于目标深度学习框架,确定出深度学习模型中运算单元的关系信息,并根据运算单元的关系信息,确定出该深度学模型中的模型图结构。
其中,深度学习模型的模型图结构的示例图,如图2所示。通过图2可以看出,模型图结构中包括多个运算节点,运算节点分别为:conv2d、relu、pool2d、conv2d、relu、pool2d、conv2d、relu、conv2d、relu、pool2d、flatten、linear。其中,每个运算节点对应一个运算单元(Operator,简称OP),其包含了运算单元的基本信息(比如运算单元的类别以及属性信息等)和与其连接的输入以及输出节点的名称信息。其中,运算单元是深度学习框架中的基本单元,它的输入和输出可以是张量(Tensor)。
步骤103,根据N个运算节点,确定出对应的频繁项集集合,其中,频繁项集集合包括至少一个频繁项集,其中,频繁项集由依次连接的M个运算节点组成,其中,M为大于1,且小于N的整数。
在本申请的一个实施例中,在获取依次连接的多个运算节点后,可根据运算节点以及运算节点之间的连接关系,并利用预先设置的数据挖掘算法,确定出对应的频繁项集集合。
其中,数据挖掘算法是根据实际业务需求而预先设置的,例如,数据挖掘算法可以为Apriori算法,其中,Apriori算法是一种通过频繁项集来挖掘关联规则的算法。
在本申请的另一个实施例中,上述根据N个运算节点,确定出对应的频繁项集集合的一种可能方式为:将N个运算节点以及运算节点的连接关系,输入到预先训练好的数据挖掘模型中,以得到对应的频繁项集集合。
步骤104,根据至少一个频繁项集对N个运算节点之中的部分节点进行合并,以合并为模块。
步骤105,根据模块和未合并的运算节点生成优化后的模型图结构。
其中,可以理解的是,优化后的模型图结构中模块是采用一个节点进行标识,从而可以看出优化后的模型图结构中的节点数量已减少。
步骤106,对优化后的模型图结构进行代码转换,以得到深度学习模型的代码结果。
在本实施例中,针对优化后的模型图结构中的每个节点,可根据对应节点的属性信息,将对应节点转换为一行代码。
本申请实施例提出的深度学习模型的转换方法,在对深度学习模型的深度学习框架进行转换的过程,将深度学习模型的原深度学习框架进行转换,以得到深度学习模型的目标深度学习框架,并基于目标深度学习框架,确定深度学习模型的模型图结构,并从模型图结构中的运算节点中,确定出对应的频繁项集集合,并结合对N个运算节点之中的部分节点进行合并,以合并为模块,根据模块和未合并的运算节点生成优化后的模型图结构,对优化后的模型图结构进行代码转换,以得到深度学习模型的代码结果。由此,实现了对模型图结构中的运算节点进行模块化处理,减少了优化后的模型图结构中的节点的数量,进而可降低对优化后的模型图结构中的节点进行一一转换所得到的代码量,从而达到了优化代码,提升了转换后代码的可读性。
基于上述实施例中的基础上,为了可以准确确定出模型图结构中的频繁项集集合,如图3所示,上述步骤103的一种可能实现方式,包括:
步骤301,根据N个运算节点,确定出多个不同的候选k项集,其中,k为大于1,且小于N的整数,其中,候选k项集包括依次连接的k个运算节点。
在本申请的一个实施例中,为了准确确定候选k项集的同时,减少确定候选k项集的计算量,上述根据N个运算节点,确定出多个不同的候选k项集的一种可能实现方式为:根据每个运算节点的类型,将N个运算节点进行分类,以得多类运算节点;分别将每一类运算节点作为一个候选1项集,以得到多类运算节点所对应的多个候选1项集;确定每个候选1项集在N运算节点的出现次数;根据每个候选1项集的出现次数,从多个候选1项集中获取出现次数超过预设次数阈值的候选1项集,以形成多个频繁1项集;根据多个频繁1项集,确定出多个不同的候选k项集。
其中,预设次数阈值是预先设置的次数值,在实际应用中,可根据实际业务需求设置预设次数阈值的取值,例如,预设次数阈值可以为2次。
步骤302,针对每个候选k项集,确定候选k项集在N个运算节点中的出现次数。
步骤303,根据每个候选k项集的出现次数,从多个候选k项集中获取出现次数超过预设次数阈值的候选k项集,以生成频繁项集集合。
为了使得本领域的技术人员可以清楚地了解本申请,下面结合图2以及图4对该实施例的频繁项集集合的生成过程进行示例性描述。
其中,在本实施中深度学习模型的模型图结构,如图2所示,可将模型图结构以及次数阈值2以及项集长度2作为Aprior算法的输入,对应地,Aprior算法输出最终的频繁项集集合,如图4所示,其中,最终的频繁项集集合为“{conv2d,relu},{relu,pool2d},{pool2d,conv2d},{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu}”,其中,{conv2d,relu},{relu,pool2d},{pool2d,conv2d}为频繁2项集,{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu}为频繁3项集。
其中,Aprior算法确定频繁项集集合的具体过程为:
步骤1,扫描整个模型图结构,得到所有出现过的不同类别的运算节点,作为候选频繁1项集(k=1)。
步骤2、挖掘频繁k项集:
步骤a、扫描整个模型图结构,计算每个候选k项集的支持度(支持度即在候选k项集在模型图结构中的出现次数)。
步骤b,淘汰候选k项集中支持度低于支持度阈值的k项集,得到频繁k项集。如果的得到的频繁k项集为空,直接返回,算法结束;否则当k>=项集长度阈值(例如,2)时,将当前频繁k项集加入S(S可以表示最终的频繁项集集合)。
步骤c,基于频繁k项集,构建候选频繁k+1项集。
在一个实施例中,为了减少运算量,每个候选k+1项集中的第k个元素和第k+1个元素所组成的2项集必须属于频繁2项集。
步骤3)令k=k+1,并转入步骤2)。
下面结合图4对确定出图2所示的模型图结构中的频繁项集集合进行进一步描述。
首先,基于模型图结构中运算节点的类型,可确定多个候选1项集,并确定每个候选1项集在模型图结构的出现次数,即,确定每个候选1项集在模型图结构的支持度,其中,候选1项集与其对应的支持度的关系,如图4中的C1标记,通过C1处,可以看出,候选1项集{conv2d},{relu},{pool2d}的支持度均超过2,此时,可将候选1项集{conv2d},{relu},{pool2d}形成频繁1项集集合。其中,频繁1项集在图4中的L1进行示例。对应地,可根据频繁1项集,确定出多个候选2项集,候选2项集包括:{conv2d,relu},{conv2d,pool2d},{relu,conv2d},{relu,pool2d},{pool2d,conv2d},{pool2d,relu}。其中,候选2项集与其对应的支持度,如图4中的C2标记处所示例。通过C2可以看出,候选2项集{conv2d,relu}、{relu,pool2d},{pool2d,conv2d}的支持度均超过2,可将候选2项集{conv2d,relu}、{relu,pool2d},{pool2d,conv2d}添加到频繁2项集集合,对应地,候选2项集的项集长度等于2,此时,可以将{conv2d,relu}、{relu,pool2d},{pool2d,conv2d}添加到最终的频繁项集集合中。对应地,频繁2项集集合的示例,如图4中的L2处所示例。对应地,根据频繁2项集集合可形成多个候选3项集,多个候选3项集分别为{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu},其中,候选3项集与其对应的支持度的对应关系,如图4中的C3处所示意,对应地,通过C3处,可以看出,{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu}的支持度均超过2,因此,频繁3项集集合包括:{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu}。此时,频繁3项集的项集长度大于2,还可以将{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu}添加到最终的频繁项集集合中。对应地,再根据频繁3项集集合,得到候选4项集,可确定候选4项集的支持度均小于2,此时,可基于频繁2项集集合和频繁3项集集合,确定出最终的频繁项集集合为“{conv2d,relu},{relu,pool2d},{pool2d,conv2d},{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu}”。
在本申请的一个实施例中,为了使得优化后的模型图结构中的节点数量最少,最大程度的降低代码量,上述步骤104,根据至少一个频繁项集对N个运算节点之中的部分节点进行合并,以合并为模块的一种可能实现方式为,如图5所示,可以包括:
步骤501,根据至少一个频繁项集,对N个运算节点进行组合,以得到组合出N个运算节点的目标组合方式,其中,目标组合方式组合出N个运算节点所使用的频繁项集的数量最少。
在本申请的一个实施例中,在目标组合方式为两种组合方式的情况下,可从两种组合方式中随机选择一种,并根据选择的组合方式确定N个运算节点之中的多个可合并节点。
在本申请的另一些实施例中,可提示用户选择两种组合方式,并利用用户所选择的目标组合方式,确定N个运算节点之中的多个可合并节点。
步骤502,根据目标组合方式对应的组合信息,确定N个运算节点之中的多个可合并节点。
在本申请的一个实施例中,为了可以确定出可合并节点,组合信息包括:组合N个运算节点所使用的目标频繁项集,根据目标组合方式对应的组合信息,确定N个运算节点之中的多个可合并节点,包括:从N个运算节点之中获取与目标频繁项集相匹配的项集;将相匹配项集中的运算节点作为可合并节点。
其中,目标频繁项集是频繁项集集合中多个频繁项集中的一个或者多个,例如,频繁项集集合为:{conv2d,relu},{relu,pool2d},{pool2d,conv2d},{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu},目标频繁项集可以为{conv2d,relu},{conv2d,relu,pool2d},{pool2d,conv2d,relu}。其中,目标频繁项集的数量小于频繁项集集合中频繁项集的总数。
例如,对于图2所示的模型图结构,可基于动态规划算法,基于模型图结构以及频繁项集集合,确定出利用频繁项集集合组合模型图结构的最优组合方式,即,目标组合方式。
在本实施例中,为了使得本领域技术人员清楚地了解本申请下面结合动态规划算法对确定出最优组合方式的代码逻辑进行示例性说明。
步骤1,获取模型图结构中的运算节点的总数N。
步骤2,根据模型图结构中的前i个运算节点,构建第i个子图,其中,i为大于或者等于1,且小于N的整数。
步骤3,针对第i个子图,根据第i-1个子图的最优组合方式以及频繁项集集合,确定出第i个子图的最优组合方式。
在i等于1时,第一个子图的最优组合方式为第一个运算节点。
具体而言,对于第i个子图,可将第i个子图中的前j个运算节点组合成一个前半子图,并获取前半子图的组合方式的数量n,并由第j+1个运算到第i个运算节点组合成后半子图,之后,从后向前扫描后半子图,以确定后半子图中是否有部分节点在频繁项集集合中,如果有,找到最长的项集替换这部分的运算节点构成一个模块;否则保持后半子图中的运算节点不变。计算后半子图的替换后的运算节点个数为m。之后,判断前半子图的组合方式的数量n和后半子图中的节点个数m的和是否小于第i个子图的节点数量,如果小于,则确定当前组合方式为第i个子图的最优组合方式。
通过上述方式,直至确定出模型图结构对应的最优组合方式。
例如,模型图结构,如图2所示,频繁项集集合为:{conv2d,relu},{relu,pool2d},{pool2d,conv2d},{conv2d,relu,pool2d},{relu,pool2d,conv2d},{pool2d,conv2d,relu}。假设,{conv2d,relu}对应模块A,{relu,pool2d}对应模块B,{pool2d,conv2d}对应模块C,,{conv2d,relu,pool2d}对应模块D,{relu,pool2d,conv2d}对应模块E,{pool2d,conv2d,relu}对应模块F。假设组合出模型图结构的目标组合方式为:一个频繁2项集{conv2d,relu},2个频繁项3项集{pool2d,conv2d,relu},一个频繁3项集{conv2d,relu,pool2d}。此时,可根据目标组合方式,对模型图结构进行优化。优化后的模型图结构为模块A之后连接模块F,模块F之后再连接模块D,模块D之后连接运算节点flatten,
步骤503,对多个可合并节点进行合并以生成模块。
在本申请的一个实施例中,根据模块和未合并的运算节点生成优化后的模型图结构的一种可能实现方式为:获取模块中的多个目标运算节点,并获取多个运算节点各自对应的属性信息;根据多个运算节点各自对应的属性信息,生成模块的参数信息;根据模块的参数信息以及未合并的运算节点的属性信息,生成优化后的模型图结构。由此,准确生成了优化后的模型图结构。
如果几个模块中运算节点的类型和出现顺序一致,则确定这几个模块的模块类型相同。在本实施例中,为了可准确确定同种模块类型中各个模块各自的参数,可根据模块中各个运算节点的不同属性,找到模块的不同属性列表,作为模块的参数。具体步骤如下:
步骤1、获取同种模块类型中各个模块各自的参数,整理参数表格:(模块1和模块2的模块类型是相同的)
步骤2、在需要获取对应模块的参数的情况下,可从步骤1)的表格中获取对应模块所对应的运算节点的属性信息,并将所获取到的属性值,作为模块的参数。
在本申请的一个实施例中,在优化后的模型图结构中多个地方共用同一个模块的情况下,还可以基于模块的情况,对优化的模型图结构进行进一步优化,其优化的过程,与上述对运算节点的优化方式类似。大致过程如下:可基于多个模块,确定出频繁项集集合,然后,根据频繁项集集合对优化后的模型图结构中的部分模块进行进一步合并,以合并为第一模块,并根据第一模块以及优化的模型图结构中的未合并的模块以及运算节点生成新的模型图结构,并对新的模型图结构进行代码转换。
为了实现上述实施例,本申请实施例还提供一种深度学习模型的转换装置。
图6是根据本申请一个实施例提供的一种深度学习模型的转换装置的结构示意图。
如图6所示,该深度学习模型的转换装置600可以包括第一转换模块601、第一确定模块602、第二确定模块603、合并模块604、生成模块605和第二转换模块606,其中:
第一转换模块601,用于将深度学习模型的原深度学习框架进行转换,以得到深度学习模型的目标深度学习框架。
第一确定模块602,用于根据目标深度学习框架,确定深度学习模型的模型图结构,其中,模型图结构包括依次连接的N个运算节点,其中,N为大于1的整数。
第二确定模块603,用于根据N个运算节点,确定出对应的频繁项集集合,其中,频繁项集集合包括至少一个频繁项集,其中,频繁项集由依次连接的M个运算节点组成,其中,M为大于1,且小于N的整数。
合并模块604,用于根据至少一个频繁项集对N个运算节点之中的部分节点进行合并,以合并为模块。
生成模块605,用于根据模块和未合并的运算节点生成优化后的模型图结构。
第二转换模块606,用于对优化后的模型图结构进行代码转换,以得到深度学习模型的代码结果。
其中,需要说明的是,前述对深度学习模型的转换方法实施例的解释说明也适用于本实施例,本实施对此不再赘述。
本申请实施例的深度学习模型的转换装置,在对深度学习模型的深度学习框架进行转换的过程,将深度学习模型的原深度学习框架进行转换,以得到深度学习模型的目标深度学习框架,并基于目标深度学习框架,确定深度学习模型的模型图结构,并从模型图结构中的运算节点中,确定出对应的频繁项集集合,并结合对N个运算节点之中的部分节点进行合并,以合并为模块,根据模块和未合并的运算节点生成优化后的模型图结构,对优化后的模型图结构进行代码转换,以得到深度学习模型的代码结果。由此,实现了对模型图结构中的运算节点进行模块化处理,减少了优化后的模型图结构中的节点的数量,进而可降低对优化后的模型图结构中的节点进行一一转换所得到的代码量,从而达到了优化代码,提升了转换后代码的可读性。
在本申请的一个实施例中,如图7所示,该深度学习模型的转换装置可以包括:第一转换模块701、第一确定模块702、第二确定模块703、合并模块704、生成模块705和第二转换模块706,其中,第二确定模块703可以包括第一确定单元7031、第二确定单元7032和第一生成单元7033。合并模块704可以包括:组合单元7041、第三确定单元7042和第二生成单元7043,其中:
其中,关于第一转换模块701、第一确定模块702、生成模块705和第二转换模块706的详细描述请参考图6所示实施例中第一转换模块601、第一确定模块602、生成模块605和第二转换模块606的说明,此处不再进行描述。
如图7所示,第二确定模块703,包括:
第一确定单元7031,用于根据N个运算节点,确定出多个不同的候选k项集,其中,k为大于1,且小于N的整数,其中,候选k项集包括依次连接的k个运算节点;
第二确定单元7032,用于针对每个候选k项集,确定候选k项集在N个运算节点中的出现次数;
第一生成单元7033,根据每个候选k项集的出现次数,从多个候选k项集中获取出现次数超过预设次数阈值的候选k项集,以生成频繁项集集合。
在本申请的一个实施例中,第一确定单元7031具体用于:根据每个运算节点的类型,将N个运算节点进行分类,以得多类运算节点;分别将每一类运算节点作为一个候选1项集,以得到多类运算节点所对应的多个候选1项集;确定每个候选1项集在N运算节点的出现次数;根据每个候选1项集的出现次数,从多个候选1项集中获取出现次数超过预设次数阈值的候选1项集,以形成多个频繁1项集;根据多个频繁1项集,确定出多个不同的候选k项集。
如图7所示,合并模块704,包括:
组合单元7041,用于根据至少一个频繁项集,对N个运算节点进行组合,以得到组合出N个运算节点的目标组合方式,其中,目标组合方式组合出N个运算节点所使用的频繁项集的数量最少;
第三确定单元7042,用于根据目标组合方式对应的组合信息,确定N个运算节点之中的多个可合并节点;
第二生成单元7043,用于对多个可合并节点进行合并以生成模块。
在本申请的一个实施例中,组合信息包括:组合N个运算节点所使用的目标频繁项集,第三确定单元7042,具体用于:从N个运算节点之中获取与目标频繁项集相匹配的项集;将项集中的运算节点作为可合并节点。在本申请的一个实施例总,生成模块705,具体用于:获取模块中的多个目标运算节点,并获取多个运算节点各自对应的属性信息;根据多个运算节点各自对应的属性信息,生成模块的参数信息;根据模块的参数信息以及未合并的运算节点的属性信息,生成优化后的模型图结构。
其中,需要说明的是,前述对深度学习模型的转换方法实施例的解释说明也适用于本实施例中的深度学习模型的转换装置,此处不再赘述。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质和一种计算机程序产品。
图8示出了可以用来实施本公开的实施例的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如深度学习模型的转换方法。例如,在一些实施例中,深度学习模型的转换方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的深度学习模型的转换方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行深度学习模型的转换方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
其中,需要说明的是,人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术以及机器学习/深度学习、大数据处理技术、知识图谱技术等几大方向。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (12)
1.一种深度学习模型的转换方法,包括:
将深度学习模型的原深度学习框架进行转换,以得到所述深度学习模型的目标深度学习框架;
根据所述目标深度学习框架,确定所述深度学习模型的模型图结构,其中,所述模型图结构包括依次连接的N个运算节点,其中,N为大于1的整数;
根据所述N个运算节点,确定出对应的频繁项集集合,其中,所述频繁项集集合包括至少一个频繁项集,其中,所述频繁项集由依次连接的M个运算节点组成,其中,M为大于1,且小于N的整数;
根据所述至少一个频繁项集对所述N个运算节点之中的部分节点进行合并,以合并为模块;
根据所述模块和未合并的所述运算节点生成优化后的模型图结构;
对所述优化后的模型图结构进行代码转换,以得到所述深度学习模型的代码结果;
其中,所述根据所述N个运算节点,确定出对应的频繁项集集合,包括:
根据所述N个运算节点,确定出多个不同的候选k项集,其中,所述k为大于1,且小于N的整数,其中,所述候选k项集包括依次连接的k个运算节点;
针对每个所述候选k项集,确定所述候选k项集在所述N个运算节点中的出现次数;
根据每个所述候选k项集的出现次数,从多个所述候选k项集中获取出现次数超过预设次数阈值的候选k项集,以生成所述频繁项集集合。
2.如权利要求1所述的方法,其中,所述根据所述N个运算节点,确定出多个不同的候选k项集,包括:
根据每个所述运算节点的类型,将所述N个运算节点进行分类,以得多类运算节点;
分别将每一类运算节点作为一个候选1项集,以得到所述多类运算节点所对应的多个候选1项集;
确定每个所述候选1项集在所述N个运算节点的出现次数;
根据每个所述候选1项集的出现次数,从所述多个候选1项集中获取出现次数超过预设次数阈值的候选1项集,以形成多个频繁1项集;
根据所述多个频繁1项集,确定出多个不同的候选k项集。
3.如权利要求1所述的方法,其中,所述根据所述至少一个频繁项集对所述N个运算节点之中的部分节点进行合并,以合并为模块,包括:
根据所述至少一个频繁项集,对所述N个运算节点进行组合,以得到组合出所述N个运算节点的目标组合方式,其中,目标组合方式组合出所述N个运算节点所使用的频繁项集的数量最少;
根据所述目标组合方式对应的组合信息,确定所述N个运算节点之中的多个可合并节点;
对所述多个可合并节点进行合并以生成所述模块。
4.如权利要求3所述的方法,其中,所述组合信息包括:组合所述N个运算节点所使用的目标频繁项集,所述根据所述目标组合方式对应的组合信息,确定所述N个运算节点之中的多个可合并节点,包括:
从所述N个运算节点之中获取与所述目标频繁项集相匹配的项集;
将所述项集中的运算节点作为所述可合并节点。
5.如权利要求1所述的方法,其中,所述根据所述模块和未合并的所述运算节点生成优化后的模型图结构,包括:
获取所述模块中的多个目标运算节点,并获取所述多个目标运算节点各自对应的属性信息;
根据所述多个目标运算节点各自对应的属性信息,生成所述模块的参数信息;
根据所述模块的参数信息以及未合并的所述运算节点的属性信息,生成优化后的模型图结构。
6.一种深度学习模型的转换装置,包括:
第一转换模块,用于将深度学习模型的原深度学习框架进行转换,以得到所述深度学习模型的目标深度学习框架;
第一确定模块,用于根据所述目标深度学习框架,确定所述深度学习模型的模型图结构,其中,所述模型图结构包括依次连接的N个运算节点,其中,N为大于1的整数;
第二确定模块,用于根据所述N个运算节点,确定出对应的频繁项集集合,其中,所述频繁项集集合包括至少一个频繁项集,其中,所述频繁项集由依次连接的M个运算节点组成,其中,M为大于1,且小于N的整数;
合并模块,用于根据所述至少一个频繁项集对所述N个运算节点之中的部分节点进行合并,以合并为模块;
生成模块,用于根据所述模块和未合并的所述运算节点生成优化后的模型图结构;
第二转换模块,用于对所述优化后的模型图结构进行代码转换,以得到所述深度学习模型的代码结果;
其中,所述第二确定模块,包括:
第一确定单元,用于根据所述N个运算节点,确定出多个不同的候选k项集,其中,所述k为大于1,且小于N的整数,其中,所述候选k项集包括依次连接的k个运算节点;
第二确定单元,用于针对每个所述候选k项集,确定所述候选k项集在所述N个运算节点中的出现次数;
第一生成单元,根据每个所述候选k项集的出现次数,从多个所述候选k项集中获取出现次数超过预设次数阈值的候选k项集,以生成所述频繁项集集合。
7.如权利要求6所述的装置,其中,所述第一确定单元,具体用于:
根据每个所述运算节点的类型,将所述N个运算节点进行分类,以得多类运算节点;
分别将每一类运算节点作为一个候选1项集,以得到所述多类运算节点所对应的多个候选1项集;
确定每个所述候选1项集在所述N个运算节点的出现次数;
根据每个所述候选1项集的出现次数,从所述多个候选1项集中获取出现次数超过预设次数阈值的候选1项集,以形成多个频繁1项集;
根据所述多个频繁1项集,确定出多个不同的候选k项集。
8.如权利要求6所述的装置,其中,所述合并模块,包括:
组合单元,用于根据所述至少一个频繁项集,对所述N个运算节点进行组合,以得到组合出所述N个运算节点的目标组合方式,其中,目标组合方式组合出所述N个运算节点所使用的频繁项集的数量最少;
第三确定单元,用于根据所述目标组合方式对应的组合信息,确定所述N个运算节点之中的多个可合并节点;
第二生成单元,用于对所述多个可合并节点进行合并以生成所述模块。
9.如权利要求8所述的装置,其中,所述组合信息包括:组合所述N个运算节点所使用的目标频繁项集,所述第三确定单元,具体用于:
从所述N个运算节点之中获取与所述目标频繁项集相匹配的项集;
将所述项集中的运算节点作为所述可合并节点。
10.如权利要求6所述的装置,其中,所述生成模块,具体用于:
获取所述模块中的多个目标运算节点,并获取所述多个目标运算节点各自对应的属性信息;
根据所述多个目标运算节点各自对应的属性信息,生成所述模块的参数信息;
根据所述模块的参数信息以及未合并的所述运算节点的属性信息,生成优化后的模型图结构。
11.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011507114.7A CN112561081B (zh) | 2020-12-18 | 2020-12-18 | 深度学习模型的转换方法、装置、电子设备和存储介质 |
CN202210262340.6A CN114881223B (zh) | 2020-12-18 | 2020-12-18 | 深度学习模型的转换方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011507114.7A CN112561081B (zh) | 2020-12-18 | 2020-12-18 | 深度学习模型的转换方法、装置、电子设备和存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210262340.6A Division CN114881223B (zh) | 2020-12-18 | 2020-12-18 | 深度学习模型的转换方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112561081A CN112561081A (zh) | 2021-03-26 |
CN112561081B true CN112561081B (zh) | 2022-05-03 |
Family
ID=75031695
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011507114.7A Active CN112561081B (zh) | 2020-12-18 | 2020-12-18 | 深度学习模型的转换方法、装置、电子设备和存储介质 |
CN202210262340.6A Active CN114881223B (zh) | 2020-12-18 | 2020-12-18 | 深度学习模型的转换方法、装置、电子设备和存储介质 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210262340.6A Active CN114881223B (zh) | 2020-12-18 | 2020-12-18 | 深度学习模型的转换方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN112561081B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113411533B (zh) * | 2021-06-15 | 2023-03-31 | 三星电子(中国)研发中心 | 一种高动态范围制式的转换方法和装置 |
CN113379070A (zh) * | 2021-08-13 | 2021-09-10 | 苏州浪潮智能科技有限公司 | 一种深度学习框架转换方法、系统、存储介质及设备 |
CN114330668A (zh) * | 2021-12-31 | 2022-04-12 | 成都商汤科技有限公司 | 模型处理方法、装置、电子设备和计算机存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9672495B2 (en) * | 2014-12-23 | 2017-06-06 | Sap Se | Enhancing frequent itemset mining |
CN105183841B (zh) * | 2015-09-06 | 2019-03-26 | 南京游族信息技术有限公司 | 大数据环境下结合频繁项集和深度学习的推荐方法 |
CN106777065A (zh) * | 2016-12-12 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种频繁子图挖掘的方法及系统 |
CN106779075A (zh) * | 2017-02-16 | 2017-05-31 | 南京大学 | 一种计算机中采用剪枝方法改进的神经网络 |
CN111316257A (zh) * | 2017-08-09 | 2020-06-19 | 深圳清华大学研究院 | 基于图结构数据的候选项集支持度计算方法及其应用 |
CN107862406A (zh) * | 2017-10-31 | 2018-03-30 | 中国南方电网有限责任公司 | 应用深度学习和改进Apriori算法综合的一次设备风险预测的方法 |
CN108132927B (zh) * | 2017-12-07 | 2022-02-11 | 西北师范大学 | 一种融合图结构与节点关联的关键词提取方法 |
US11775540B2 (en) * | 2018-03-01 | 2023-10-03 | Microsoft Technology Licensing, Llc | Mining patterns in a high-dimensional sparse feature space |
CN110766147B (zh) * | 2018-07-25 | 2022-10-11 | 赛灵思公司 | 神经网络编译器架构及编译方法 |
CN110852449B (zh) * | 2019-11-25 | 2023-11-14 | 北京百度网讯科技有限公司 | 模型迁移方法和电子设备 |
CN110928925A (zh) * | 2019-11-28 | 2020-03-27 | 曙光信息产业股份有限公司 | 一种频繁项集的挖掘方法、装置、存储介质和电子设备 |
CN111338635B (zh) * | 2020-02-20 | 2023-09-12 | 腾讯科技(深圳)有限公司 | 计算图的图编译方法、装置、设备及存储介质 |
CN111429161B (zh) * | 2020-04-10 | 2023-10-10 | 杭州网易再顾科技有限公司 | 特征提取方法、特征提取装置、存储介质及电子设备 |
CN111967568B (zh) * | 2020-06-29 | 2023-09-01 | 北京百度网讯科技有限公司 | 深度学习模型的适配方法、装置及电子设备 |
-
2020
- 2020-12-18 CN CN202011507114.7A patent/CN112561081B/zh active Active
- 2020-12-18 CN CN202210262340.6A patent/CN114881223B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114881223A (zh) | 2022-08-09 |
CN114881223B (zh) | 2023-04-18 |
CN112561081A (zh) | 2021-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112561081B (zh) | 深度学习模型的转换方法、装置、电子设备和存储介质 | |
CN114723966B (zh) | 多任务识别方法、训练方法、装置、电子设备及存储介质 | |
CN115481227A (zh) | 人机交互对话方法、装置以及设备 | |
CN112528995B (zh) | 用于训练目标检测模型的方法、目标检测方法及装置 | |
CN116580223A (zh) | 数据处理及模型微调方法、装置、电子设备及存储介质 | |
CN115456167A (zh) | 轻量级模型训练方法、图像处理方法、装置及电子设备 | |
CN111738325B (zh) | 图像识别方法、装置、设备以及存储介质 | |
CN113361574A (zh) | 数据处理模型的训练方法、装置、电子设备及存储介质 | |
CN113792876A (zh) | 骨干网络的生成方法、装置、设备以及存储介质 | |
CN113344213A (zh) | 知识蒸馏方法、装置、电子设备及计算机可读存储介质 | |
CN112784102A (zh) | 视频检索方法、装置和电子设备 | |
CN112308127A (zh) | 用于处理数据的方法、装置、设备以及存储介质 | |
CN115796228B (zh) | 算子融合方法、装置、设备以及存储介质 | |
CN115809688B (zh) | 一种模型调试方法、装置、电子设备及存储介质 | |
CN114973333B (zh) | 人物交互检测方法、装置、设备以及存储介质 | |
CN114418063B (zh) | 神经网络模型中网络层的分配方法与装置 | |
CN114399998B (zh) | 语音处理方法、装置、设备、存储介质及程序产品 | |
CN115906987A (zh) | 深度学习模型的训练方法、虚拟形象驱动方法和装置 | |
CN114358198A (zh) | 实例分割方法、装置及电子设备 | |
CN114330576A (zh) | 模型处理方法、装置、图像识别方法及装置 | |
CN114722048A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN113313049A (zh) | 超参数的确定方法、装置、设备、存储介质以及计算机程序产品 | |
CN114091686A (zh) | 数据处理方法、装置、电子设备和存储介质 | |
CN113240082A (zh) | 一种迁移学习的方法及装置 | |
CN113963433B (zh) | 运动搜索方法、装置、电子设备及存储介质 |
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 |