一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

模型训练方法、交互日志解析方法、装置、设备及介质与流程

2022-06-05 08:32:08 来源:中国专利 TAG:
1.本公开涉及人工智能领域,尤其涉及深度学习、语音技术等领域。
背景技术
::2.随着人工智能技术的快速发展和核心技术的突破性进步,各类计算机、服务器、电器、手机等终端在工作时都离不开交互技术。技术实现要素:3.本公开提供了一种模型训练方法、交互日志解析方法、装置、设备及介质。4.根据本公开的一方面,提供了一种模型训练方法,包括:5.基于历史交互日志,确定第一关键交互信息;6.根据第一关键交互信息,确定第一训练样本;7.根据第一关键交互信息对应的信息维度,构建第一多维q表;8.基于强化学习算法,利用第一训练样本对第一多维q表进行训练,得到交互日志解析模型。9.根据本公开的另一方面,提供了一种交互日志解析方法,包括:10.基于目标交互日志,确定目标交互信息;11.利用本公开任一实施例中的模型训练方法所得到的交互日志解析模型,对目标交互信息进行解析并输出解析结果。12.根据本公开的一方面,提供了一种模型训练装置,包括:13.第一确定模块,用于基于历史交互日志,确定第一关键交互信息;14.第二确定模块,用于根据第一关键交互信息,确定第一训练样本;15.构建模块,用于根据第一关键交互信息对应的信息维度,构建第一多维q表;16.训练模块,用于基于强化学习算法,利用第一训练样本对第一多维q表进行训练,得到交互日志解析模型。17.根据本公开的另一方面,提供了一种交互日志解析装置,包括:18.确定模块,用于基于目标交互日志,确定目标交互信息;19.解析模块,用于利用本公开任一实施例中的模型训练方法所得到的交互日志解析模型,对目标交互信息进行解析并输出解析结果。20.根据本公开的另一方面,提供了一种电子设备,包括:21.至少一个处理器;以及22.与至少一个处理器通信连接的存储器;其中,23.存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开任一实施例中的方法。24.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开任一实施例中的方法。25.根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开任一实施例中的方法。26.根据本公开的方案,能够快速准确的对交互日志进行解析。27.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。附图说明28.附图用于更好地理解本方案,不构成对本公开的限定。其中:29.图1是根据本公开实施例的模型训练方法的示意图;30.图2是根据本公开实施例的模型训练方法的应用场景示意图;31.图3是根据本公开另一实施例的模型训练方法的示意图;32.图4是根据本公开另一实施例的模型训练方法的示意图;33.图5是根据本公开另一实施例的模型训练方法的示意图;34.图6是根据本公开另一实施例的模型训练方法的应用示意图;35.图7是根据本公开另一实施例的模型训练方法的示意图;36.图8是根据本公开另一实施例的模型训练方法的示意图;37.图9是根据本公开另一实施例的模型训练方法的示意图;38.图10是根据本公开实施例的交互日志解析方法的示意图;39.图11是根据本公开实施例的交互日志解析方法的应用场景示意图;40.图12是根据本公开另一实施例的交互日志解析方法的示意图;41.图13是根据本公开另一实施例的交互日志解析方法的示意图;42.图14是根据本公开另一实施例的交互日志解析方法的应用示意图;43.图15是根据本公开实施例的模型训练装置的示意图;44.图16是根据本公开实施例的交互日志解析装置的示意图;45.图17是用来实现本公开实施例的模型训练方法和/或交互日志解析方法的电子设备的框图。具体实施方式46.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。47.本公开的实施方式提供一种模型训练方法,如图1所示,其为本实施例的模型训练方法的流程图,该方法可以包括以下步骤:48.步骤s101:基于历史交互日志,确定第一关键交互信息。49.步骤s102:根据第一关键交互信息,确定第一训练样本。50.步骤s103:根据第一关键交互信息对应的信息维度,构建第一多维q表。51.步骤s104:基于强化学习算法,利用第一训练样本对第一多维q表进行训练,得到交互日志解析模型。52.其中,历史交互日志,可以包括任意方式的人机交互所产生的日志。人机交互可以理解为人与计算机之间使用某种对话语言,以一定的交互方式,为完成确定任务的人与计算机之间的信息交换过程。人机交互包括但不限于:语音交互、vr(虚拟现实,virtualreality)交互、触控交互、使用某种机器语言交互等。历史交互日志可以是源于各类智能设备(例如,计算机、手机、车辆、智能电视、智能音箱、智能手表、扫地机器人、陪伴型机器人等)在使用过程中所产生的交互日志。历史交互日志可以是源于同一业务类型的交互日志,也可以是源于不同业务类型的交互日志。53.在一个示例中,历史交互日志可以来自于同一型号的多个智能音箱与不同使用者交互时所产生的交互日志。历史交互日志可以来自于手机、智能音箱、智能手表等终端上的同一个app(应用程序,application)与使用者交互时所产生的交互日志。历史交互日志可以来自于手机、智能音箱、智能手表等终端上的不同app与使用者交互时所产生的交互日志。历史交互日志可以理解为数据集,其中包含有多个交互日志。54.第一关键交互信息,可以理解为训练模型实现特定功能所需的信息。第一关键交互信息包含于历史交互日志中,由于历史交互日志中记录的不仅仅是交互过程的信息,通常还记录有系统运行的信息,以及其他无效信息,若直接用历史交互日志进行模型训练,不仅日志量级大,运行复杂,且处理太多无效信息会造成一定的资源浪费。因此需要从历史交互日志确定出第一关键交互信息,以便减轻后续模型训练过程的运算复杂度和资源浪费,也保证了训练处的模型效果更佳。第一关键交互信息可以是能够反应交互过程的任何信息,在此不做具体限定,根据需要进行选择和调整。历史交互日志中的每一个完整语音交互过程可以对应一个或多个关键交互信息。55.从历史交互日志中确定第一关键交互信息的方式在此不做具体限定,例如,可以通过对历史交互日志的特殊字段识别,确定第一关键交互信息。需要说明的是,由于不同业务类型的业务逻辑不同,反映到交互日志中对应的关键字段类型也不同,因此不同业务类型的交互日志可以通过不同的特殊字段进行识别。同理,相同的业务类型中的交互日志,由于运行的平台或对应集成的软件不一致,其保存的日志风格也可能不同,因此也可以通过不同的特殊字段进行识别。又如,可以通过对历史交互日志中规律性的重复执行代码进行识别,确定第一关键交互信息。任何软件运行一段时间所保存的日志通常都是规律性的,因为其反映的都是原始代码的重复执行,由此可以识别出反应交互过程的第一关键交互信息。再如,通过历史交互日志中的uuid(通用唯一识别码,universallyuniqueidentifier)确定第一关键交互信息。56.第一训练样本,可以是多个第一关键信息进行预处理后所生成的数据集合。57.信息维度,可以理解为第一关键交互信息对应的物理维度、思想维度、或通过抽象概念所自定义的维度。例如,如果第一关键交互信息是反应参数值的,则第一关键交互信息可以理解为对应参数指标维度。如果第一关键交互信息是反应交互的瞬时状态或交互的转移状态的,则第一关键交互信息可以理解为对应交互状态维度。如果第一关键交互信息是反应处理逻辑的,则第一关键交互信息可以理解为对应数据处理维度。具体的信息维度可以根据业务需要进行选择、调整或定义,在此仅举例说明,不做具体限定。58.第一多维q表,可以理解为强化学习中环境状态与动作映射关系的表。q是在某一时刻的s状态下,采取动作a动作能够获得收益的期望,环境会根据智能体(agent)的动作反馈相应的回报奖励(reward),所以主要思想就是将状态(state)与动作(action)构建成一张q-table(表)来存储q值,然后根据q值来选取能够获得最大的收益的动作。需要说明的是,第一多维q表中不仅包含有组成表的基础框架的“状态”和“动作”两维度的内容,还包含有根据第一关键交互信息所确定的其他维度的内容。因此,第一多维q表可以是三维q表、四维q表等。59.强化学习(reinforcementlearning,rl),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。强化学习的常见模型是标准的马尔可夫决策过程(markovdecisionprocess,mdp)。按给定条件,强化学习可分为基于模式的强化学习(model-basedrl)和无模式强化学习(model-freerl),以及主动强化学习(activerl)和被动强化学习(passiverl)。强化学习的变体包括逆向强化学习、阶层强化学习和部分可观测系统的强化学习。求解强化学习问题所使用的算法可分为策略搜索算法和值函数(以蒙特卡罗方法和时序差分学习为代表的mdp算法属于无模型的强化学习)算法两类。深度学习模型可以在强化学习中得到使用,形成深度强化学习。本公开实例的强化学习算法可以理解为强化学习所包含上述任一算法,在此不做具体限定,能够实现基于第一训练样本对第一多维q表训练优化即可。60.在本实施方式中,由于交互日志解析模型是通过包含有多维度内容的第一多维q表构建的,因此提升了强化学习算法的模型训练优化效果。通过训练交互日志解析模型,可以实现对交互日志的自动化解析,输出业务所需的各类解析结果,减少了人工测试的成本。另外,第一多维q表的功能扩展性强,可以根据业务需要随时对第一多维q表的架构进行调整,同时第一多维q表计算复杂度低,即便增加第一多维q表的维度,也不会对计算复杂度产生影响,当需要根据业务更新交互日志解析模型,使交互日志解析模型扩展新功能或解析新的内容时,只需要直接调整第一多维q表的内容或维度即可,无需额外的逻辑判断,因此不会额外占用运算资源。61.在一个应用示例中,本公开任一实施例提供的模型训练方法可以应用于智能语音终端的语音交互日志解析中。具体可以应用于用户与智能语音终端的端到端软件测试日志解析所需利用的交互日志解析模型中。其中,智能语音终端包括但不限于:智能手机、智能手表、智能音箱、智能家电、车辆等。智能语音终端通常会安装有集成了语音软件开发工具包(sdk,softwaredevelopmentkit)的app,app开始运行的时候,语音sdk启动交互的接口被调用,当智能语音终端被唤醒且接收到有效的语音数据流后,语音sdk将语音数据流上传至服务器端进行解析,并将服务器端的解析结果回传到上层业务的app进行结果展示和响应,最后确认本次交互是否正常结束。在整个智能交互过程中,语音sdk起到了语音数据流的中控作用,是语音交互技术的核心,如果要对这一套语音sdk进行解析或测试,其接口运行状态和业务交互逻辑状态是解析或测试首要关注的,针对交互日志中的关键交互信息进行分析,是高效率完成测试,实现自动化交互日志解析的关键。而应用本公开任一实施例的模型训练方法所得到的交互日志解析模型完全可以满足上述接口运行状态和业务交互逻辑状态的解析需求,能够实现基于交互日志的关键交互信息高效且准确的完成解析或测试。62.随着人工智能技术的快速发展和核心技术的突破性进步,越来越多的用户热衷于使用搭载有人机交互技术(例如,语音交互技术)的各类智能设备(例如,计算机、手机、车辆、智能电视、智能音箱、智能手表、扫地机器人、陪伴型机器人等)。这些智能设备给用户带来了更加方便和更具科技感的使用体验。人机交互技术发展至今,技术已日渐成熟,端到端软件解决方案的智能业务逻辑控制,极大的保证了人机交互的效果,提高了人机交互的体验。而为了保证各类智能设备或所安装的应用程序的人机交互效果,在上市前需要对人机交互进行全方位测试。对于任意一套完备的测试系统而言,交互日志的处理和分析都是测试的核心任务。如何快速有效的处理交互日志、如何全面细致的获取交互日志中的关键信息、如何基于关键信息对交互日志进行解析,对于人机交互来说是发现问题、定位问题以及提高测试效率的关键所在。图2示出根据本公开实施例的模型训练方法的应用场景示意图,通过该应用场景示意图,示例性的描述了可以利用智能设备、后台服务器(或云端)等,对交互日志的解析所需利用的模型进行构建和训练。如图2所示,图中包括计算机201、手机202、车辆203、智能家电204、智能手表205、机器人206、第一数据库207、服务器208、终端209、第二数据库210、检测人员终端211以及服务器212。63.具体的,计算机201、手机202、车辆203、智能家电204、智能手表205、机器人206在与用户进行人机交互时产生的历史交互日志存储在第一数据库207中。其中,历史交互日志可以是用户与计算机201、手机202、车辆203、智能家电204、智能手表205、机器人206的自身系统进行人机交互时产生的日志,也可以是用户与计算机201、手机202、车辆203、智能家电204、智能手表205、机器人206上安装的具有人机交互功能的应用程序进行人机交互时产生的日志。服务器208用于从第一数据库207中获取历史交互日志,并基于历史交互日志,采用本公开任一实例的模型训练方法生成交互日志解析模型。其中,服务器208可以理解为是一个独立进行运算的服务器,也可以理解为分布式服务器集群。服务器208在生成能够对交互日志进行解析的交互日志解析模型后,可以根据业务需求,将交互日志解析模型发送至终端209、第二数据库210、检测人员终端211或服务器212的至少一个中,以供后续终端209、第二数据库210、检测人员终端211或服务器212可以基于交互日志解析模型对目标交互日志进行解析。64.在一种实施方式中,本实施例的模型训练方法包括执行步骤s101至步骤s104,其中,如图3所示,步骤s101:基于历史交互日志,确定第一关键交互信息,可以进一步包括:65.步骤s301:以一次完整交互过程作为筛选粒度,对历史交互日志进行数据筛选。66.步骤s302:将筛选出的数据确定为第一关键交互信息。67.一次完整交互过程,可以根据需要进行定义。例如,用户的一次交互请求和智能终端的一次反馈,定义为一次完整交互过程。又如,用户在某一时段内连续的人机交互过程(包含有用户的多次交互请求和终端的多次反馈),定义为一次完整交互过程。68.确定一次完整交互过程的方式可以包括:通过从历史交互日志中查找源代码的一致uuid来确定一次完整交互过程。通过在历史交互日志中查找体现交互的开始、中间过程和结束三个完整过程的源代码来确定。通过在历史交互日志中查找体现交互的开始和中断的过程的源代码来确定。69.将筛选出的数据确定为第一关键交互信息,可以理解为将筛选出的数据直接作为第一关键交互信息,也可以理解为对筛选出的数据进行预处理后,再作为第一关键交互信息。例如,如果筛选出的数据的数据格式与第一多维q表定义的模型输入接口的数据格式匹配,则直接将筛选出的数据作为第一关键交互信息。如果筛选出的数据的数据格式与第一多维q表定义的模型输入接口的数据格式不匹配,则需要对筛选出的数据的数据格式转换至与第一多维q表定义的模型输入接口的数据格式匹配,然后将转换后的筛选出的数据确定为第一关键交互信息。70.在本实施方式中,以一次完整交互过程作为筛选力度,可以保证得到的第一关键交互信息的数据完整性,也可以使得第一关键交互信息生成的第一训练样本更具价值和代表性,进而提升第一多维q表的训练效果。71.在一种实施方式中,本实施例的模型训练方法包括执行步骤s101至步骤s104,其中,如图4所示,步骤s102:根据第一关键交互信息,确定第一训练样本,可以进一步包括:72.步骤s401:对第一关键交互信息进行样本标注。73.通过样本标注,确定出第一关键交互信息对应的交互过程的各个瞬时状态。一次完整交互过程的开始、中间、结束状态,都可以理解为一次瞬时状态。以及,通过样本标注确定每个瞬时状态的参数信息。同时,根据标注,确定第一关键交互信息中是否存在异常状态信息。标注瞬时状态和瞬时状态的参数信息,是为了使第一多维q表在训练时作为计算数据使用,标注异常状态信息是为了使第一多维q表通过强化学习算法训练时,依据异常状态调整奖励值。74.步骤s402:根据预设数据格式转换规则,对标注后的第一关键交互信息进行数据格式转换。75.预设数据格式转换规则根据在训练时模型输入接口对应的数据格式进行定义。保证标注后的第一关键交互信息进行数据格式转换后能够直接用于训练。76.步骤s403:将数据格式转换后的第一关键交互信息确定为第一训练样本。77.在本实施方式中,在将第一关键交互信息作为第一训练样本输入第一多维q表进行模型训练前,由于增加了格式转换步骤,因此可以提升本公开实施例的模型训练方法的复用性,解决了历史交互日志中的数据与第一多维q表训练所需的数据格式不统一的问题。使得本公开实施例的模型训练方法可以利用不同运行平台、不同应用程序所存储的代码风格迥异的历史交互日志进行模型训练。78.在一种实施方式中,本实施例的模型训练方法包括执行步骤s101至步骤s104,其中,如图5所示,步骤s103:根据第一关键交互信息对应的信息维度,构建第一多维q表,可以进一步包括:79.步骤s501:根据第一关键交互信息,确定对应的信息维度至少包括交互瞬时状态维度、交互转移状态维度和状态参数维度。80.交互转移状态,可以理解为交互的某一瞬时状态响应交互请求而产生的下一刻的交互状态。81.交互瞬时状态维度对应的数据和状态参数维度对应的数据可以在第一关键交互信息中获取,这些数据用于后续模型训练的计算过程。交互转移状态维度对应的数据可以预先定义,例如,规定出不同的瞬时状态应当对应的下一个交互转移状态是什么。也可以在第一多维q表利用强化学习算法进行训练的过程中,自适应学习来确定交互转移状态维度对应的数据。82.步骤s502:根据交互瞬时状态维度、交互转移状态维度和状态参数维度,构建第一多维q表。83.在本实施方式的方案中,针对交互特殊性,采用交互瞬时状态维度、交互转移状态维度和状态参数维度构建的第一多维q表(即三维q表),可以满足交互日志的常规分析需求。并且,通过参数状态维度的引入,可以使得模型训练的效果更佳,效率更高。84.在一种实施方式中,如图6所示,本公开任一实施例的模型训练方法可以应用于语音交互日志的模型训练场景中。模型训练方法可以包括以下步骤:85.步骤一:从数据集中获取业务类型1的历史交互日志。其中,历史交互日志来源于不同智能终端的不同业务平台集成语音sdk的软件运行时保存的日志。86.步骤二:利用类型适配器对历史交互日志进行关键信息提取,从历史交互日志中提取出第一关键交互信息。并对第一关键交互信息进行格式化重定义,将第一关键交互信息的数据格式转换为第一多维q表的输入接口所适配的数据格式。87.步骤三:基于数据格式转换后的第一关键交互信息,构建数据源,数据源中包含有第一训练样本。88.步骤四:将第一训练样本输入三维q表(第一多维q表),利用强化学习算法对三维q表进行训练优化,最终得到业务类型1的最优模型。其中,三维q表是基于一次交互的瞬时状态维度、一次交互的转移状态维度和当前状态的参数指标维度所构建的。89.在一种实施方式中,本实施例的模型训练方法包括执行步骤s101至步骤s104,如图7所示,本实施例的模型训练方法还可以包括:90.步骤s701:响应于模型功能扩展请求,基于历史交互日志,确定第二关键交互信息。91.模型功能扩展请求,可以理解为对通过本公开任一实施例的模型训练方法训练好的交互日志解析模型进行功能扩展,需要交互日志解析模型根据业务需要能够解析出其他维度的信息。由于模型功能需要扩展,因此需要基于历史交互日志获取新的关键交互信息。92.例如,原本的交互日志解析模型能够输出两个解析结果:交互逻辑是否正常、状态参数是否正常。而根据模型功能扩展请求,需要交互日志解析模型能够输出三个解析结果:交互逻辑是否正常、状态参数是否正常,以及是否有发生异常交互。93.步骤s702:根据第二关键交互信息,确定第二训练样本。94.步骤s703:根据第二关键交互信息对应的信息维度,对第一多维q表进行调整,构建第二多维q表。95.由于模型功能扩展,因此训练原交互日志解析模型的第一多维q表已无法满足模型训练需求,因此需要对第一多维q表进行调整,在第一多维q表的基础上基于新的信息维度构建第二多维q表。96.步骤s704:基于强化学习算法,利用第二训练样本对第二多维q表进行训练,得到功能扩展的交互日志解析模型。97.在本实施方式中,由于使用了强化学习中的多维q表训练交互日志解析模型,因此基于多维q表的功能扩展性强的特性,在交互日志解析模型的功能需要扩展时,直接对第一多维q表进行调整,构建第二多维q表即可实现新模型的训练。本实施例的方法可以实现根据业务需要随时对第一多维q表的架构进行调整,同时第一多维q表计算复杂度低,即便增加第一多维q表的维度,也不会对计算复杂度产生影响,当需要根据业务更新交互日志解析模型,使交互日志解析模型扩展新功能时,只需要直接调整第一多维q表的内容或维度即可,无需额外的逻辑判断,因此不会额外占用运算资源。98.在一种实施方式中,本实施例的模型训练方法包括执行步骤s101至步骤s104,如图8所示,本实施例的模型训练方法还可以包括:99.步骤s801:响应于模型功能调整请求,根据第一关键交互信息,对第一训练样本进行更新。100.模型功能调整请求,可以理解为不改变交互日志解析模型当前所能够输出的解析结果的维度,而是将输出的某一维度的具体信息进行调整。例如,原本的交互日志解析模型能够输出a状态参数是否正常,调整为输出b状态参数是否正常,虽然输出的结果改变但仍然是状态参数指标维度下的输出结果。101.步骤s802:基于强化学习算法,利用更新的第一训练样本对第一多维q表进行训练,得到功能调整的交互日志解析模型。102.在本实施方式中,由于使用了强化学习中的多维q表训练交互日志解析模型,因此基于多维q表的功能扩展性强的特性,在交互日志解析模型的功能需要调整时,直接对第一多维q表进行调整,即可实现新模型的训练。本实施例的方法可以实现根据业务需要随时对第一多维q表的内容进行调整,不会对计算复杂度产生影响,当需要根据业务更新交互日志解析模型,使交互日志解析模型解析新的内容时,只需要直接调整第一多维q表的内容即可,无需额外的逻辑判断,因此不会额外占用运算资源。103.在一种实施方式中,本实施例的模型训练方法包括执行步骤s101至步骤s104,其中,如图9所示,步骤s104:基于强化学习算法,利用第一训练样本对第一多维q表进行训练,得到交互日志解析模型,可以进一步包括:104.步骤s901:根据第一训练样本,确定状态空间,其中,状态空间至少包含两个维度的状态信息。105.步骤s902:根据历史交互日志对应的业务类型,确定动作空间。106.步骤s903:根据状态空间和动作空间,确定获取奖励值的多维矩阵。107.步骤s904:基于时间差分法,利用状态空间、动作空间和多维矩阵对第一多维q表进行训练,得到交互日志解析模型。108.在本实施方式中,利用强化学习中的时间差分法,可以高效且准确的基于第一多维q表训练得到所需的交互日志解析模型。109.在一个应用示例中,确定状态空间具体包括:基于第一训练样本,确定回调转移状态空间和确定回调参数状态。110.每一次的回调中,都是从一个回调状态转移到下一个回调状态,因此,基于第一训练样本,回调转移状态空间包括以下内容:[0111][0112]其中,ts表示t时刻下语音回调转移状态,tsx,y表示从x回调到y回调的转移状态。tsx,y=1表示语音从x回调到y回调,反之,则为0。[0113]每一个语音回调都带有回调参数,因此,基于第一训练样本,回调参数空间包括以下内容:[0114]ps(t)=[ps1,ps2,...,psm][0115]其中,ps(t)表示在t时刻下的回调参数状态,psm表示m回调的参数状态。[0116]确定动作空间具体包括:根据预设的动作确定动作空间内容。[0117]动作空间包含以下内容:[0118]a(t)={cbmiss,cbpmiss,cb_correct}[0119]其中,a(t)为在t时刻下的对回调的判断动作空间,cbmiss表示判断为回调缺失,cbpmiss表示为回调参数缺失,cb_correct表示为回调正确。[0120]动作的潜在奖励可由关于ts,ps和a的三维矩阵表示:[0121]q(ts,ps,a)[0122]可用q(ts,ps,a)则表示在ts和ps状态下,采取动作a所能获得的潜在奖励。[0123]第一多维q表可由下式更新:[0124]q(ts,ps,a)←q(ts,ps,a) α[r γmaxa′q(ts′,ps′,a′)-q(ts,ps,a)][0125]其中,α为学习率,γ为衰减值,r为奖励值,maxa′q(ts′,ps′,a′)为下一状态ts′和ps′预期所能获得的最大q值。[0126]本公开的实施方式提供一种交互日志解析方法,如图10所示,其为本实施例的交互日志解析方法的流程图,该方法可以包括以下步骤:[0127]步骤s1001:基于目标交互日志,确定目标交互信息。[0128]步骤s1002:利用应用本公开任一实施例模型训练方法所得到的交互日志解析模型,对目标交互信息进行解析并输出解析结果。[0129]在本实施方式中,通过本公开任一实施例模型训练方法所得到的交互日志解析模型对目标交互日志进行解析,能够得到更加准确的解析结果。可以实现对交互日志的自动化解析,输出业务所需的各类解析结果,减少了人工测试的成本。[0130]在一个示例中,解析结果可视化输出在测试人员所使用的终端上。[0131]在一个应用示例中,本公开任一实施例提供的交互日志解析方法,均可以应用于用户与智能语音终端的端到端软件测试日志解析中。其中,智能语音终端包括但不限于:智能手机、智能手表、智能音箱、智能家电、车辆等。[0132]在一个示例中,交互日志解析模型具体输出的解析结果可以根据需要进行选择和调整,在此不做具体限定。例如,解析结果可以包括:每一次交互逻辑是否正常判断、交互过程中的必要状态是否存在的、交互是否有异常跳变、状态参数是否正常,以及一次交互过程中是否存在异常信息的结果中的至少一个。[0133]随着人工智能技术的快速发展和核心技术的突破性进步,越来越多的用户热衷于使用搭载有人机交互技术(例如,语音交互技术)的各类智能设备(例如,计算机、手机、车辆、智能电视、智能音箱、智能手表、扫地机器人、陪伴型机器人等)。这些智能设备给用户带来了更加方便和更具科技感的使用体验。人机交互技术发展至今,技术已日渐成熟,端到端软件解决方案的智能业务逻辑控制,极大的保证了人机交互的效果,提高了人机交互的体验。而为了保证各类智能设备或所安装的应用程序的人机交互效果,在上市前需要对人机交互进行全方位测试。对于任意一套完备的测试系统而言,交互日志的处理和分析都是测试的核心任务。如何快速有效的处理交互日志、如何全面细致的获取交互日志中的关键信息、如何基于关键信息对交互日志进行解析,对于人机交互来说是发现问题、定位问题以及提高测试效率的关键所在。图11示出根据本公开实施例的交互日志解析方法的应用场景示意图,通过该应用场景示意图,示例性的描述了可以利用智能设备、后台服务器(或云端)等,基于交互日志解析模型对目标交互日志进行解析。如图11所示,图中包括计算机1101、手机1102、车辆1103、智能家电1104、智能手表1105、机器人1106、第一数据库1107、服务器1108、终端1109、第二数据库1110、检测人员终端1111以及服务器1112。[0134]具体的,待检测的计算机1101、手机1102、车辆1103、智能家电1104、智能手表1105、机器人1106在与用户进行人机交互时产生的目标交互日志存储在第一数据库1107中。其中,目标交互日志可以是用户与计算机1101、手机1102、车辆1103、智能家电1104、智能手表1105、机器人1106的自身系统进行人机交互时产生的日志,也可以是用户与计算机1101、手机1102、车辆1103、智能家电1104、智能手表1105、机器人1106上安装的具有人机交互功能的应用程序进行人机交互时产生的日志。服务器1108用于从第一数据库1107中获取目标交互日志,并基于目标交互日志,采用本公开任一实例的交互日志解析方法,基于交互日志解析模型对目标交互日志进行解析。其中,服务器1108可以理解为是一个独立进行运算的服务器,也可以理解为分布式服务器集群。服务器1108在得到目标交互日志的解析结果后,可以根据业务需求,将目标交互日志的解析结果发送至终端1109、第二数据库1110、检测人员终端1111或服务器1112的至少一个中,以供后续终端1109、第二数据库1110、检测人员终端1111或服务器1112可以对目标交互日志的解析结果进行进一步处理。[0135]在一种实施方式中,本实施例的交互日志解析方法包括执行步骤s1001至步骤s1002,其中,如图12所示,步骤s1001:基于目标交互日志,确定目标交互信息,可以进一步包括:[0136]步骤s1201:以一次完整交互过程作为筛选粒度,对目标交互日志进行数据筛选。[0137]步骤s1202:将筛选出的数据确定为目标交互信息。[0138]一次完整交互过程,可以根据需要进行定义。例如,用户的一次交互请求和智能终端的一次反馈,定义为一次完整交互过程。又如,用户在某一时段内连续的人机交互过程(包含有用户的多次交互请求和终端的多次反馈),定义为一次完整交互过程。[0139]确定一次完整交互过程的方式可以包括:通过从目标交互日志中查找源代码的一致uuid来确定一次完整交互过程。通过在目标交互日志中查找体现交互的开始、中间过程和结束三个完整过程的源代码来确定。通过在目标交互日志中查找体现交互的开始和中断的过程的源代码来确定。[0140]将筛选出的数据确定为目标交互信息,可以理解为将筛选出的数据直接作为目标交互信息,也可以理解为对筛选出的数据进行预处理后,再作为目标交互信息。例如,如果筛选出的数据的数据格式与模型输入接口的数据格式匹配,则直接将筛选出的数据作为目标交互信息。如果筛选出的数据的数据格式与模型输入接口的数据格式不匹配,则需要对筛选出的数据的数据格式转换至与模型输入接口的数据格式匹配,然后将转换后的筛选出的数据确定为目标交互信息。[0141]在本实施方式中,以一次完整交互过程作为筛选力度,可以保证得到的目标交互信息的数据完整性,也使得交互日志解析模型能够基于目标交互信息,更加准确的对目标交互日志进行解析。[0142]在一种实施方式中,本实施例的交互日志解析方法包括执行步骤s1001至步骤s1002,其中,如图13所示,步骤s1001:基于目标交互日志,确定目标交互信息,可以进一步包括:[0143]步骤s1301:以一次完整交互过程作为筛选粒度,对目标交互日志进行数据筛选。[0144]步骤s1302:根据预设数据格式转换规则,对筛选出的数据进行数据格式转换。[0145]预设数据格式转换规则根据在训练时模型输入接口对应的数据格式进行定义。保证标注后的第一关键交互信息进行数据格式转换后能够直接用于训练。[0146]步骤s1303:将数据格式转换后的筛选出的数据,确定为目标交互信息。[0147]在本实施方式中,在将目标交互信息输入交互日志解析模型前,由于增加了格式转换步骤,因此可以提升本公开实施例的交互日志解析方法的复用性。使得本公开实施例的交互日志解析方法可以对不同运行平台、不同应用程序所存储的代码风格迥异的目标交互日志进行解析。[0148]在一种实施方式中,如图14所示,本公开任一实施例的交互日志解析方法可以应用于语音交互日志的解析场景中。交互日志解析方法可以包括以下步骤:[0149]步骤一:从智能终端中获取被测日志(即目标日志)。[0150]步骤二:利用类型适配器对被测日志进行关键信息提取和格式化重定义,得到目标交互信息。[0151]步骤三:将目标交互信息作为数据源输入本公开任一实施例模型训练方法所得到的交互日志解析模型(最优模型)。[0152]步骤四:利用交互日志解析模型对被测日志进行解析,并输出交互逻辑是否正常、状态参数是否正常、是否发生异常交互错误、以及是否存在状态异常跳变的解析结果。[0153]步骤五:对解析结果的结论进行信息汇总,并将结果数据进行展示。[0154]本公开的实施方式提供一种模型训练装置,如图15所示,其为本实施例的模型训练装置的结构框图,该装置可以包括:[0155]第一确定模块150,用于基于历史交互日志,确定第一关键交互信息。[0156]第二确定模块151,用于根据第一关键交互信息,确定第一训练样本。[0157]构建模块152,用于根据第一关键交互信息对应的信息维度,构建第一多维q表。[0158]训练模块153,用于基于强化学习算法,利用第一训练样本对第一多维q表进行训练,得到交互日志解析模型。[0159]在一种实施方式中,构建模块152可以包括:[0160]第一确定子模块,用于根据第一关键交互信息,确定对应的信息维度至少包括交互瞬时状态维度、交互转移状态维度和状态参数维度。[0161]构建子模块,用于根据交互瞬时状态维度、交互转移状态维度和状态参数维度,构建第一多维q表。[0162]在一种实施方式中,模型训练装置还可以包括:[0163]功能扩展模块,用于响应于模型功能扩展请求,基于历史交互日志,确定第二关键交互信息。根据第二关键交互信息,确定第二训练样本。根据第二关键交互信息对应的信息维度,对第一多维q表进行调整,构建第二多维q表。基于强化学习算法,利用第二训练样本对第二多维q表进行训练,得到功能扩展的交互日志解析模型。[0164]在一种实施方式中,模型训练装置还可以包括:[0165]功能调整模块,用于响应于模型功能调整请求,根据第一关键交互信息,对第一训练样本进行更新。基于强化学习算法,利用更新的第一训练样本对第一多维q表进行训练,得到功能调整的交互日志解析模型。[0166]在一种实施方式中,第一确定模块150包括:[0167]筛选子模块,用于以一次完整交互过程作为筛选粒度,对历史交互日志进行数据筛选。[0168]第二确定子模块,用于将筛选出的数据确定为第一关键交互信息。[0169]在一种实施方式中,第二确定模块151包括:[0170]标注子模块,用于对第一关键交互信息进行样本标注。[0171]格式转换子模块,根据预设数据格式转换规则,对标注后的第一关键交互信息进行数据格式转换。[0172]第三确定子模块,用于将数据格式转换后的第一关键交互信息确定为第一训练样本。[0173]在一种实施方式中,训练模块153包括:[0174]第四确定子模块,用于根据第一训练样本,确定状态空间,其中,状态空间至少包含两个维度的状态信息。[0175]第五确定子模块,用于根据历史交互日志对应的业务类型,确定动作空间。[0176]第六确定子模块,用于根据状态空间和动作空间,确定获取奖励值的多维矩阵。[0177]训练子模块,用于基于时间差分法,利用状态空间、动作空间和多维矩阵对第一多维q表进行训练,得到交互日志解析模型。[0178]本公开的实施方式提供一种交互日志解析装置,如图16所示,其为本实施例的交互日志解析装置的结构框图,该装置可以包括:[0179]确定模块160,用于基于目标交互日志,确定目标交互信息。[0180]解析模块161,用于利用应用本公开任一实施例模型训练方法所得到的交互日志解析模型,对目标交互信息进行解析并输出解析结果。[0181]在一个示例中,解析结果包括:每一次交互逻辑是否正常判断、交互过程中的必要状态是否存在的、交互是否有异常跳变、状态参数是否正常,以及一次交互过程中是否存在异常信息的结果中的至少一个。[0182]在一种实施方式中,确定模块用于:[0183]以一次完整交互过程作为筛选粒度,对目标交互日志进行数据筛选。将筛选出的数据确定为目标交互信息。[0184]在一种实施方式中,确定模块用于:[0185]以一次完整交互过程作为筛选粒度,对目标交互日志进行数据筛选。根据预设数据格式转换规则,对筛选出的数据进行数据格式转换。将数据格式转换后的筛选出的数据,确定为目标交互信息。[0186]本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。[0187]根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。[0188]图17示出了可以用来实施本公开的实施例的示例电子设备1700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。[0189]如图17所示,设备1700包括计算单元1701,其可以根据存储在只读存储器(rom)1702中的计算机程序或者从存储单元1708加载到随机访问存储器(ram)1703中的计算机程序,来执行各种适当的动作和处理。在ram1703中,还可存储设备1700操作所需的各种程序和数据。计算单元1701、rom1702以及ram1703通过总线1704彼此相连。输入/输出(i/o)接口1705也连接至总线1704。[0190]设备1700中的多个部件连接至i/o接口1705,包括:输入单元1706,例如键盘、鼠标等;输出单元1707,例如各种类型的显示器、扬声器等;存储单元1708,例如磁盘、光盘等;以及通信单元1709,例如网卡、调制解调器、无线通信收发机等。通信单元1709允许设备1700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。[0191]计算单元1701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1701的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元1701执行上文所描述的各个方法和处理,例如,模型训练方法和/或交互日志解析方法。例如,在一些实施例中,模型训练方法和/或交互日志解析方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1708。在一些实施例中,计算机程序的部分或者全部可以经由rom1702和/或通信单元1709而被载入和/或安装到设备1700上。当计算机程序加载到ram1703并由计算单元1701执行时,可以执行上文描述的模型训练方法和/或交互日志解析方法的一个或多个步骤。备选地,在其他实施例中,计算单元1701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行模型训练方法和/或交互日志解析方法。[0192]本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。[0193]用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。[0194]在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。[0195]为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。[0196]可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。[0197]计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。[0198]应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。[0199]上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献