一种基于深度学习的评测实体机器人响应的方法及其系统
文献发布时间:2023-06-19 09:47:53
技术领域
本发明涉及机械自动化测试领域,特别是一种基于深度学习的评测实体机器人响应的方法及其系统。
背景技术
实体机器人的响应速度是机器人很重要的指标,其直接影响机器人的灵活度。目前机器人有各种评测的标准,但是仅仅针对整体的机器人响应速度做测试,并且测试的方式很繁琐,准确性不高。在研发机器人的过程中需要对机器人的每个执行环节的响应速度进行评测,使得机器人整体的响应速度能到达标准,甚至能够达到业界的顶峰。
深度学习 (DL, Deep Learning)是机器学习(ML, Machine Learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI,Artificial Intelligence) 。深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
现有技术中的激情人响应的测试存在如下缺点:1、业界中实体机器人响应测试多数是等机器人装配好后,使用人工及秒表的方式对其整体响应速度进行测试,这种测试方式繁琐且测试效率低。
2、实体机器人由机械臂、语音对话、人脸识别、视频图像等等多个模块组成,并且每个模块中也存在多个组件组成,比如语音对话,涉及到麦克风的拾音能力及语音识别等等,若只是按整机去测试,会出现无法精确定位问题,到底是哪个节点响应速度慢。
3、实体机器人是由软硬件组成,每台设备多少会存在区别,并且受使用环境,比如说网络的不同,也会影响机器人的响应速度,对于每台实体机器人应该进行监控及评测是很有必要,若是以目前的人工技术进行测试,达不到对应的效果,并且人工成本很高,对于一些运营中的机器人不可能进行多次现场测试。
4、每次新增实体机器人或者新增新的能力,就需要进行评测,这个是很庞大的工作量,并且人工进行评测也很吃力,人工的能力无法达到。
发明内容
为克服上述问题,本发明的目的是提供一种基于深度学习的评测实体机器人响应的方法,能自动化完成实体机器人的各个能力的响应速度的评测,从多方面去考核实体机器人的能力,提升了评测结果的可信度。
本发明采用以下方案实现:一种基于深度学习的评测实体机器人响应的方法,所述方法包括如下步骤:
步骤S1、监控每台实体机器人的情况,将对应的机器人设备信息推送给用户,能实时了解设备情况;创建评测任务,选择要评测的机器人,设置要评测的机器人执行环节的响应时间、次数、时长;
步骤S2、监控是否有待评测任务,若是,则根据评测任务下发的评测信息,发起执行评测请求,下发执行评测命令,执行评测;否,则等待消息;
步骤S3、存储每台机器人的评测数据,以实体机器人及每次测试作为唯一标识来记录数据,为后续进行数据分析及深度学习做准备;
步骤S4、对评测的结果进行数据分析、评测结果的统计、评测覆盖率,以图形化的方式进行展示;
步骤S5、针对每次测试的方式及输出的测试数据进行深度学习,优化测试方式及测试报告。
进一步的,所述步骤S1进一步具体为:监控实体机器人,若是有新实体机器人被监控到,就会下发对应机器人的信息给用户,若是设定时间内已进行过每个执行环节响应时间评测的实体机器人上线 ,则不通知用户,若是不符合条件的机器人上线,会通知用户,是否要再次进行评测;创建监控运营中机器人的响应速度,设置要监控的执行环节、时间点,并且设置响应速度预警阙值,超出该值就上报异常;让用户选择是创建评测任务还是运营中的机器人设备进行监控,设置最大能接受的响应时间阙值,超出时间阈值就上报异常。
进一步的,所述步骤S2进一步具体为:步骤S21、实时检测是否有待执行评测的请求;
步骤S22、若有执行评测的请求,下发评测命令和评测任务,所述评测任务包括:语音识别、意图解析、语音合成、机械臂、播放音乐、或者机器人脑袋动作;开始执行评测任务,启动机器人开始按评测任务要求去执行;
步骤S23、对机器人在评测过程的响应时间进行记录,并匹配机器人,记录每个动作的响应时间、执行该动作的时间点、网络、下发指令、硬件信息;
步骤S24、若无待执行评测的请求,就待机中。
进一步的,所述步骤S4进一步具体为:读取存储的评测数据,进行数据分析,获得评测数据分布及实体机器人每个能力中的每个环节的响应时间,及可优化的建议;所述数据分析具体为:存储每次测试的数据,根据需要可选当前的测试数据或者是历史测试的数据;
再选择要分析的维度,该维度包括机器人的每个节点的响应时间、网络延时、CPU情况、内存情况;
设置当前每个维度的标准阙值,分析每条测试数据是否在标准阙值范围内,若是没有,输出超期的值,并且输出初步的数据结果。
进一步的,所述获得评测数据分布及实体机器人每个能力中的每个环节的响应时间,及可优化的建议,具体为:设置每个维度的标准阙值后,根据初步的数据结果,将数据结果使用程序实现按每个分布点显示为散点图;
程序将散点图与预先已设置好在标准化内的散点图进行比对每个点位置,若是出现不符合位置,提示位置及数值,并以提示的方式进行警告,来得到数据分布的情况;
读取要计算的测试数据进行取平均值计算;根据当前测试的平均值与在相同的测试数据及相同环境下,平均响应时间最好的其他设备进行比对,输出两者之间的差异点及优化点;
获取该机器人设备的所有的历史测试数据进行分析,根据数据的差异,分析当前机器人设备的响应时间是得到提升还是降低。
进一步的,所述步骤S5进一步具体为:不断创建测试任务进行跑测试数据,输出测试样本及通过爬虫方式去获取标注数据来做训练集;
使用监督学习有训练集与测试样本,通过测试数据及行为去学习;
数据准备:设定标签后,进行数据标注,标准的数据需要均衡,并且需要进行审核;
整理数据集:统计标签中的数量并把不同标签的数据存放在不同的文件中,样本均衡,切分样本集,按需求进行分类;
使用神经网络的前向算法, 使用inceptionV4来实现,选择优化器,对数据进行迭代训练;使用测试集或者验证集对准确率进行评估,以保证达到最好的模型效果;
以行业的指标去评审模型,不断进行模型训练,不断去完善模型,使得测试实体机器人的能力不断完善,更全面。
本发明还提供了一种基于深度学习的评测实体机器人响应的系统,所述系统包括:实体机器人监控模块、执行评测模块、存储数据模块、评测报告模块、以及深度学习模块;
所述实体机器人监控模块,用于监控每台实体机器人的情况,将对应的机器人设备信息推送给用户,能实时了解设备情况;创建评测任务,选择要评测的机器人,设置要评测的机器人执行环节的响应时间、次数、时长;
所述执行评测模块,用于监控是否有待评测任务,若是,则根据评测任务下发的评测信息,发起执行评测请求,下发执行评测命令,执行评测;否,则等待消息;
所述存储数据模块,存储每台机器人的评测数据,以实体机器人及每次测试作为唯一标识来记录数据,为后续进行数据分析及深度学习做准备;
所述评测报告模块,对评测的结果进行数据分析、评测结果的统计、评测覆盖率,以图形化的方式进行展示;
所述深度学习模块,针对每次测试的方式及输出的测试数据进行深度学习,优化测试方式及测试报告。
进一步的,所述实体机器人监控模块的实现方式进一步具体为:监控实体机器人,若是有新实体机器人被监控到,就会下发对应机器人的信息给用户,若是设定时间内已进行过每个执行环节响应时间评测的实体机器人上线 ,则不通知用户,若是不符合条件的机器人上线,会通知用户,是否要再次进行评测;创建监控运营中机器人的响应速度,设置要监控的执行环节、时间点,并且设置响应速度预警阙值,超出该值就上报异常;让用户选择是创建评测任务还是运营中的机器人设备进行监控,设置最大能接受的响应时间阙值,超出时间阈值就上报异常。
进一步的,所述执行评测模块的实现方式进一步具体为:实时检测是否有待执行评测的请求;
若有执行评测的请求,下发评测命令和评测任务,所述评测任务包括:语音识别、意图解析、语音合成、机械臂、播放音乐、或者机器人脑袋动作;开始执行评测任务,启动机器人开始按评测任务要求去执行;
对机器人在评测过程的响应时间进行记录,并匹配机器人,记录每个动作的响应时间、执行该动作的时间点、网络、下发指令、硬件信息;
若无待执行评测的请求,就待机中。
进一步的,所述实评测报告模块的实现方式进一步具体为:读取存储的评测数据,进行数据分析,获得评测数据分布及实体机器人每个能力中的每个环节的响应时间,及可优化的建议;所述数据分析具体为:存储每次测试的数据,根据需要可选当前的测试数据或者是历史测试的数据;
再选择要分析的维度,该维度包括机器人的每个节点的响应时间、网络延时、CPU情况、内存情况;
设置当前每个维度的标准阙值,分析每条测试数据是否在标准阙值范围内,若是没有,输出超期的值,并且输出初步的数据结果。
进一步的,所述获得评测数据分布及实体机器人每个能力中的每个环节的响应时间,及可优化的建议,具体为:设置每个维度的标准阙值后,根据初步的数据结果,将数据结果使用程序实现按每个分布点显示为散点图;
程序将散点图与预先已设置好在标准化内的散点图进行比对每个点位置,若是出现不符合位置,提示位置及数值,并以提示的方式进行警告,来得到数据分布的情况;
读取要计算的测试数据进行取平均值计算;根据当前测试的平均值与在相同的测试数据及相同环境下,平均响应时间最好的其他设备进行比对,输出两者之间的差异点及优化点;
获取该机器人设备的所有的历史测试数据进行分析,根据数据的差异,分析当前机器人设备的响应时间是得到提升还是降低。
进一步的,所述深度学习模块的实现方式进一步具体为:不断创建测试任务进行跑测试数据,输出测试样本及通过爬虫方式去获取标注数据来做训练集;
使用监督学习有训练集与测试样本,通过测试数据及行为去学习;
数据准备:设定标签后,进行数据标注,标准的数据需要均衡,并且需要进行审核;
整理数据集:统计标签中的数量并把不同标签的数据存放在不同的文件中,样本均衡,切分样本集,按需求进行分类;
使用神经网络的前向算法,使用inceptionV4来实现,选择优化器,对数据进行迭代训练;使用测试集或者验证集对准确率进行评估,以保证达到最好的模型效果;
以行业的指标去评审模型,不断进行模型训练,不断去完善模型,使得测试实体机器人的能力不断完善,更全面。
本发明的有益效果在于:1、通过本专利提供的方式可以自动化完成实体机器人的各个能力的响应速度的评测,从多方面去考核实体机器人的能力,提升了评测结果的可信度。
2、通过本专利提供的方式可以自动化完成实体机器人的各个能力评测的全部过程,无需人员参与,在整个过程中节省了时间成本。
3、通过本专利提供的方式相比与人工评测,自动化评测对人员的能力要求非常低,无经验人员就可以操作;在评测效率上会是人工评测以成倍的提升,有很大的价值。
4、通过本专利提供的方式可解决很多重复性评测内容,无需担心评测的内容过于庞大,并输出评测报告,提高测试效率。
5、通过本专利提高的方式可提升评测的能力,减少实体机器人新增能力,就要进行代码维护的时间成本,实现快速评测的需求。
附图说明
图1是本发明的方法流程示意图。
图2是本发明的一实施例中业务主流程图。
图3是本发明的系统原理框图。
图4是本发明的实体机器人监控模块实现方式的流程示意图。
图5是本发明的执行评测模块实现方式的流程示意图。
图6是本发明的存储数据模块实现方式的流程示意图。
图7是本发明的评测报告模块实现方式的流程示意图。
图8是本发明的深度学习模块实现方式的流程示意图。
具体实施方式
下面结合附图对本发明做进一步说明。
请参阅图1所示,本发明的一种基于深度学习的评测实体机器人响应的方法,所述方法包括如下步骤:
步骤S1、监控每台实体机器人的情况,将对应的机器人设备信息推送给用户,能实时了解设备情况;创建评测任务,选择要评测的机器人,设置要评测的机器人执行环节(比如:语音识别、意图解析、语音合成、机械臂、播放等等)的响应时间、次数、时长;
步骤S2、监控是否有待评测任务,若是,则根据评测任务下发的评测信息,发起执行评测请求,下发执行评测命令,执行评测;否,则等待消息;
步骤S3、存储每台机器人的评测数据,以实体机器人及每次测试作为唯一标识来记录数据,为后续进行数据分析及深度学习做准备;
步骤S4、对评测的结果进行数据分析、评测结果的统计、评测覆盖率,以图形化的方式进行展示;
步骤S5、针对每次测试的方式及输出的测试数据进行深度学习,优化测试方式及测试报告,提出更有价值的实体机器人响应速度的优化建议。
下面结合一具体实施例对本发明做进一步说明:
如图2所示,本发明的一种基于深度学习的评测实体机器人响应的方法,该方法为:
11、监控实体机器人,若是有新实体机器人被监控到,就会下发对应机器人的信息给用户(比如:系统监控到有一台新实体机器人上线,就会下发对应的信息给用户,是否要进行响应时间评测,让用户进行选择);最近三个月内已进行过每个环节响应时间评测的实体机器人(未更新过软件及硬件的)上线 ,则不通知用户,若是不符合条件的机器人上线,会通知用户,是否要再次进行评测。创建监控运营中机器人的响应速度,设置要监控的执行环节(比如:语音识别、意图解析、语音合成、机械臂、播放等等)、时间点,并且设置响应速度预警阙值,超出该值就上报异常;
12、让用户选择是创建测试任务还是运营中的机器人设备进行监控,设置最大能接受的响应时间阙值,超出该值就上报异常。
21、实时检测是否有待执行评测的请求。
22、若是执行评测的请求,下发评测命令(如接收到要评测的任务是评测A机器人的脑袋动作的响应时间(左转、右转、点头、摇头、低头等等),开始执行评测任务,所述评测任务包括:语音识别、意图解析、语音合成、机械臂、播放音乐、或者机器人脑袋动作;启动A机器人开始按评测任务要求去执行),(再如评测机器人的识别响应速度,则可以自动化实现播放音频,让机器人进行识别,并记录识别到的时间,再取多次的平均响应时间)。
23、对机器人在评测过程的响应时间进行记录,并匹配机器人,每个动作(按单个环节下发上传请求)的响应时间、执行该动作的时间点、网络、下发指令、硬件等信息。
24、若无待执行评测的请求,就待机中。
31、接收测评任务的评测数据。
32、每次存储都会有唯一标识记录当次的测试数据,这可很好地区别每次测试的数据,在做数据分析,可很好区分数据。
33、并且存储每个模块深度学习的内容,为每次深度学习的准备。
41、读取存储的评测数据,统计上万次的结果数据使用程序进行进行数据分析,获得评测数据分布及实体机器人每个能力中的每个环节的响应时间,及可优化的建议;所述数据分析具体为:存储每次测试的数据,根据需要可选当前的测试数据或者是历史测试的数据;
42、再选择要分析的维度,该维度包括机器人的每个节点的响应时间、网络延时、CPU情况、内存情况;
43、设置当前每个维度的标准阙值,分析每条测试数据是否在标准阙值范围内,若是没有,输出超期的值,并且输出初步的数据结果。
所述获得评测数据分布及实体机器人每个能力中的每个环节的响应时间,及可优化的建议,具体为:设置每个维度的标准阙值后,根据初步的数据结果,将数据结果使用程序实现按每个分布点显示为散点图;
程序将散点图与预先已设置好在标准化内的散点图进行比对每个点位置(比如:当前要测试的节点是对话系统的平均响应时间,在创建测试任务时,会输入对应的标准响应时间是在1S~3S内,那么系统会同时生成一张在标准内的散点,当测试结束后,会自动进行比对),若是出现不符合位置,提示位置及数值,并以提示的方式进行警告,来得到数据分布的情况;
读取要计算的测试数据进行取平均值计算(比如:要分析完成的1万组的对话系统的每个节点的平均响应时间,那么程序就按单个节点的所有测试数据进行相加,再取平均值;若是要分析每个完整的对话系统的整体响应时间,那么取对话系统的整个对话流程的响应时间数值,取平均值);根据当前测试的平均值与在相同的测试数据及相同环境下,平均响应时间最好的其他设备进行比对,输出两者之间的差异点及优化点;
获取该机器人设备的所有的历史测试数据进行分析,根据数据的差异,分析当前机器人设备的响应时间是得到提升还是降低。
51、不断创建测试任务进行跑测试数据,输出测试样本及通过爬虫方式去获取标注数据来做训练集;
52、使用监督学习有训练集与测试样本,通过测试数据及行为去学习;
53、数据准备:设定标签后,进行数据标注,标准的数据需要均衡,并且需要进行审核;
54、整理数据集:统计标签中的数量并把不同标签的数据存放在不同的文件中,样本均衡,切分样本集,按需求进行分类;
55、使用神经网络的前向算法,使用inceptionV4来实现,选择优化器,对数据进行迭代训练;使用测试集或者验证集对准确率进行评估,以保证达到最好的模型效果(比如说,要训练对话系统的平均响应时间的测试能力,首先根据测试集进行模型训练,把训练好的模型进行评估);
56、以行业的指标去评审模型,不断进行模型训练,不断去完善模型,使得测试实体机器人的能力不断完善,更全面(比如:由于系统的模型问题,仅仅只是有针对不环境下对实体机器人的响应时间评测,不会进行多维度测试,再加入设备的硬件等其他的条件的数据训练后,后续的测试,会综合考虑各个条件因素,输出更加客观/真实的评测结果)。
如图3所示,本发明还提供了一种基于深度学习的评测实体机器人响应的系统,所述系统包括:实体机器人监控模块、执行评测模块、存储数据模块、评测报告模块、以及深度学习模块;
所述实体机器人监控模块,用于监控每台实体机器人的情况,将对应的机器人设备信息推送给用户,能实时了解设备情况;创建评测任务,选择要评测的机器人,设置要评测的机器人执行环节的响应时间、次数、时长;
所述执行评测模块,用于监控是否有待评测任务,若是,则根据评测任务下发的评测信息,发起执行评测请求,下发执行评测命令,执行评测;否,则等待消息;
所述存储数据模块,存储每台机器人的评测数据,以实体机器人及每次测试作为唯一标识来记录数据,为后续进行数据分析及深度学习做准备;
所述评测报告模块,对评测的结果进行数据分析、评测结果的统计、评测覆盖率,以图形化的方式进行展示;
所述深度学习模块,针对每次测试的方式及输出的测试数据进行深度学习,优化测试方式及测试报告。
如图4所示,所述实体机器人监控模块的实现方式进一步具体为:监控实体机器人,若是有新实体机器人被监控到,就会下发对应机器人的信息给用户,若是设定时间内已进行过每个执行环节响应时间评测的实体机器人上线 ,则不通知用户,若是不符合条件的机器人上线,会通知用户,是否要再次进行评测;创建监控运营中机器人的响应速度,设置要监控的执行环节、时间点,并且设置响应速度预警阙值,超出该值就上报异常;让用户选择是创建评测任务还是运营中的机器人设备进行监控,设置最大能接受的响应时间阙值,超出时间阈值就上报异常。
如图5所示,所述执行评测模块的实现方式进一步具体为:实时检测是否有待执行评测的请求;
若有执行评测的请求,下发评测命令和评测任务,所述评测任务包括:语音识别、意图解析、语音合成、机械臂、播放音乐、或者机器人脑袋动作;开始执行评测任务,启动机器人开始按评测任务要求去执行;
对机器人在评测过程的响应时间进行记录,并匹配机器人,记录每个动作的响应时间、执行该动作的时间点、网络、下发指令、硬件信息;
若无待执行评测的请求,就待机中。
如图6所示,所述存储数据模块的实现方式进一步具体为:接收测评任务的评测数据。
每次存储都会有唯一标识记录当次的测试数据,这可很好地区别每次测试的数据,在做数据分析,可很好区分数据。
并且存储每个模块深度学习的内容,为每次深度学习的准备。
如图7所示,所述实评测报告模块的实现方式进一步具体为:读取存储的评测数据,进行数据分析,获得评测数据分布及实体机器人每个能力中的每个环节的响应时间,及可优化的建议;所述数据分析具体为:存储每次测试的数据,根据需要可选当前的测试数据或者是历史测试的数据;
再选择要分析的维度,该维度包括机器人的每个节点的响应时间、网络延时、CPU情况、内存情况;
设置当前每个维度的标准阙值,分析每条测试数据是否在标准阙值范围内,若是没有,输出超期的值,并且输出初步的数据结果。
进一步的,所述获得评测数据分布及实体机器人每个能力中的每个环节的响应时间,及可优化的建议,具体为:设置每个维度的标准阙值后,根据初步的数据结果,将数据结果使用程序实现按每个分布点显示为散点图;
程序将散点图与预先已设置好在标准化内的散点图进行比对每个点位置,若是出现不符合位置,提示位置及数值,并以提示的方式进行警告,来得到数据分布的情况;
读取要计算的测试数据进行取平均值计算;根据当前测试的平均值与在相同的测试数据及相同环境下,平均响应时间最好的其他设备进行比对,输出两者之间的差异点及优化点;
获取该机器人设备的所有的历史测试数据进行分析,根据数据的差异,分析当前机器人设备的响应时间是得到提升还是降低。
如图8所示,所述深度学习模块的实现方式进一步具体为:不断创建测试任务进行跑测试数据,输出测试样本及通过爬虫方式去获取标注数据来做训练集;
使用监督学习有训练集与测试样本,通过测试数据及行为去学习;
数据准备:设定标签后,进行数据标注,标准的数据需要均衡,并且需要进行审核;
整理数据集:统计标签中的数量并把不同标签的数据存放在不同的文件中,样本均衡,切分样本集,按需求进行分类;
使用神经网络的前向算法, 使用inceptionV4来实现,选择优化器,对数据进行迭代训练;使用测试集或者验证集对准确率进行评估,以保证达到最好的模型效果;
以行业的指标去评审模型,不断进行模型训练,不断去完善模型,使得测试实体机器人的能力不断完善,更全面。
场景1:
同学小A负责实体机器人的语音识别能力响应时间的评测,使用手工评测,需要人为去判断评测的结果精准性,在这过程中,由于评测的环境及主观原因,会导致评测的精准性失真。
通过本专利的方案,同学小A可使用自动化方式进行评测,并输出评测结论。
场景2:
同学小B负责新生产的实体机器人的各个能力的响应时间的评测,并提供评测结果为研究员对脸部表情进行优化提供参考,仅能通过单一的人为的下发表情指令,使用秒表计算响应时间,并且要测试大数据量,这是非常繁琐,并且准确性存在误差。
通过本专利的方案,同学小B可使用自动化方式进行评测,该专利的方案就会从多方面去分析实体机器人的每个能力,甚至是每个能力的每个环节的响应时间,从多个方面去分析机器人的综合情况,总评测结果的效果图、评测覆盖率、评测结果分析及优化建议。
场景3:
同学小C需要对运营中的实体机器人进行整体的响应速度监控,实时关注机器人的情况,不能到现场去评测,仅能使用机器人的记录信息,进行分析,统计分析,工作量很大,并且分析人为的分析不一定精准。
通过本专利的方案,同学小C只需要针对需要监控的机器人进行创建监控任务,系统就会针对该机器人进行监控,若是出现异常,就会进行预警,及时通知小C。
场景四:
同学小D在负责实体机器人新增的10个脸部表情能力的响应时间评测时,需要人工下发测试,人工统计,输出测试报告。
通过本专利的方案,同学小D只需要新增评测任务,系统检测到任务,对脸部表情能力的响应时间评测(系统已在原有的评测能力中,通过深度学习的方式掌握了表情评测的能力,通过硬件的SDK的方式,只要检测到有新的SDK能力加入就唤醒针对的能力进行学习,并输出评测能力),输出测试报告。
总之,本发明通过进行实体机器人的响应时间评测,实现了从创建对应的评测任务或者是监控机器人去读取对应的实体机器人设备信息、执行评测任务(或者监控任务)、存储测试数据、对评测结果数据分析,图形化的形式进行展示,使得评测的结论一目了然、使用深度学习对整个评测过程进行学习,自行对整个评测过程进行优化及自行发起测试,输出测试报告。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
- 一种基于深度学习的评测实体机器人响应的方法及其系统
- 一种基于深度学习的口语评测方法和系统