GRU编解码器训练方法、音频的摘要生成方法及装置与流程

文档序号:18642791发布日期:2019-09-11 23:44阅读:369来源:国知局
GRU编解码器训练方法、音频的摘要生成方法及装置与流程
本申请涉及人工智能
技术领域
,尤其涉及一种gru编解码器训练方法、音频的摘要生成方法及装置。
背景技术
:随着智能终端设备(智能手机、平板电脑等)的迅猛发展与成熟,以智能终端设备为依托的多媒体(音视频等)业务也得到了巨大的发展,各种音视频网站及应用软件层出不穷(例如,喜马拉雅、抖音、快手等)。用户可以在这些应用软件上上传或者搜索以收听或者观看自己感兴趣的内容。但目前用于表征音视频内容的往往是上传者自己给出的命名,而且实践发现,上传者自行命名的内容往往存在于音视频实际内容不符(例如,上传这往往仅仅为了骗取点击量,将自己上传的音视频命名为当前的热点事件,以达到蹭热点的目的)。这就导致搜索相关内容的人往往搜索得到的内容是与预期内容不相同的,影响了用户体验。为此,音视频应用软件运营方只能采用人工方式对用户上传的内容进行标注并与相应音视频关联存储。这种方式不但耗时耗力,人工成本极高。而且由于限制于标注着个人的认知能力,对音视频的标注往往缺乏多样性,以至于当用户搜索是采用了不同于标注内容表述形式时无法搜索到实际匹配的音视频内容。技术实现要素:本申请实施例提供一种gru编解码器训练方法、音频的摘要生成方法及装置,用于至少解决上述技术问题之一。第一方面,本申请实施例提供一种gru编解码器训练方法,所述gru编解码器用于生成待描述音频的摘要,所述方法包括:将样本音频分割为多个子样本音频片段;获取所述多个子样本音频片段的样本fbank滤波器特征;将所述样本fbank滤波器特征输入至待训练gru编码器,以得到固定长度的样本特征向量;将所述样本特征向量输入至待训练gru解码器,以得到相应的样本词向量嵌入;根据对应于所述样本音频的样本标注语句生成相应的参考样本词向量嵌入;根据所述样本词向量嵌入和所述参考样本词向量嵌入生成词级交叉熵损失;至少基于所述词级交叉熵损失对所述待训练gru解码器和所述待训练gru编码器的网络参数进行优化调整。第二方面,本申请实施例提供一种一种音频的摘要生成方法,包括:将待描述音频分割为多个子音频片段;获取所述多个子音频片段的fbank滤波器特征;采用预先训练的gru编码器将所述fbank滤波器特征转化为固定长度的特征向量;采用预先训练的gru解码器对所述特征向量进行解码,以得到用于描述所述待描述音频的摘要;其中,所述gru编码器和所述gru解码器采用本申请实施例中的任一项gru编解码器训练方法训练得到。第三方面,本申请实施例提供一种gru编解码器训练装置,所述gru编解码器用于生成待描述音频的摘要,所述装置包括:音频分割程序模块,用于将样本音频分割为多个子样本音频片段;滤波器特征获取程序模块,用于获取所述多个子样本音频片段的样本fbank滤波器特征;特征向量获取程序模块,用于将所述样本fbank滤波器特征输入至待训练gru编码器,以得到固定长度的样本特征向量;第一词嵌入获取程序模块,用于将所述样本特征向量输入至待训练gru解码器,以得到相应的样本词向量嵌入;第二词嵌入获取程序模块,用于根据对应于所述样本音频的样本标注语句生成相应的参考样本词向量嵌入;损失确定程序模块,用于根据所述样本词向量嵌入和所述参考样本词向量嵌入生成词级交叉熵损失;参数优化程序模块,用于至少基于所述词级交叉熵损失对所述待训练gru解码器和所述待训练gru编码器的网络参数进行优化调整。第四方面,本申请实施例提供一种音频的摘要生成装置,包括:音频分割程序模块,用于将待描述音频分割为多个子音频片段;滤波器特征获取程序模块,用于获取所述多个子音频片段的fbank滤波器特征;特征向量获取程序模块,用于采用预先训练的gru编码器将所述fbank滤波器特征转化为固定长度的特征向量;摘要生成程序模块,用于采用预先训练的gru解码器对所述特征向量进行解码,以得到用于描述所述待描述音频的摘要;其中,所述gru编码器和所述gru解码器采用本申请实施例中的任一项gru编解码器训练方法训练得到。第五方面,本申请实施例提供一种存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本申请上述任一项gru编解码器训练方法和/或音频的摘要生成方法。第六方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请上述任一项gru编解码器训练方法和/或音频的摘要生成方法。第七方面,本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项gru编解码器训练方法和/或音频的摘要生成方法。本申请实施例所提供的方法能够用于训练得到一种根据给定音频生成相应于该给定音频的摘要描述的gru编解码器。使得自动根据音频生成文字摘要成为可能,节省了人力物力财力,而且还极大的提升了效率和准确性。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请的gru编解码器训练方法的一实施例的流程图;图2为本申请的gru编解码器训练方法的另一实施例的流程图;图3为本申请的音频的摘要生成方法的一实施例的流程图;图4为本申请的gru编解码器训练装置的一实施例的原理框图;图5为本申请的音频的摘要生成装置的一实施例的原理框图;图6为本申请的gru编解码器训练方法的一实施例的原理图;图7为本申请中在中国汽车数据集上不同嵌入和损失函数时的损失曲线图;图8为本申请的终端设备的一实施例的结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。在本申请中,“模块”、“装置”、“系统”等指应用于计算机的相关实体,如硬件、硬件和软件的组合、软件或执行中的软件等。详细地说,例如,元件可以、但不限于是运行于处理器的过程、处理器、对象、可执行元件、执行线程、程序和/或计算机。还有,运行于服务器上的应用程序或脚本程序、服务器都可以是元件。一个或多个元件可在执行的过程和/或线程中,并且元件可以在一台计算机上本地化和/或分布在两台或多台计算机之间,并可以由各种计算机可读介质运行。元件还可以根据具有一个或多个数据包的信号,例如,来自一个与本地系统、分布式系统中另一元件交互的,和/或在因特网的网络通过信号与其它系统交互的数据的信号通过本地和/或远程过程来进行通信。最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本申请实施例提供一种用于根据待描述音频生成相应的摘要的gru编解码器的训练方法,该方法可以依托于相应的运行程序被终端设备所执行。终端设备可以是用户级的设备(例如,智能手机、台式电脑或者平板电脑),也可以是企业级的设备(例如,服务器或者台式电脑等),本申请对此不作限定。gru编解码器的训练方法训练得到的gru编解码器能够用于实现一种音频的摘要生成方法,该方法可以依托于相应的运行程序被终端设备所执行。并且,该运行程序可以是由运营商所制作的供终端用户自行下载自行使用的应用软件。终端设备可以是用户级的设备(例如,智能手机、台式电脑或者平板电脑),也可以是企业级的设备(例如,服务器或者台式电脑等),本申请对此不作限定。如图1所示,本申请的实施例提供一种gru编解码器训练方法,所述gru编解码器用于生成待描述音频的摘要,待描述音频可以是待描述的纯音频文件,也可以是源自视频的音频文件,所述方法包括:s11、将样本音频分割为多个子样本音频片段。本申请的一些实施例中,样本音频是在汽车场景发布的一个10小时普通话标注数据集,本申请中将这个汽车数据集成为“car-ssette”,其包含了3602个汽车场景相关的音频剪辑(片段),每个音频剪辑持续10秒。s12、获取所述多个子样本音频片段的样本fbank滤波器特征。本申请的一些实施例中,每10ms提取25ms窗口的典型64维fbank特征。在训练期间,我们对每个特征应用了全局标准化(均值和方差)。由于注释是普通话,一种不用句子中的空格分隔单词的语言,我们需要标记转录。在这里,斯坦福核心nlp工具用于解析。s13、将所述样本fbank滤波器特征输入至待训练gru编码器,以得到固定长度的样本特征向量。对于每个音频剪辑,gru编码器读取滤波器组(fbank)特征并将其编码为固定长度的特征向量。在训练期间,“teacherforcing”用于加速训练过程。s14、将所述样本特征向量输入至待训练gru解码器,以得到相应的样本词向量嵌入;s15、根据对应于所述样本音频的样本标注语句生成相应的参考样本词向量嵌入。示例性地,将对应于所述样本音频的样本标注语句输入至预训练的bert网络模型,以得到相应的参考样本词向量嵌入。bert网络模型是一个预训练的网络模型,具体举例进行如下简单的介绍:假设已有a训练集(可以是任意成熟的用于训练bert网络模型的数据集),先用a对网络进行预训练,在a任务上学会网络参数,然后保存以备后用,当来一个新的任务b(例如,本申请中的自动生成标题任务),采取相同的网络结构,网络参数初始化的时候可以加载a学习好的参数,其他的高层参数随机初始化,之后用b任务的训练数据来训练网络,当加载的参数保持不变时,称为"frozen",当加载的参数随着b任务的训练进行不断的改变,称为“fine-tuning”,即更好地把参数进行调整使得更适合当前的b任务。在这个任务中,我们根据实际的需求采用了谷歌发布的简体中文预训练模型,并且利用最终得到的词向量,求均值得到句子向量嵌入。s16、根据所述样本词向量嵌入和所述参考样本词向量嵌入生成词级交叉熵损失。本实施例中基于词级交叉熵损失来对gru编解码器的网络参数进行优化,使得训练得到的gru编解码器能够在词级别具有更高的准确性。s17、至少基于所述词级交叉熵损失对所述待训练gru解码器和所述待训练gru编码器的网络参数进行优化调整。本申请实施例所提供的方法能够用于训练得到一种根据给定音频生成相应于该给定音频的摘要描述的gru编解码器。使得自动根据音频生成文字摘要成为可能,节省了人力物力财力,而且还极大的提升了效率和准确性。如图2所示,在一些实施例中所述样本标注语句包括多个不同表述形式的子样本标注语句;所述根据对应于所述样本音频的样本标注语句生成相应的参考样本词向量嵌入包括:s151、将所述多个不同表述形式的子样本标注语句依次输入至预训练的bert网络模型以得到多个子参考样本词向量嵌入;s152、基于所述多个子参考样本词向量嵌入确定所述参考样本词向量嵌入。本申请预先建立一个新的音频—标题数据集,数据集中每段音频拥有数个描述它的自然语言标题;利用这个数据集可以训练一个自动生成标题的深度神经网络;最后将训练好的模型用于实际音频描述场景中形成产品。数据集是以每段音频对应多个描述标题的形式来呈现,例如下表1:本申请实施例中,由于在样本库中对应于每一个音频片段都有多个表述不同的描述语句,从而对于同一场景多个不同表述形式的描述语句可能采用了含义相近但表述不同的词语。不同的标题是由不同的标注者标注的,为了保证标注的多样性,希望模型能够学习到输出丰富多样的句子表述的能力。在一些实施例中,本申请的gru编解码器训练方法还包括:自所述待训练gru解码器的隐层提取对应于所述样本特征向量的样本隐层向量;根据对应于所述样本音频的样本标注语句生成相应的参考样本句子向量嵌入;根据所述样本隐层向量和所述参考样本句子向量嵌入生成句级损失(示例性地,句子余弦损失);至少基于所述词级交叉熵损失对所述待训练gru解码器和所述待训练gru编码器的网络参数进行优化调整包括:基于所述词级交叉熵损失和所述句级损失对所述待训练gru解码器和所述待训练gru编码器的网络参数进行优化调整。本申请实施例提出了句子级损失函数,以便在添加的平均池层的基础上比较语义相似性。从而能够在提升句子多样性的情况下,确保句子含义的一致性,即保证了所生成的摘要与待描述音频的一致性和关联性。本实施例中基于词级交叉熵损失来对gru编解码器的网络参数进行优化,使得训练得到的gru编解码器能够在词级别具有更高的准确性。而且由于在样本库中对应于每一个音频片段都有多个表述不同的描述语句,从而对于同一场景多个不同表述形式的描述语句可能采用了含义相近但表述不同的词语。因此,本实施例中同时采用了句级损失函数来对gru编解码器进行训练,可以使得到的gru编解码器能够对待描述音频生成更加多样化、更加贴近于人的表述习惯的摘要(避免了摘要的生硬性)。本申请实施例中的gru编解码器的训练方法训练得到的gru编解码器能够用于实现一种音频的摘要生成方法,该方法可以依托于相应的运行程序被终端设备所执行。并且,该运行程序可以是由运营商所制作的供终端用户自行下载自行使用的应用软件。终端设备可以是用户级的设备(例如,智能手机、台式电脑或者平板电脑),也可以是企业级的设备(例如,服务器或者台式电脑等),本申请对此不作限定。如图3所示,本申请实施例提供了一种音频的摘要生成方法,包括:s21、将待描述音频分割为多个子音频片段;s22、获取所述多个子音频片段的fbank滤波器特征;s23、采用预先训练的gru编码器将所述fbank滤波器特征转化为固定长度的特征向量;s24、采用预先训练的gru解码器对所述特征向量进行解码,以得到用于描述所述待描述音频的摘要;其中,所述gru编码器和所述gru解码器采用前述gru编解码器的训练方法中任一项实施例所述的方法训练得到。本申请实施例所提供的音频的摘要生成方法使得自动根据音频生成文字摘要成为可能,节省了人力物力财力,而且还极大的提升了效率和准确性。如图4所示,本申请实施例还提供一种gru编解码器训练装置400,所述gru编解码器用于生成待描述音频的摘要,所述装置400包括:音频分割程序模块410,用于将样本音频分割为多个子样本音频片段;滤波器特征获取程序模块420,用于获取所述多个子样本音频片段的样本fbank滤波器特征;特征向量获取程序模块430,用于将所述样本fbank滤波器特征输入至待训练gru编码器,以得到固定长度的样本特征向量;第一词嵌入获取程序模块440,用于将所述样本特征向量输入至待训练gru解码器,以得到相应的样本词向量嵌入;第二词嵌入获取程序模块450,用于根据对应于所述样本音频的样本标注语句生成相应的参考样本词向量嵌入;示例性地,将对应于所述样本音频的样本标注语句输入至预训练的bert网络模型,以得到相应的参考样本词向量嵌入。损失确定程序模块460,用于根据所述样本词向量嵌入和所述参考样本词向量嵌入生成词级交叉熵损失;参数优化程序模块470,用于至少基于所述词级交叉熵损失对所述待训练gru解码器和所述待训练gru编码器的网络参数进行优化调整。本申请实施例所提供的装置能够用于训练得到一种根据给定音频生成相应于该给定音频的摘要描述的gru编解码器。使得自动根据音频生成文字摘要成为可能,节省了人力物力财力,而且还极大的提升了效率和准确性。如图5所示,本申请实施例还提供一种音频的摘要生成装置500,包括:音频分割程序模块510,用于将待描述音频分割为多个子音频片段;滤波器特征获取程序模块520,用于获取所述多个子音频片段的fbank滤波器特征;特征向量获取程序模块530,用于采用预先训练的gru编码器将所述fbank滤波器特征转化为固定长度的特征向量;摘要生成程序模块540,用于采用预先训练的gru解码器对所述特征向量进行解码,以得到用于描述所述待描述音频的摘要;其中,所述gru编码器和所述gru解码器采用前述gru编解码器的训练方法中任一项实施例所述的方法训练得到。本申请实施例所提供的音频的摘要生成方法使得自动根据音频生成文字摘要成为可能,节省了人力物力财力,而且还极大的提升了效率和准确性。本申请提供了一个与具体场景相关的音频—标题数据集,每组数据用多个句子描述音频,从而训练了一个自动根据音频生成描述内容的系统,也可以训练一个音频检索系统,通过自然语言搜索内容与描述音频内容的匹配度在大量音频中快速检索符合条件的音频。需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在一些实施例中,本申请实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本申请上述任一项gru编解码器训练方法和/或音频的摘要生成方法。在一些实施例中,本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项gru编解码器训练方法和/或音频的摘要生成方法。在一些实施例中,本申请实施例还提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行gru编解码器训练方法和/或音频的摘要生成方法。在一些实施例中,本申请实施例还提供一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现gru编解码器训练方法和/或音频的摘要生成方法。上述本申请实施例的装置可用于执行本申请实施例的方法,并相应的达到上述本申请实施例的实现方法所达到的技术效果,这里不再赘述。本申请实施例中可以通过硬件处理器(hardwareprocessor)来实现相关功能模块。本申请是以发明人的实际实验研究为基础所作出的发明创造,是在经过了实验验证的。关于发明人对于本申请的研究与探索具体呈现如下:1、介绍:自动标题是一项具有挑战性的任务,涉及不同模态的联合学习。例如,图像标题需要从图像中提取特征并将这些特征与语言模型组合以生成合理的句子来描述图像。类似地,视频标题从时间序列的图像以及音频中学习特征以生成标题。然而,与图像和视频领域不同,音频标题没有引起太多关注。最近发表了一个医院场景中人工标注的10小时音频数据集,并结合基线编码器-解码器模型生成自然语言标题。虽然通过bleu评分评估的模型表现特别高,但人工评估结果确并不理想。大多数机器生成的句子是单调和重复的,而相比之下,人工标注在内容和表达中更加生动。因此,我们的模型应该努力生成更多独特的句子,不仅描述详细的音频内容,还包含更丰富的词汇和多样化的句子结构。例如,对于音频剪辑中的汽车碰撞声,一个不错的模型预计会生成一个标题,如“汽车与其他人发生碰撞”或“交通事故发生”,而不是重复“有一个车祸的声音”甚至“有一种汽车的声音”。为了实现使用各种表达式生成特定标题的目标,我们首先使用更新的标签策略在汽车场景上发布数据集。接下来,我们通过使用具有可变长度的上下文相关的句子嵌入来试图解决缺乏多样性的问题。此外,我们还努力提供一种更可靠的方法来评估机器生成的标题。如前所述,当前的客观指标无法按预期评估机器生成的句子。基于n-grams的度量标准主要考虑上下文单词共现,这在检查语义相关性方面不是很有效。由于我们的目标是生成语义上类似人类标注但形式多样化的句子,因此迫切需要一种新的鲁棒的客观度量标准。2、相关工作自动起标题模型:图像和视频标题最近见证了显著的进步。从序列到序列的模型通过简单地使用时间图像信息实现了性能良好的视频标题模型。句子嵌传统技术手段在自然语言处理(nlp)中侧重于无语境的嵌入。最近,像cove,elmo和gpt这样的模型利用自注意力机制和transformer来构建上下文相关的词向量表示。在本申请中,我们的工作基于谷歌的名为bert的最先进的句子嵌入技术。它包含在大型语料库上训练的大型双向transformer,因此从预训练的bert模型中提取的嵌入可以通过一些微调工作在许多任务中取得良好表现。评估指标:在现有的标题工作中,评估指标主要来自机器翻译:计算了bleu@1-4,meteor,cider和rouge-l得分。所有这些指标均基于假设与参考之间的n-gram重叠。还有一些现有技术将图像标题作为句子排名任务处理,并使用召回率@k和中位数@r作为其度量。除了bleu分数之外,还包括在模型输出和人类标注嵌入之间的余弦相似性作为语义评估。3、汽车场景下的音频—标题数据集这项工作在汽车场景发布了一个10小时普通话标注数据集,可以实现音频标题,扩展到上述医院数据集。还提供了使用百度翻译,以便更广泛地访问。我们将这个当前的汽车数据集称为“car-ssette”,因为它包含3602个汽车场景相关的音频剪辑,每个都持续10秒。该数据集显示了医院数据集中的一些差异:·当前汽车数据集包括大量现实生活中的录音,而医院数据集则包含更多来自电视节目的视频片段。表2显示了前5个声音事件。所有音频剪辑中超过1/3出现“引擎声音”。表2:最频繁的声音事件序号声音事件事件频次1发动机声音14422噪声8723点击生8124音乐7985谈话563·我们调整每个剪辑和标记策略的注释数量:本地普通话注释器的数量从之前的医院场景中的3个更新为当前的5个;与先前全面的标记策略相反,该当前数据集通过仅包括自然语句注释并且用简单的方法生成其他元数据。声音事件,主题等数据直接通过自然语言描述来生成。尽管在之前的医院场景中成功生成了语法正确且与场景相关的标题,但缺乏精确性和多样性的问题需要得到解决。更有趣的是,通常的客观指标无法有效评估我们的结果。当前调整的数据集能够让我们将焦点转移到改善机器生成的句子质量并搜索更好的评估度量。汽车数据集分为训练集和验证集,分别包含3241和361个音频。在两组数据集中都观察到较高的句子多样性:训练集中仅6.7%的句子和验证集中仅1.9%的句子是重复的。从表3中前5个词语的分布可以看出,验证集和训练集表现出类似的词语分布。表3:车载场景数据集中的词语分布为了研究我们的模型泛化能力,特别是在跨场景环境下,我们进一步试验了另外两个数据集。一个是医院数据集,包括3707个音频片段,每个片段有3个人类标注;另一个是创建一个联合数据集,它将汽车和医疗数据集合并在一起。应该注意的是,这是一个平衡的数据集,因为2个数据集中的音频剪辑的数量是相似的(汽车:3602;医院:3707)。4、模型说明由于编码器-解码器模型可以生成音频相关和语法正确的句子,我们继续采用类似的架构,并进行某些修改以增强性能。如图6所示,为本申请中的gru编解码器训练方法的一实施例的原理图。输入为wav文件,首先提取fbank特征,经gru编码器的隐藏层的处理之后求均值输出至gru解码器。本实施例中对应于输入wav文件的标注为“thetruckismovingfast(汽车在快速行驶)”,而经gru解码器解码得到的模型输出为“thetruckismovingslowly(汽车在缓慢行驶)”,之后采用交叉熵和句子损失对gru编解码器的网络参数进行更新。对于每个音频剪辑,gru编码器读取滤波器组(fbank)特征并将其编码为固定长度的特征向量。在训练期间,“teacherforcing”用于加速训练过程。因此,固定长度特征向量与标注的词向量嵌入连接起来,然后馈送到解码器。在评估和测试期间,没有可用的转录,因此fbank特征被直接馈送到解码器以生成自然语言标题。对于每个时间步,解码器生成单个词语,直到生成“<eos>”标志(参见图6)。标准交叉熵用作词级损失等式(1),其被定义为在时间t给定转录s0(t)的预期单词s(t)的负对数似然。此外,我们提出了句子级损失函数,以便在添加的平均池层的基础上比较语义相似性。由于解码器在每个时间步长的输出大小等于我们的句子表示(例如,bert)向量的大小,因此需要池化以便比较人类转录和模型预测之间的语义相似性。在这项工作中,我们使用了均值池化。在这种池化层的基础上,可以通过两个句子嵌入之间的余弦相似度来计算语义相似度。为了最小化预测(se)和转录句子之间的嵌入差异,我们开发了与余弦相似性相对的句子损失函数(参见方程式(2),其中ε是确保数值稳定性的小数)。这样,句子损失越小,余弦相似度越高。因此,训练目标(等式(3))最小化单词(等式(1))和句子(等式(2))损失的总和。l(ss′,se,s′e)=lce(s,s′)+ls(,se,s′e)(3)使用单词和句子丢失组合,我们的模型有望生成具有类似人类内容的标题,同时在句子结构中多样化。预训练的词嵌入由于数据集的限制,现有技术中的模型从头开始训练嵌入层,这可能会使嵌入偏向最常见的单词。这可能导致模型生成重复的标题。为了部分地避免这个问题并生成具有更丰富词汇量的句子,我们使用了预训练的word2vec和bert嵌入。word2vec是一种上下文不敏感的嵌入方法,可以从我们的数据集中的人类注释中预先训练。相比之下,bert语句嵌入在大型无场景语料库中预先训练,并且对语境具有很强的敏感性。5、实验5.1、数据预处理每10ms提取25ms窗口的典型64维fbank特征。在训练期间,我们对每个特征应用了全局标准化(均值和方差)。由于注释是普通话,一种不用句子中的空格分隔单词的语言,我们需要进行分词。在这里,我们用了斯坦福核心nlp工具进行分词。基于word2vec的单词和句子嵌入被训练。我们还在已发布的简化和繁体中文模型上使用了bert来初始化固定长度的嵌入。5.2、训练过程值得一提的是,在训练阶段,没有使用交叉验证。我们通过再次强调这项工作的重点是产生不重复的,以前未出现的句子而不是复制它们来证明这种做法是正确的。词语级交叉验证只能提供有关模型如何生成相同图片的信息,对于多样化目的没什么帮助。使用adam优化算法进行训练,学习率为4e-4,批量大小为32,并且用了pytorch框架给出的默认的β值。我们尝试了三种嵌入层初始化方法:没有预训练嵌入,预训练word2vec和预训练bert。绘制每个时期的训练损失曲线(参见图7,中国汽车数据集的训练损失曲线,ce代表从头开始的字嵌入式训练,word2vec和bert代表不同的预训练词嵌入,sent表示添加`s)以可视化具有和不具有预训练的不同嵌入的效果。它揭示了预训练嵌入加速了训练(较低的初始损失和较快的收敛)。此外,通过使用bert嵌入的句子损失,获得了明显更低的最终损失。这可能部分是由于bert的上下文敏感性质,具有相似语义含义的句子彼此非常接近地嵌入,而word2vec句子严格地嵌入在词语级别中。5.3、结果:从两个方面分析结果:1)通过不同度量评估模型性能;2)不同数据集上的模型泛化能力。5.3.1、评估指标除了经典的指标bleu评分,一种基于n-gram的评估方法和人类评估之外,我们还提出了语义相似性度量:bert相似度得分。因此,我们的度量结果的呈现分为1)客观指标,包括bleu和bert分数,与生成的唯一句子数量进行比较,代表标题丰富度;2)人类评估,涉及20个母语为普通话的评分者对机器和人工生成的标题的评级。客观指标对于每个输入话语,我们有r个独立的标注,d是评估集中的输入话语数。通过选择1个标注作为假设并将其他r-1个作为参考来计算每个话语的客观得分。因此,每个话语应该具有r-1个分数。选择最大值作为代表性分数。关于bleu分数,这项工作专门使用bleu-4分数,其计算方法如公式(4)所示,其表示n-gram相似性。bert相似性得分(语义相似性的度量)被计算为与s相反(参见等式(5))。表4说明了由bleu-4评估的结果,bert相似性得分和输出丰富度(生成的唯一标题数)。有趣的是,这样的丰富度评估既不符合bleu4也不符合bert分数,这表明仅依靠独特的句子生成无法确保其与人类标注的相似性。应该指出的是,我们的目标是生成不重复的,语义上类似人类标注的标题。表4:汽车开发装置的评估结果,`s(s,s0)是附加句子嵌入损失嵌入bleu4bertunique#基线模型0.2200.919710word2vec0.2610.922269word2vec+l(s,s′)0.2350.917273bert0.2450.924562bert+l(s,s′)0.2460.925429人工标注0.2660.9353503通过将bleu4和bert相似性得分的结果与输出丰富度进行比较,可以总结出bleu-4忽略了其输出的丰富度,而bert相似性得分通过评估语义相似性而不牺牲输出丰富度更有效。例如,word2vec获得了最高和接近人类的bleu4分数,但其输出远远不满意:标题为“男性驾驶员在汽车行驶时与女乘客聊天”在所有3602个音频中反复生成近1000次。毫无疑问,它产生的不重复句子数量最少。然而,这些句子在很大程度上与基于n-gram的人类标注重叠,因此导致高bleu-4。这再次验证了bleu在评估标题任务方面不够有效的发现。当通过bert相似性得分进行评估时,bert+ls嵌入得分最高并且可以产生适度丰富的标题。同样,尽管基线模型可以生成最独特的句子,但其内容正确性相对较低。可以在这里找到一个例子:人类转录:停放在路边的停车场。一位男评论员正在谈论汽车的用户体验。基线输出:当男司机在说话时停车在路边。bert+ls输出:在路边停车,男司机正在介绍汽车。我们通过人工评估进一步评估了嵌入性能和度量效果。人类评估20名母语普通话人士被邀请评估我们的模型在普通话汽车数据集上的输出句子。人类标题,word2vec输出(由bleu-4评估的最佳嵌入)和bert+ls输出(通过bert相似性得分评估的最佳嵌入)被随机混合。评分者在五个等级上对每个标题进行评分,其中1表示最不有用,5表示最有用。结果显示,人工标注平均得分为3.39,其次是bert+s(得分为2.31),word2vec输出最不实用(得分为2.24)。值得注意的是,这与表3中的bert相似性得分一致,即bert+ls与人类注释的差异最小。这与人类评估再次表明,我们提出的bert相似性得分是比bleu4等基于n-gram的指标更有效的标题度量。5.3.2、泛化性能:为了验证我们模型的泛化能力,我们在所有3个数据集上训练了基线模型。通过不同指标评估的结果可以在表5中看到。首先,我们的模型能够推广到其他数据集,特别是跨场景数据集:跨场景数据集上的bleu-4和bert相似性得分都相对较好,这意味着基线模型可以区分不同的场景。由于医院场景中的每个音频只有3个标注,我们的模型显示了它对汽车场景的偏好:只有12个车载场景音频输入生成医院相关标题而有308个医院场景音频输入生成了车载相关的标题。其次,验证了当前模型推广更多独特句子的能力。在医院场景中,目前生成了943个不重复的标题,与之前基线模型[2]输出中的304个独特标题相比,这是一个显着的改进。第三,bleu-4和bert相似度得分表明,虽然现在可以生成场景相关的、非重复句子,但人类和机器输出之间仍然存在很大的差异。需要更多的未来研究来调查特定的缺点并最终使标题任务变得可行。表5:在3个数据集上训练的基线模型的结果6、结论以前关于音频标题的工作在场景(医院)丰富性方面受到限制,因此想到了向更大的语料库扩展的问题。我们提供10小时时长的汽车场景数据集,以应对数据上的限制。结果表明,通过使用预训练的bert嵌入以及我们提出的bert句子损失函数来微调模型,现在可以生成具有内容相关标题的丰富句子。联合数据集的结果表明,基线模型的大多数输出都与内容相关,验证了其泛化能力。本文提出了音频标题的另一个主要问题,即缺乏有效可靠的客观指标。确定标题的有用性主要依赖于昂贵的人工评分。随着对不同预训练嵌入的研究,我们得出最终结论,bert嵌入增加句子丢失可以产生最有用的标题,这与我们提出的bert类似评分和人类评价的评估结果相同。下面参考图8,其示出了适于用来实现本发明实施例的终端设备的计算机系统800的结构示意图。图8示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图8所示,计算机系统800包括中央处理单元(cpu)801,其可以根据存储在只读存储器(rom)802中的程序或者从存储部分808加载到随机访问存储器(ram)803中的程序而执行各种适当的动作和处理。在ram803中,还存储有系统800操作所需的各种程序和数据。cpu801、rom802以及ram803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。以下部件连接至i/o接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至i/o接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(cpu)801执行时,执行本发明的系统中限定的上述功能。上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。本申请实施例的电子设备以多种形式存在,包括但不限于:(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。(5)其他具有数据交互功能的电子装置。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1