CN113741863A - 基于算法模型的应用程序生成方法、电子设备及存储介质 - Google Patents
基于算法模型的应用程序生成方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113741863A CN113741863A CN202110861385.0A CN202110861385A CN113741863A CN 113741863 A CN113741863 A CN 113741863A CN 202110861385 A CN202110861385 A CN 202110861385A CN 113741863 A CN113741863 A CN 113741863A
- Authority
- CN
- China
- Prior art keywords
- algorithm model
- data set
- model
- terminal
- application
- 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.)
- Pending
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 270
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000012549 training Methods 0.000 claims abstract description 72
- 238000012545 processing Methods 0.000 claims abstract description 22
- 238000007781 pre-processing Methods 0.000 claims abstract description 9
- 238000012795 verification Methods 0.000 claims description 41
- 230000015654 memory Effects 0.000 claims description 21
- 238000005457 optimization Methods 0.000 claims description 12
- 238000002372 labelling Methods 0.000 claims description 10
- 238000009434 installation Methods 0.000 claims description 6
- 238000013473 artificial intelligence Methods 0.000 abstract description 20
- 230000008569 process Effects 0.000 description 12
- 238000013135 deep learning Methods 0.000 description 9
- 238000011161 development Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000010355 oscillation Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000005764 inhibitory process Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000013138 pruning Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种基于算法模型的应用程序生成方法、电子设备及存储介质,涉及人工智能领域。通过获取初始数据集,对初始数据集进行预处理后得到训练数据集,根据训练数据集对预设的初始算法模型进行训练,生成云端算法模型,对云端算法模型进行结构处理,得到终端算法模型,根据终端算法模型生成应用于终端的应用程序,能够在智能终端设备上灵活实现AI算法的生成及应用,满足业务需求。
Description
技术领域
本申请涉及人工智能领域,尤其是涉及一种基于算法模型的应用程序生成方法、电子设备及存储介质。
背景技术
深度学习作为机器学习的一个分支,近年来不断得到发展并且当前已经被广泛用于不同领域。深度学习模型可以被用于终端设备的视觉处理、语音识别、自然语言处理等。但是深度学习需要依赖于终端设备的AI(Artificial Intelligence,人工智能)计算能力等,由于AI计算能力的差异,导致深度学习无法随意部署到终端设备上,例如智能视频终端等终端设备,而智能视频终端的开发技术不同,具备的AI计算能力不同,有些具备AI计算能力的智能视频终端不能按业务需求,对终端设备中内置算法进行在线升级、扩展及替换,导致相关的AI算法无法有效应用到具体业务领域。
发明内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种基于算法模型的应用程序生成方法,能够在智能终端设备上灵活实现AI算法的生成及应用,满足业务需求。
本申请还提出一种具有上述基于算法模型的应用程序生成方法的电子设备。
本申请还提出一种具有上述基于算法模型的应用程序生成方法的计算机可读存储介质。
根据本申请的第一方面实施例的基于算法模型的应用程序生成方法,包括:获取初始数据集;对所述初始数据集进行预处理,得到训练数据集;根据所述训练数据集对预设的初始算法模型进行训练,生成云端算法模型;调整所述云端算法模型的网络结构进行调整,得到终端算法模型;根据所述终端算法模型生成应用于终端的应用程序。
根据本申请实施例的基于算法模型的应用程序生成方法,至少具有如下有益效果:通过获取初始数据集,对初始数据集进行预处理后得到训练数据集,根据训练数据集对预设的初始算法模型进行训练,生成云端算法模型,对云端算法模型的网络结构进行调整,得到终端算法模型,根据终端算法模型生成应用于终端的应用程序,能够在智能终端设备上灵活实现AI算法的生成及应用,满足业务需求。
根据本申请的一些实施例,对所述初始数据集进行预处理,得到训练数据集,包括:对所述初始数据集进行标准化处理,得到标准化数据集;对所述标准化数据进行数据增强处理,得到增强数据集;对所述增强数据进行标注处理,得到所述训练数据集。
根据本申请的一些实施例,所述根据所述训练数据集对预设的所述初始算法模型进行训练,生成云端算法模型,包括:对所述初始算法模型的模型参数进行优化处理,得到优化算法模型;根据所述训练数据集对所述优化算法模型进行预设次数的迭代训练,得到多个迭代算法模型;从所述多个迭代算法模型选取出所述云端算法模型。
根据本申请的一些实施例,从所述多个迭代算法模型选取出所述云端算法模型,包括:获取所述初始数据集中的验证数据集;将所述验证数据集输入所述迭代算法模型,得到所述多个迭代算法模型的准确率;根据预设的准确阈值和所述准确率从所述迭代算法模型中选取出所述云端算法模型。
根据本申请的一些实施例,所述方法还包括:将所述验证数据集输入到所述迭代算法模型,得到验证结果;根据所述验证结果获取所述验证数据集中的错误数据集;根据所述错误数据集对所述迭代算法模型进行训练。
根据本申请的一些实施例,所述对所述云端算法模型进行结构处理,得到终端算法模型,包括:根据所述终端的资源处理能力对所述云端算法模型的网络结构进行调整,得到所述终端算法模型。
根据本申请的一些实施例,所述根据所述终端算法模型生成应用于终端的应用程序,包括:对所述云端算法模型的预设应用推理库的配置信息进行调整,得到所述终端算法模型的模型应用推理库;根据所述模型应用推理库和预设的模型资源生成所述应用程序。
根据本申请的一些实施例,所述方法还包括:将所述应用程序下发到所述终端进行安装;获取所述终端根据所述应用程序返回的识别结果;根据所述识别结果对所述终端算法模型进行更新;根据更新后的所述终端算法模型对所述应用程序进行更新。
根据本申请的第二方面实施例的电子设备,包括:至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如第一方面所述的基于算法模型的应用程序生成方法。
根据本申请的电子设备,至少具有如下有益效果:通过执行第一方面实施例中提到的基于算法模型的应用程序生成方法,能够在智能终端设备上灵活实现AI算法的生成及应用,满足业务需求。
根据本申请的第四方面实施例的计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面所述的基于算法模型的应用程序生成方法。
根据本申请的计算机可读存储介质,至少具有如下有益效果:通过执行第一方面实施例中提到的基于算法模型的应用程序生成方法,能够在智能终端设备上灵活实现AI算法的生成及应用,满足业务需求。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
图1为本申请实施例中基于算法模型的应用程序生成方法的一具体流程示意图;
图2为基于算法模型的应用程序生成方法图1的步骤S200的一具体流程示意图;
图3为基于算法模型的应用程序生成方法图1的步骤S300的一具体流程示意图;
图4为基于算法模型的应用程序生成方法图3的步骤S330的一具体流程示意图;
图5为基于算法模型的应用程序生成方法图3的步骤S330的另一具体流程示意图;
图6为基于算法模型的应用程序生成方法图1的步骤S500的一具体流程示意图;
图7为本申请另一实施例中基于算法模型的应用程序生成方法的部分流程示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
需要说明的是,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同流程图中的顺序执行所示出或描述的步骤。如果涉及到“若干”,其含义是一个以上,如果涉及到“多个”,其含义是两个以上,如果涉及到“以下”,均应理解为包括本数。本文所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本申请的实施例,并且除非另外要求,否则不会对本申请的范围施加限制。大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
需要说明的是,如无特殊说明,在实施例中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本申请。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
深度学习作为机器学习的一个分支,近年来不断得到发展并且当前已经被广泛用于不同领域。深度学习模型可以被用于终端设备的视觉处理、语音识别、自然语言处理等。但是深度学习需要依赖于终端设备的AI(Artificial Intelligence,人工智能)计算能力等,由于AI计算能力的差异,导致深度学习无法随意部署到终端设备上,例如智能视频终端等终端设备,而智能视频终端的开发技术不同,具备的AI计算能力不同,有些具备AI计算能力的智能视频终端不能按业务需求,对终端设备中内置算法进行在线升级、扩展及替换,导致相关的AI算法无法有效应用到具体业务领域。
基于此,本申请实施例提供了一种基于算法模型的应用程序生成方法、电子设备及存储介质,能够在智能终端设备上灵活实现AI算法的生成及应用,满足业务需求。
第一方面,本申请实施例提供了一种基于算法模型的应用程序生成方法。
需要说明的是,本申请实施例中提到的基于算法模型的应用程序生成方法执行于云端服务器,通过在云端服务器处执行该方法,以得到能够下发至终端设备的算法模型及对应的应用程序。本申请实施例中提到的终端设备可以是可以为移动终端设备,也可以为非移动终端设备。移动终端设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载终端设备、可穿戴设备、超级移动个人计算机、上网本、个人数字助理、CPE、UFI(无线热点设备)等;非移动终端设备可以为个人计算机、电视机、柜员机或者自助机等;本申请实施例中以智能视频终端设备为例进行说明。
在一些实施例中,参照图1,示出了本申请实施例中基于算法模型的应用程序生成方法的流程示意图。其具体包括步骤:
S100,获取初始数据集;
S200,对初始数据集进行预处理,得到训练数据集;
S300,根据训练数据集对预设的初始算法模型进行训练,生成云端算法模型;
S400,调整云端算法模型的网络结构,得到终端算法模型;
S500,根据终端算法模型生成应用于终端的应用程序。
在步骤S100中,通过数据采集的方式获取到一定数量的初始数据集,该初始数据集可以是基于不同场景、不同物体形态、不同物体种类、不同尺度和不同拍摄角度等情况的图片的集合,即初始数据集包含若干个采集到的图片,可用于后续对算法模型进行训练。
在步骤S200中,在使用数据集对预设的初始算法模型进行训练之前,需要对初始数据集进行预处理,以统一初始数据集的形式,得到预处理后的训练数据集,其中预处理是指从多角度对初始数据集进行处理,例如数据集的尺寸、大小、颜色通道分量等。
在一些实施例中,参考图2,步骤S200具体还包括步骤:
S210,对初始数据集进行标准化处理,得到标准化数据集;
S220,对标准化数据集进行数据增强处理,得到增强数据集;
S230,对增强数据集进行标注处理,得到训练数据集。
在步骤S210中,对初始数据集进行标准化处理,得到标准化数据集,其中数据集以采集到的图片集为例,对图片集中每一个图片进行标准化处理,例如将每一个图片的图片格式统一为jpg或者png;按照darknet53骨干网络的输入要求将每一个图片的图片大小处理为416*416大小,并提供R(红)、G(绿)、B(蓝)3个通道分量进行标准化处理。
在步骤S220中,为了提升预设的初始算法模型在训练后的识别准确率,可以对标准化数据集进行数据增强处理,以得到增强数据集,其中数据增强数据是对数据集进行形式、数据参数等方面的调整,例如以数据集中的图片数据为例,可以通过对图片进行水平翻转、角度旋转、饱和度调整、曝光量调整、色调调整、随机裁剪、平移变换和光照变换等任意一种或多种数据增强手段来进行处理,以得到处理后的增强数据集,从而提升初始算法模型在训练后的识别准确率。
在步骤S230中,对进行数据增强处理后的增强数据集进行标注处理,得到标注处理后的训练数据集,其中标注处理是指在增强数据集中的关键信息进行标注,以便在进行模型训练时,能够针对标注的信息进行集中训练。以增强数据集中的某一图片为例,通过使用LabelImg工具对图片中的关键部分进行标注,例如图片中表示物体、人物、景色等信息进行标注。LabelImg是一个图形图像注释工具,采用Python技术编写而成,并使用Qt(应用程序开发框架)作为其图形界面。
在步骤S300中,根据获取到的训练数据集对预设的初始算法模型进行训练,生成云端算法模型。其中训练数据集是指通过执行步骤S200中所提到的预处理所得到的训练数据集,该训练数据集分别经过标准化处理、数据增强处理以及标注处理,以适用于后续的算法模型的训练;初始算法模型是待训练的初始的算法模型,以电网行业为例,选择应用于电网的深度学习的算法模型;云端算法模型是指具备应用于云端服务器的网络结构,该网络结构基于云端服务器的资源能力、计算能力、电池电量等方面所构建。在实际应用中,通过选用骨干网络为darknet53的yolov3算法对该初始算法模型进行训练,以得到应用于云端服务器的算法模型。
在一些实施例中,参考图3,步骤S300具体还包括步骤:
S310,对初始算法模型的模型参数进行优化处理,得到优化算法模型;
S320,根据训练数据集对优化算法模型进行预设次数的迭代训练,得到多个迭代算法模型;
S330,从多个迭代算法模型选取出云端算法模型。
在步骤S310中,对初始算法模型中的模型参数进行优化处理,得到优化处理后的优化算法模型,其中优化算法模型是指对初始算法模型中的模型参数进行调优后所得到的算法模型;优化处理是指针对初始算法模型中的模型参数进行调整,以使得初始算法模型中的模型参数能够进一步适配训练过程,例如对算法模型的学习率、动量参数、权重衰减正则项等模型参数进行调整。在实际应用中,不同的模型参数对算法模型的训练过程具有不同的效果,例如,以学习率的调优为例,当算法模型中的学习率的数值越大时,则算法模型的训练速度越快,易产生梯度爆炸和易振荡,导致无法收敛于训练的最优解训练结果;当算法模型中的学习率的数值越小时,则算法模型的训练速度越慢,且易过训练拟合和模型训练的收敛速度慢。以动量参数的调优为例,动量参数是利用当前时刻的梯度与历史时刻梯度进行指数加权平均后再更新梯度值,可以利用动量参数的训练机制缓解梯度下降过程中产生的震荡,实现对原始梯度进行平滑,使梯度下降过程的震荡幅度减小,收敛于最优解的路线更接近于同一个方向,从而加快训练速度;以权重衰减正则项为例,权重衰减正则项参数越大对过拟合的抑制能力越强,权重衰减正则项参数越小对过拟合的抑制能力越弱。
在实际应用中,针对学习率参数的调优,在初始训练时可以设置学习率参数较大,以提高学习速度,在经过一定轮数的训练后,则逐渐减小学习率参数;针对动量参数的调优,可以在初始训练师设置较小的动量参数,在经过一定轮数的训练后,则逐渐增大动量参数;针对权重衰减正则项参数的调优,为了防止过拟合,可以将学习后的参数按照固定比例进行降低,例如在初始时可以将权重衰减正则项参数通常设置为0.0005,当出现过拟合时,可以适当增大权重衰减正则项参数缓解拟合现象。通过上述对各个模型参数的调优,以保证算法模型的训练过程的充分性及准确性,提高算法模型的识别准确率。
在步骤S320中,当对初始算法模型的模型参数进行优化处理后,得到已调优模型参数所对应的优化算法模型,将训练数据集作为优化算法模型的输入,根据预设迭代次数对优化算法模型进行迭代训练,根据迭代训练的次数生成对应的多个迭代算法模型,即每经过一次迭代训练,则生成一个迭代算法模型,在原有的迭代算法模型上进一步进行迭代训练,则生成新的迭代算法模型。在实际应用中,通过训练数据集对初始算法模型进行训练的过程是与对模型参数的调优进行的,例如依次输入训练数据集对算法模型进行训练,在训练一定轮数后,生成新的迭代算法模型,此时可以对生成的新的迭代算法模型进行模型参数调优,调优后再将训练数据集输入到算法模型中,从而得到另一个新的迭代算法模型,循环执行迭代训练步骤,最终得到多个迭代算法模型。
在步骤S330中,从多个训练生成的迭代算法模型中选取一个算法模型作为应用于云端服务器的云端算法模型。在实际应用中,可以验证迭代算法模型的识别准确率,选取各个迭代算法模型中识别准确率最高的算法模型作为云端算法模型。
在一些实施例中,参考图4,步骤S330中具体还包括步骤:
S331,获取初始数据集中的验证数据集;
S332,将验证数据集输入迭代算法模型,得到多个迭代算法模型的准确率;
S333,根据预设的准确阈值和准确率从迭代算法模型中选取出云端算法模型。
在步骤S331中,获取初始数据集中的验证数据集,在实际应用中,初始数据集包括用于进行后续模型训练的数据集和用于验证训练后的算法模型的识别准确率的验证数据集。其中,验证数据集为未经过预处理的数据集,可直接作为训练后的算法模型的输入,以对算法模型的识别准确率进行验证;获取验证数据集的方式可以在采集初始数据集时将需要用于验证的数据集进行划分或者标注等方式,以用于后续方便进行获取,本申请不针对获取的方式进行限定。
在步骤S332中,将验证数据集作为迭代算法模型的输入,即通过迭代算法模型对验证数据集进行识别,得到识别结果,而根据识别结果能够计算迭代算法模型的识别准确率。具体地说,验证数据集包含若干个用于验证算法模型准确率的验证图片,将若干个验证图片输入到通过执行步骤S320中所得到的多个迭代算法模型中,每一个迭代算法模型在对若干个验证图片进行识别后,可以得到对应的识别结果,计算识别结果中识别正确的数目以及识别错误的数目,从而计算出每一个迭代算法模型对应的准确率。
在步骤S333中,将预设的准确阈值和计算得到的迭代算法模型的准确率进行比较,选取准确率大于准确阈值的迭代算法模型作为云端算法模型,若存在多个准确率大于准确阈值的迭代算法模型,则选取准确率最高的迭代算法模型作为云端算法模型。其中准确阈值是指根据实际业务场景进行设定的阈值,用来判断算法模型的识别准确率是否符合条件,例如若算法模型是用于识别隐患则,准确阈值可设为较低,如90%;若算法模型是用于识别缺陷,则准确阈值可设为较高,比如95%。
在一些实施例中,参考图5,本申请实施例中具体还包括步骤:
S334,将验证数据集输入到迭代算法模型,得到验证结果;
S335,根据验证结果获取验证数据集中的错误数据集;
S336,根据错误数据集对迭代算法模型进行训练。
在步骤S334和步骤S335中,将验证数据集作为迭代算法模型的输入,即通过迭代算法模型对验证数据集进行识别,得到验证结果,而根据验证结果能够得到迭代算法模型对验证数据集进行识别后的识别正确的数据集以及识别错误的数据集,其中识别错误的数据集则定义为错误数据集。具体地说,验证数据集包含若干个用于验证算法模型准确率的验证图片,将若干个验证图片输入到通过执行步骤S320中所得到的多个迭代算法模型中,每一个迭代算法模型在对若干个验证图片进行识别后,可以得到对应的验证结果,通过验证结果能够获取到验证数据集通过迭代算法模型识别错误的错误数据集。
在步骤S336中,对得到的错误数据集进行预处理后,作为训练数据集,输入迭代算法模型进行训练,以提升算法模型的识别准确率;或者采集表达信息更多的数据集作为训练数据集,输入迭代算法模型进行训练,以提升算法模型的识别准确率,具体对算法模型准确率的提升方式,本申请不作具体限定。在本申请实施例中,将识别错误的错误数据集再次输入到迭代算法模型进行训练,能够进一步提升迭代算法模型的识别准确率。
在步骤S400中,从多个迭代算法模型中选取出准确率的迭代算法模型作为云端算法模型后,对云端算法模型进行结构处理,得到终端算法模型。其中结构处理是指对算法模型的网络结构进行调整,以适用于具体的应用场景。需要说明的是,本申请实施例中的云端算法模型具备应用于云端服务器的网络结构,而终端算法模型则具备应用于终端设备的网络结构;网络结构的异同取决于算法模型所适用的环境,例如云端服务器相较于终端设备而已,在计算能力、存储资源和电池电量等方面都优于终端设备,云端服务器在网络结构方面也会优于终端设备的网络结构。并且由于终端设备往往是嵌入式设备,在计算能力、存储资源和电池电量等方面均受限,因此需要对算法模型的网络结构进行处理,将其从适用于云端服务器的网络结构转化为适用于终端设备的网络结构,从而提高算法运算效率,以及算法模型的适用性。在一些实施例中,需要获取终端设备的资源处理能力,其中资源处理能力包括但不限于终端设备的计算能力、存储资源和电池电量等能力,通过终端设备对应的资源处理能力对云端算法模型的网络结构进行调整,得到调整后的算法模型即终端算法模型。在实际应用中,可以对云端算法模型的网络结构进行裁剪压缩,例如通道和层剪枝,首先对云端算法模型进行稀疏训练,通过对权重更新加以正则项诱导,使得大部分参数都为0,使其更加稀疏;然后根据层的权重对不在阈值范围内的通道和层进行剪枝,实现算法模型深度和宽度的压缩,将云端算法莫想的网络结构转化为适应于终端设备所能运行的算法模型的网络结构,从而提升算法运算效率。另外,可以对云端算法模型的参数、权重和数据进行低比特量化压缩等处理,如将浮点32位的权重和偏置参数压缩为int8位的数值,使算法模型的网络结构更加轻量化,从而达到节省算法模型的存储空间、降低传输时延、提高计算效率,达到性能提升与优化的目标。
在步骤S500中,根据调整网络结构后所得到的算法模型即终端算法模型生成应用于终端设备的应用程序。需要说明的是,应用程序的生成是执行于云端服务器的,由云端服务器基于云端的开发推理库进行应用程序的生成,在实际应用中,由于云端的芯片架构和指令集不一样,终端设备的运行算法模型的应用程序的生成依赖于智能视频终端的推理库,因此需运用C语言开发支持安装、更新和卸载的算法应用。
在一些实施例中,参考图6,步骤S500具体还包括:
S510,对云端算法模型的预设应用推理库的配置信息进行调整,得到终端算法模型的模型应用推理库;
S520,根据模型应用推理库和预设的模型资源生成应用程序。
在步骤S510和步骤S520中,对云端算法模型的预设应用推理库的配置信息进行调整后,得到终端算法模型所对应的模型应用推理库,并且根据该模型应用推理库终端算法模型所需要的模型资源开发生成应用程序。其中应用推理库提供图像缩放、裁剪、转换和统计直方图等专用图像加速算子,提供开放接口,并支持对应用推理库不支持的私有层开发实现,从而实现神经网络算法模型前向推理;模型资源是指应用程序生成所需的内存以及算法模型所占用的内存资源;应用推理库的配置信息包括但不限于NPU(网络处理器,neural-network processing units)硬核、数据类型和网络输入的尺度和通道等信息。在实际应用中,获取应用程序生成所需的内存以及算法模型所需内存并创建电网算法模型和创建智能视频终端的推理库句柄,设置应用推理库使用的NPU硬核、数据类型和网络输入的尺度和通道等推理库所需的配置信息,利用终端设备的应用推理库实现算法模型的前向推理和识别,最后释放应用推理库和算法模型的模型资源,从而实现算法模型所对应的深度学习算法能够在终端设备进行运行和识别。
在一些实施例中,参考图7,本申请实施例中具体还包括步骤:
S610,将应用程序下发到终端进行安装;
S620,获取终端根据应用程序返回的识别结果;
S630,根据识别结果对终端算法模型进行更新;
S640,根据更新后的终端算法模型对应用程序进行更新。
在步骤S610中,云端服务器将生成的应用程序下发到终端设备处,以使得终端设备能够安装此应用程序进行使用,在实际应用中,可以通过http(Hypertext TransferProtocol,超文本传输协议)协议的形式将应用程序下发到终端设备,终端设备接收到以http协议下发的应用程序所对应的数据时,即可进行安装。该应用程序搭载有构建好的终端算法模型,能够进行深度学习以及识别等,直接在终端设备处得到对应的识别结果。
在步骤S620中,当终端设备安装好应用程序时,能够通过应用程序获取到待识别的数据集,对数据集进行识别,以在终端设备本地得到对应的识别结果。并且,云端服务器还能够获取终端设备通过应用程序获取到的识别结果,即终端设备具备与云端服务器通信连接的能力,通过该通信连接将识别结果返回给云端服务器,以使得云端服务器能够实时接收终端设备的运行状态及算法模型的工作状态。
在步骤S630中,当云端服务器获取到终端设备的识别结果后,即可根据识别结果判断是否需要对终端设备安装的应用程序所搭载的终端算法模型进行更新,以保证识别结果的准确率。具体地说,识别结果为终端设备通过应用程序对待识别的数据集进行识别后得到的结果,该结果能够直观地表达对数据集的识别准确率。而云端服务器则能够通过识别结果获取到终端设备中算法是否需要进行更新,例如当识别准确率未满足预期的期望值时,则可以通过执行步骤S100至步骤S400中所提到的终端算法模型的生成过程,即重新获取新的数据集对终端算法模型进行训练,重新训练生成一个新的终端算法模型,并且保证该终端算法模型的准确度高于终端设备中的算法模型,并且将生成的新的终端算法模型下发到终端设备中的应用程序进行搭载,以更新原本所搭载的终端算法模型。另外,在实际应用中,云端服务器可以实时地对终端设备中安装的应用程序进行在线安装、在线更新和在线卸载,具体过程与对终端算法模型的更新方式相雷同,本申请不做具体赘述。
在本申请实施例中,通过获取初始数据集,对初始数据集进行预处理后得到训练数据集,根据训练数据集对预设的初始算法模型进行训练,生成云端算法模型,对云端算法模型进行结构处理,得到终端算法模型,根据终端算法模型生成应用于终端的应用程序,能够在智能终端设备上灵活实现AI算法的生成及应用,满足业务需求。
第二方面,本申请实施例还提供了一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器;
其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行第一方面实施例中的基于算法模型的应用程序生成方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本申请第一方面实施例中的基于算法模型的应用程序生成方法。处理器通过运行存储在存储器中的非暂态软件程序以及指令,从而实现上述第一方面实施例中的基于算法模型的应用程序生成方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述第一方面实施例中的基于算法模型的应用程序生成方法。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述第一方面实施例中的基于算法模型的应用程序生成方法所需的非暂态软件程序以及指令存储在存储器中,当被一个或者多个处理器执行时,执行上述第一方面实施例中的基于算法模型的应用程序生成方法。
第三方面,本申请实施例还提供了计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于:执行第一方面实施例中的基于算法模型的应用程序生成方法;
在一些实施例中,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,被第二方面实施例的电子设备中的一个处理器执行,可使得上述一个或多个处理器执行上述第一方面实施例中的基于算法模型的应用程序生成方法。
以上所描述的设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
在本说明书的描述中,参考术语“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。
Claims (10)
1.基于算法模型的应用程序生成方法,其特征在于,包括:
获取初始数据集;
对所述初始数据集进行预处理,得到训练数据集;
根据所述训练数据集对预设的初始算法模型进行训练,生成云端算法模型;
调整所述云端算法模型的网络结构,得到终端算法模型;
根据所述终端算法模型生成应用于终端的应用程序。
2.根据权利要求1所述的基于算法模型的应用程序生成方法,其特征在于,对所述初始数据集进行预处理,得到训练数据集,包括:
对所述初始数据集进行标准化处理,得到标准化数据集;
对所述标准化数据集进行数据增强处理,得到增强数据集;
对所述增强数据集进行标注处理,得到所述训练数据集。
3.根据权利要求1所述的基于算法模型的应用程序生成方法,其特征在于,所述根据所述训练数据集对预设的初始算法模型进行训练,生成云端算法模型,包括:
对所述初始算法模型的模型参数进行优化处理,得到优化算法模型;
根据所述训练数据集对所述优化算法模型进行预设迭代次数的迭代训练,得到多个迭代算法模型;
从所述多个迭代算法模型选取出所述云端算法模型。
4.根据权利要求3所述的基于算法模型的应用程序生成方法,其特征在于,从所述多个迭代算法模型选取出所述云端算法模型,包括:
获取所述初始数据集中的验证数据集;
将所述验证数据集输入所述迭代算法模型,得到所述多个迭代算法模型的准确率;
根据预设的准确阈值和所述准确率从所述迭代算法模型中选取出所述云端算法模型。
5.根据权利要求4所述的基于算法模型的应用程序生成方法,其特征在于,所述方法还包括:
将所述验证数据集输入到所述迭代算法模型,得到验证结果;
根据所述验证结果获取所述验证数据集中的错误数据集;
根据所述错误数据集对所述迭代算法模型进行训练。
6.根据权利要求1所述的基于算法模型的应用程序生成方法,其特征在于,所述调整所述云端算法模型的网络结构,得到终端算法模型,包括:
根据所述终端的资源处理能力对所述云端算法模型的网络结构进行调整,得到所述终端算法模型。
7.根据权利要求1所述的基于算法模型的应用程序生成方法,其特征在于,所述根据所述终端算法模型生成应用于终端的应用程序,包括:
对所述云端算法模型的预设应用推理库的配置信息进行调整,得到所述终端算法模型的模型应用推理库;
根据所述模型应用推理库和预设的模型资源生成所述应用程序。
8.根据权利要求1所述的基于算法模型的应用程序生成方法,其特征在于,所述方法还包括:
将所述应用程序下发到所述终端进行安装;
获取所述终端根据所述应用程序返回的识别结果;
根据所述识别结果对所述终端算法模型进行更新;
根据更新后的所述终端算法模型对所述应用程序进行更新。
9.电子设备,其特征在于,包括:
至少一个处理器,以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如权利要求1至8任一项所述的基于算法模型的应用程序生成方法。
10.计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至8任一项所述的基于算法模型的应用程序生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110861385.0A CN113741863A (zh) | 2021-07-29 | 2021-07-29 | 基于算法模型的应用程序生成方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110861385.0A CN113741863A (zh) | 2021-07-29 | 2021-07-29 | 基于算法模型的应用程序生成方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113741863A true CN113741863A (zh) | 2021-12-03 |
Family
ID=78729462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110861385.0A Pending CN113741863A (zh) | 2021-07-29 | 2021-07-29 | 基于算法模型的应用程序生成方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113741863A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115061679A (zh) * | 2022-08-08 | 2022-09-16 | 杭州实在智能科技有限公司 | 离线rpa元素拾取方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109656529A (zh) * | 2018-10-31 | 2019-04-19 | 北京大学 | 一种针对客户端深度学习的在线定制化方法及系统 |
US20200057612A1 (en) * | 2017-04-27 | 2020-02-20 | Intuit Inc. | Methods, systems, and computer program product for automatic generation of software application code |
CN111316227A (zh) * | 2018-08-20 | 2020-06-19 | 华为技术有限公司 | 一种调试应用程序的方法及设备 |
US10867241B1 (en) * | 2016-09-26 | 2020-12-15 | Clarifai, Inc. | Systems and methods for cooperative machine learning across multiple client computing platforms and the cloud enabling off-line deep neural network operations on client computing platforms |
CN112232509A (zh) * | 2020-10-10 | 2021-01-15 | 苏州浪潮智能科技有限公司 | 一种边缘计算模型压缩优化方法、装置、设备及可读介质 |
CN112966824A (zh) * | 2021-01-28 | 2021-06-15 | 北京百度网讯科技有限公司 | 推理库的部署方法、装置和电子设备 |
-
2021
- 2021-07-29 CN CN202110861385.0A patent/CN113741863A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10867241B1 (en) * | 2016-09-26 | 2020-12-15 | Clarifai, Inc. | Systems and methods for cooperative machine learning across multiple client computing platforms and the cloud enabling off-line deep neural network operations on client computing platforms |
US20200057612A1 (en) * | 2017-04-27 | 2020-02-20 | Intuit Inc. | Methods, systems, and computer program product for automatic generation of software application code |
CN111316227A (zh) * | 2018-08-20 | 2020-06-19 | 华为技术有限公司 | 一种调试应用程序的方法及设备 |
CN109656529A (zh) * | 2018-10-31 | 2019-04-19 | 北京大学 | 一种针对客户端深度学习的在线定制化方法及系统 |
CN112232509A (zh) * | 2020-10-10 | 2021-01-15 | 苏州浪潮智能科技有限公司 | 一种边缘计算模型压缩优化方法、装置、设备及可读介质 |
CN112966824A (zh) * | 2021-01-28 | 2021-06-15 | 北京百度网讯科技有限公司 | 推理库的部署方法、装置和电子设备 |
Non-Patent Citations (1)
Title |
---|
苗芃 等: "基于迁移学习的植物花朵图像识别方法", 电脑知识与技术, vol. 16, no. 07, 5 March 2020 (2020-03-05), pages 201 - 204 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115061679A (zh) * | 2022-08-08 | 2022-09-16 | 杭州实在智能科技有限公司 | 离线rpa元素拾取方法及系统 |
CN115061679B (zh) * | 2022-08-08 | 2022-11-11 | 杭州实在智能科技有限公司 | 离线rpa元素拾取方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10991074B2 (en) | Transforming source domain images into target domain images | |
US11783227B2 (en) | Method, apparatus, device and readable medium for transfer learning in machine learning | |
CN109492128B (zh) | 用于生成模型的方法和装置 | |
CN111369430B (zh) | 基于移动深度学习引擎的移动端人像智能背景替换方法 | |
CN112581443A (zh) | 一种风力发电机叶片表面损伤轻量化识别方法 | |
CN113177538B (zh) | 一种视频循环识别方法、装置、计算机设备及存储介质 | |
WO2022105197A1 (en) | Systems and methods for image detection | |
CN116258941A (zh) | 基于Android平台的yolox目标检测轻量化改进方法 | |
CN111144571B (zh) | 一种深度学习推理运算方法及中间件 | |
CN111104954A (zh) | 一种对象分类的方法与装置 | |
CN114429208A (zh) | 基于残差结构剪枝的模型压缩方法、装置、设备及介质 | |
CN110427998A (zh) | 模型训练、目标检测方法及装置、电子设备、存储介质 | |
CN113741863A (zh) | 基于算法模型的应用程序生成方法、电子设备及存储介质 | |
CN114240770A (zh) | 一种图像处理方法、装置、服务器及存储介质 | |
CN112969032A (zh) | 光照模式识别方法、装置、计算机设备及存储介质 | |
CN115577797B (zh) | 一种基于本地噪声感知的联邦学习优化方法及系统 | |
CN115146775B (zh) | 边缘设备推理加速方法、装置和数据处理系统 | |
CN115409997A (zh) | 一种数据标注方法、装置、设备及介质 | |
CN111325210B (zh) | 用于输出信息的方法和装置 | |
CN110084264B (zh) | 一种基于改进随机梯度下降的图像分类方法及装置 | |
CN115294333B (zh) | 一种图像处理方法、相关设备、存储介质及程序产品 | |
CN113158948B (zh) | 信息生成方法、装置、终端设备 | |
CN113496256B (zh) | 一种图像标注模型训练方法、标注方法、装置、设备及介质 | |
CN117115483A (zh) | 一种基于异构图像特征融合的模板匹配方法、介质及设备 | |
CN115661585B (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 |