推送信息的生成方法及装置
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及通过计算机生成推送信息的方法和装置。
背景技术
推送信息通常可以通过宣传的方式将产品或服务等推送给大众。推送信息可以简洁快速地对待推送目标进行描述。例如,在日常营销中,广告图片就是一种推送信息。广告图片通常包括推送商品的图像信息和广告语。常规技术中,推送信息通常由人工进行编辑。这种推送信息生成方式依赖于人工经验技巧,成本高、效率低。
随着人工智能的发展,对图像的知识理解包含越来越多的内容。例如图片的风格、色调、含义、文字等等。基于对图像的知识理解,自动生成包含图片和文字(如广告语)的推送信息,可以提高推送信息的有效性。
发明内容
本说明书一个或多个实施例描述了一种推送信息的生成方法和装置,可以解决背景技术中提到的至少一个问题。
根据第一方面,提供了一种推送信息的生成方法,包括:获取待推送目标的参考信息,其中,所述参考信息包括参考图像和字符描述信息;利用预先训练的预测模型处理所述字符描述信息,并根据所述预测模型预测到的字符序列为所述待推送目标确定至少一条候选推送文案;利用预先训练的分类模型确定所述参考图像的图片类别,并从图片素材库中的、与所述参考图像的图片类别对应的图片中,选择至少一个候选图片;基于所述至少一条候选推送文案和所述至少一个候选图片的组合,为所述待推送目标生成推送信息。
在一个实施例中,所述利用预先训练的预测模型处理所述字符描述信息包括:将所述字符描述信息拆分为多个字符单元;确定各个字符单元分别对应的各个字符向量,所述各个字符向量按照所述多个字符单元的排列顺序形成向量序列;将所述向量序列输入所述预测模型,以供所述预测模型输出多个字符序列,其中,所述预测模型输出的各个字符序列分别不超过预定长度。
在一个实施例中,所述预测模型预测出的各个字符序列分别对应有各个排列概率,所述排列概率用于描述各个字符单元按照相应字符序列中的顺序排列的概率;
所述根据所述预测模型预测到的字符序列为所述待推送目标预测确定至少一条候选推送文案包括:
将所述预测模型输出的字符序列中排列概率最大的预定个数的字符序列作为候选推送文案。
在一个实施例中,所述预测模型是通过第一神经网络和第二神经网络组合的编码解码网络,所述第一神经网络、所述第二神经网络分别是循环神经网络、双向循环神经网络、门控循环单元、长短期记忆模型中的任意一个。
在一个实施例中,所述利用预先训练的分类模型,确定所述参考图像的图片类别包括:
提取所述参考图像的各个像素的颜色特征,从而确定各个色彩通道上的颜色特征阵列;
利用所述分类模型处理各个颜色特征阵列,并根据所述分类模型的输出结果确定所述参考图像的图片类别。
在一个实施例中,所述分类模型为卷积神经网络,并包括迭代的N个残差卷积结构和一个分类器,N为大于1的整数;
所述N个残差卷积结构以各个色彩通道的颜色特征阵列作为初始的特征阵列,各个残差卷积结构分别通过至少一种卷积方式从接收到的特征阵列中提取所述参考图像的中间特征,并利用所接收到的特征阵列对基于各种中间特征拼接形成的中间阵列进行消除残差处理;
第1至N-1个残差卷积结构的输出阵列作为后续残差卷积结构接收的特征阵列;
第N个残差卷积结构的输出阵列作为所述分类器的输入阵列。
在一个实施例中,所述图片素材库中的各个图片对应有通过预先训练的打分模型确定的推送效果分数;
所述从图片素材库中的、与所述参考图像的图片类别对应的图片中,选择至少一个候选图片包括:
按照推送效果分数从高到低的顺序,从图片素材库中和所述参考图片的图片类别对应的图片中选择预定数量的图片,作为候选图片。
在一个实施例中,所述字符描述信息是嵌入所述参考图像的字符信息;
所述获取待推送目标的参考信息还包括:
通过光学字符识别方式从所述参考图像中识别出所述字符描述信息。
根据第二方面,提供一种推送信息的生成装置,包括:获取单元,配置为获取待推送目标的参考信息,其中,所述参考信息包括参考图像和字符描述信息;
文案预测单元,配置为利用预先训练的预测模型处理所述字符描述信息,并根据所述预测模型预测到的字符序列为所述待推送目标确定至少一条候选推送文案;
图片选择单元,配置为利用预先训练的分类模型确定所述参考图像的图片类别,并从图片素材库中的、与所述参考图像的图片类别对应的图片中,选择至少一个候选图片;
生成单元,配置为基于所述至少一条候选推送文案和所述至少一个候选图片的组合,为所述待推送目标生成推送信息。
根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
根据第四方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
通过本说明书实施例提供的方法和装置,获取待推送目标的参考图像及字符描述信息后,一方面,根据字符描述信息预测候选推送文案,另一方面,根据参考图片的类型从素材库中选择合适的候选图片,并将候选推送文案和候选图片组合在一起,为待推送目标确定出推送信息。由于在信息推送过程中,仅仅利用参考图像和用于介绍待推送目标的字符描述信息,大大降低了人工经验的依赖,通过人工智能对图像进行文字、风格的多方面知识理解,并且每个方面都可以有多个产出,从而可以提高生成推送信息的有效性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的推送信息的生成方法流程图;
图3示出预测模型的一个具体例子的示意图;
图4示出分类模型的一个具体结构的示意图;
图5示出图4中的符合残差卷积结构的一个具体例子;
图6示出根据一个实施例的推送信息的生成装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。在该实施场景中,用户可以通过与计算平台进行交互,以向计算平台提供待推送目标的参考图像和字符描述信息,并从计算平台获取包含推送文案和图像的推送信息。其中,计算平台可以是诸如计算机、平板电脑、智能手机之类的硬件设备,也可以是运行于硬件设备的应用,本实施场景中对此不作限定。在一个实施例中,计算平台是终端或者运行于终端的软件,用户和计算平台之间可以直接进行交互。在另一个实施例中,计算平台是为终端运行的应用提供支持的服务器时,用户和终端进行直接交互,终端和服务器通过网络进行交互,从而用户和计算平台之间间接进行交互。
在图1示出的场景中,待推送目标例如可以是商品、APP等,待推送目标的参考图像可以是用户选定的和待推送目标相关的任意图片。其中,待推送目标还可以对应有通过字符进行描述的描述信息。该字符描述信息可以针对待推送目标的性能、用途、外观等等各方面进行描述。计算平台一方面可以利用预先训练的预测模型根据字符描述信息为待推送目标预测至少一条候选推送文案,另一方面,可以通过预先训练的分类模型,为参考图像分类,以识别用户期望的图片风格,进一步从图片素材库的、与参考图像同一图片类别下的图片中选择至少一个候选图片。然后,计算平台可以将候选推送文案和候选图片进行组合,确定出待推送目标的推送信息。
下面具体描述生成推送信息的过程。
如图2所示,示出了根据一个实施例的推送信息的生成流程。该推送信息的生成流程的执行主体可以是任何具有计算、处理能力的系统、设备、装置、平台或服务器,例如图1所示的计算平台等。如图2示,该方法包括以下步骤:步骤201,获取待推送目标的参考信息,其中,参考信息包括参考图像和字符描述信息;步骤202,利用预先训练的预测模型处理字符描述信息,并根据预测模型预测到的字符序列为待推送目标确定至少一条候选推送文案;步骤203,利用预先训练的分类模型确定参考图像的图片类别,从图片素材库中的、与参考图像的图片类别对应的图片中,选择至少一个候选图片;步骤204,基于上述至少一条候选推送文案和上述至少一个候选图片的组合,为待推送目标生成推送信息。
首先,步骤201,获取待推送目标的参考信息。可以理解,待推送目标是信息推送过程要推送的对象,例如可以是各种实物商品或虚拟商品、应用(如终端APP)、网站、人物等等。
参考信息可以包含的参考图像。参考图像可以是与待推送目标相关的任意图像。该图像可以对应有进行信息推送的业务方期望的与待推送目标相关的推送风格。例如,待推送目标为一款儿童用品,其图像可以具有可爱、温暖、清新等风格。
待推送目标还可以对应一些字符描述信息。这些字符描述信息由进行信息推送的业务方提供,其可以单独存在,也可以与参考图像是一体的,即嵌入参考图像中。在符描述信息是嵌入参考图像的字符信息的情况下,可以通过光学字符识别(Optical CharacterRecognition,OCR)之类的方式从参考图像中识别出字符描述信息。通常,字符描述信息的内容可以涵盖待推送目标的外形、结构、使用方法、功能、效果等等各方面。例如,针对一款茶杯的字符描述信息可以为,“这款茶杯是骨瓷杯,质地细腻,白色调为主,青蓝的梅花,在白色的底蕴下,显得更加素雅。茶杯的一大片空白,留给人无数想象。杯把的设计非常小巧,贴合人体抓握曲线。杯盘和杯身是相同材质,同色系图案,尽显优雅”。可以理解,字符描述信息通常可以是冗杂的,以尽可能详尽地对待推送目标进行各方面的描述。
由上可知,参考信息是生成推送信息的基础,其中的参考图像以及字符描述信息内容要求不很严格,只要能体现出核心内容即可。因此,即使由进行信息推送的业务方进行人工挑选,对人工经验要求也不是特别高。
接着,一方面,在步骤202中,利用预先训练的预测模型处理字符描述信息,并根据所述预测模型预测到的字符序列为待推送目标确定至少一条候选推送文案。其中,推送文案可以理解为文字形式的推送信息。其可以是至少一个词汇,也可以是一个句子(广告语),用于简明扼要地介绍或推送待推送目标。
在推送文案是至少一个词汇的情况下,在一个实施例中,预测模型可以是关键词确定模型,用于从识别到的字符描述信息中总结出关键词,以作为候选推送文案。例如对前述的茶杯的字符描述信息,可以总结出“简约优雅贴心”等关键词,作为候选推送文案。此时,预测模型可以是基于语义的中文文本关键词提取(SKE)算法、TF-IDF(term frequency–inverse document frequency,词频-逆频率指数)等等模型。以词频-逆频率指数为例,可以基于对语料库的词汇的词频统计确定各个词汇的词频-逆频率指数,以词汇x为例,词频-逆频率指数TF-IDF(x)=TF(x)×IDF(x),其中,词频TF(x)与词汇x在语料库中出现的次数正相关,逆频率IDF(x)与词汇x在语料库中所出现的文本数量负相关,当一个词汇在所有文本中都出现时,该词汇的逆频率可以为0。在一个实现中,通过词频-逆频率指数的预测模型预测候选推送文案时,可以将字符描述信息拆分成多个字符单元输入预测模型,预测模型根据各个字符单元及其近义词的词频-逆频率指数,选择对应词频-逆频率指数较大的预定个数的词汇输出为候选推送文案。当预测模型输出的关键词较多时,还可以按照关键词的重要度衡量指数(如词频-逆频率指数)的值由大到小的顺序选择预定个数的关键词作为推送文案,或者从重要度衡量指数大于指数阈值的关键词中任选预定个数的词汇作为推送文案,在此不作限定。
在另一个实施例中,预测模型可以是通过第一神经网络和第二神经网络组合的编码解码网络。其中,编码解码网络(Encoder-Decoder)适用于处理序列到序列问题的神经网络。所谓编码,就是将输入序列转化成一个固定长度的向量;解码,就是将之前生成的固定向量再转化成序列输出。其中,编码的过程用于解析输入的字符序列中的语言含义,解码的过程将解析到的语言含义通过另外的字符序列表达出来。此时,第一神经网络和第二神经网络可以分别从CNN(Convolutional Neural Networks,卷积神经网络)、RNN(RecurrentNeural Network,循环神经网络)、BiRNN(Bi-directional Recurrent Neural Network,双向循环神经网络)、GRU(Gated Recurrent Unit,门控循环单元)、LSTM(Long Short-TermMemory,长短期记忆模型)等等中任选。
以第一神经网络和第二神经网络都是LSTM为例,编码解码网络的训练过程可以如下:获取分别与多个推送目标对应的各个序列对作为训练样本。其中,每个推送目标对应一个序列对,该序列对包括一个源序列(source)和一个目标序列(target)。源序列可以是针对某个推送目标(如商品、人物等)的描述信息拆分成字符单元后对应的字符向量序列。目标序列可以是人工给出的针对描述信息确定的推送信息(如广告语)拆分得到的各个字符单元的数字ID或字符向量或字符单元本身。
将源序列中的向量在各个时刻依次传递给第一神经网络的神经元,第一盛景网络将处理得到的语义向量传递给第二神经网络。为了使得第二神经网络的输出结果更准确,在模型训练阶段,将第二神经网络中的隐藏单元的各个时间点的输入进行调整,使得各个输入是前一个字符单元或前一个字符单元对应的数字ID,而不是前一时刻的输出结果。如此,可以在目标序列前加上序列开始标识,作为第二神经网络在各个时刻的输入序列,而在目标序列结尾加上序列结束标识,作为与第二神经网络在各个时刻的输出作对比的标签。通过将最前面增加了序列开始标识的目标序列输入到第二神经网络得到的输出结果与结尾加上序列结束标识的目标序列的进行字符单元的逐个比较,从而调整模型参数,使得损失函数的值向减小的方向改变。
如图3所示,是一个具体例子的编码解码网络在时间序列上展开的示意图。假设一个序列对的源序列为A、B、C,目标序列为W、X、Y、Z。首先,将源序列A、B、C在不同时刻依次作为特征输入第一神经网络301的神经元,由第一神经网络301将输入的序列转换成一个固定长度的语义向量。然后将该语义向量传递给第二神经网络302,该语义向量在第二神经网络302各个时刻的神经元中向后传递。第二神经网络302的神经元在各个时刻接收到的输入数据分别为序列开始标记(如go)、W、X、Y、Z。其中,序列开始标记表示预测序列的开始。而通过第一神经网络301得到的固定长度的语义向量会在神经元的不同时刻进行传递。图3中,在初始时刻,神经元接收到输入的序列开始标记“go”,根据语义向量预测第一个字符单元(即与“W”对应的字符单元)。下一个时刻,神经元接收到输入的与字符单元“W”对应的字符单元或数字ID,以及初始时刻传承下来的语义向量,预测出和第一个字符单元“W”组成序列的第二个字符单元(与“X”对应的字符单元),从而输出W、X序列。以此类推,直至神经元接收到最后一个字符单元“Z”对应的字符向量或数字ID,根据上一时刻传承下来的语义向量预测最后一个字符单元(与序列结束标识eos对应的字符单元)。这样,可以将最终输出序列与W、X、Y、Z、序列结束标识进行对比,或者将第一时刻输出的第一个字符单元与“W”对应的字符单元对比、将第二时刻输出的第二个字符单元与“X”对应的字符单元……,从而调整模型参数。
使用编码解码网络的预测模型为待推送目标预测候选推行文案时,可以首先将字符描述信息拆分为多个字符单元,例如字、词、英文单词等等。然后确定各个字符单元分别对应的各个字符向量,各个字符向量按照多个字符单元的排列顺序形成向量序列。接着将向量序列输入预测模型,从预测模型输出的多个字符序列中选择预定数量的字符序列,并将所选择的各个字符序列作为候选推送文案。每个字符序列对应一条候选推送文案。可以理解,推送文案通常要求简洁、引人注目等特点,其不必像字符描述信息那样详尽,因此,可以限定预测模型的序列输出长度不超过预定长度,例如不超过20个字符等。如此,可以保证候选推送文案也不超过预定长度。
在一个实现中,预测模型输出的每个字符序列还可以对应一个排列概率。该排列概率用于描述相应字符序列中的各个字符单元按该字符序列中的排列顺序进行排列的概率。该排列概率描述的概率可以从句子通顺度、词性连接等角度对字符序列的可读性进行评估。此时,可以将预测模型预测出的字符序列中,排列概率最大的多个字符序列选择为候选推送文案。例如,在通过第二神经网络确定字符序列的过程中,可以采用诸如集束搜索(beamsearch)、贪婪算法(Greedy algorithm)之类的方法进行。
以集束搜索为例,按照词表中的词汇概率来选择词汇组成序列。其中,词表可以预先通过语料库统计得到。作为示例,假设词表中只有“我”“是”“学生”三个词汇,束流大小(beamsize)为2。在第一时刻,第二神经网络的神经元根据输入的语义向量,输出概率最大的2个(2为beamsize)词汇“我”(如概率为0.5)和“是”(如概率为0.4)。分别把“我”和“是”作为在第二时刻的第二神经网络的神经元输入,同时将从第一神经网络得到的语义向量保留。当把“我”作为第二时刻的神经元输入时,得到各个词汇作为Y2输出的概率分布,例如为“我”0.3,“是”0.6,“学生”0.1。当把“是”作为第二时刻的神经元输入时,得到各个词汇作为Y2输出的概率分布,例如为“我”0.3,“是”0.3,“学生”0.4。
由于设置的beam size为2,保留概率最大的两个序列。此时可以在第一时刻得到的Y1的两个可能的取值的基础上,计算所有可能的序列概率:
“我我”的概率为0.5×0.3=0.15;
“我是”的概率为0.5×0.6=0.3;
“我学生”的概率为0.5×0.1=0.05;
“是我”的概率为0.4×0.3=0.12;
“是是”的概率为0.4×0.3=0.12;
“是学生”的概率为0.4×0.4=0.16。
上面的概率可以称为字符顺序排列概率。两个概率最大的序列为“我是”和“是学生”。这两个序列就可以对应第二时刻预测到的序列。在后续的时刻,第二神经网络的神经元不断重复这个过程,直到遇到结束符为止,每个时刻,第二神经网络的神经元都会输出两个字符顺序排列概率最大的字符序列。其中,词表中词汇的数量通常很大,计算过程也比前述过程复杂,但原理是一致的。最终得到的序列数量由束流大小(beam size)确定,当束流大小设置为10时,得到10个字符顺序排列概率最大的序列。最终输出的字符顺序排列概率最大的序列就可以作为待推送目标的候选推送文案。如前述的茶杯的例子中,可以通过字符描述信息得到诸如“简约优雅,从容如你”之类的候选推送文案。
如此,可以根据参考图片中的字符描述信息为待推送目标确定出一条或多条候选推送文案,产出效率提高,并且不受人工经验水平的限制。
另一方面,通过步骤203,利用预先训练的分类模型确定参考图像的图片类别,并从图片素材库中的、与参考图像的图片类别对应的图片中,选择至少一个候选图片。其中,图片素材库可以是存储可选图片素材的数据库。例如,对于进行为商品进行信息推送的业务方商户来说,图片素材库中可以存储商户的各种产品图片。对于图片素材库中的图片,可以预先按照上述的分类模型确定出类别。
其中,图片的类别可以用于区分图片和/或图片中的事物的风格、类型等。例如,这些风格可以有古朴、阳光、清新、妩媚等等,类型可以有儿童、老人、女性、男性等等。图片的类别可以对不同风格、类型的图片进行综合评估、分类,根据不同的应用场景,区分不同的类别,例如暖色/冷色类别、儿童/老人/青年人类别、可爱/优雅/复古类别,等等,在此不作限定。
分类模型的训练过程中,可以以多个图片作为样本,每个图片对应有人工标注的类别标签。将各个图片分别输入选定的分类模型,如CNN、LSTM、决策树等等。根据对应的类别标签调整模型参数,从而训练分类模型。
在一个实施例中,对样本图片,可以提取各个图片中各个像素的颜色特征,从而确定各个色彩通道上的颜色特征阵列。通常,图片可以通过色彩来表达,图像中的特征也和色彩相关。色彩可以通过图片中各个像素在色彩通道上的颜色值来表示。例如,灰度图片的颜色特征可以是各个像素的灰度值,彩色图片的颜色特征可以是红(R)、绿(G)、蓝(B)三个通道的颜色值。这样,在每个通道上,都可以按照像素提取一个颜色特征阵列。颜色特征阵列中的各个元素分别与图片上的各个像素对应,各个元素的值对应相应颜色通道上的颜色值。例如,一个1024×1024像素的灰度图片,对应一个灰度通道上的1024×1024大小的颜色特征阵列,该颜色特征阵列中的各个元素分别对应一个0~255之间的灰度值。然后,可以将各个通道的颜色特征阵列输入选定的分类模型,根据人工标注的类别标签调整模型参数。
在分类模型是CNN的情况下,为了提升模型的准确率和稳定性,在一个可能的设计中,可以采用新型的神经网络结构,对卷积神经网络在深度和宽度上进行扩展,从而挖掘更多的特征。
在一个实现中,可以采用迭代的复合残差卷积神经网络架构。该网络架构可以结合多种新型方案,使用卷积替换、过滤连接、批标准化、特征分解和过拟合优化等多种技术方法,在保证没有过多占用计算资源的情况下,大幅简化模型构建流程,减少参数数量级,提升模型的准确率和稳定性。该网络架构可以通过维持网络结构的松散特点,利用稠密矩阵的快速运算模式达到模型的稳定和精确目标。
请参考图4所示,该新型的卷积神经网络结构可以包括多N(N为大于1的整数)个复合残差卷积结构,以及一个分类器。复合残差卷积结构中,可以具有多个卷积通道,每个卷积通道通过不同的卷积方式对输入阵列提取不同的中间特征。首个复合残差卷积结构的输入阵列是从参考图片中提取的各个颜色通道的颜色特征阵列。后续的各个复合残差卷积结构的输入阵列是前一个复合残差卷积结构的输出阵列。各个卷积通道分别提取的各个中间特征拼接形成拼接阵列,通过输入阵列对拼接阵列消除残差可以得到残差阵列。对残差阵列进行以下一项或多项预定处理:批标准化(Batchnormalize)、归一化(如ReLUactivate)、通过全连接网络扩展维数、随机减维(Dropout)等等。经过预定处理后的残差阵列,可以作为复合残差卷积结构的输出阵列。可以理解,第1至N-1个复合残差卷积结构的输出阵列可以作为下一个复合残差卷积结构的输入阵列。分类器可以处理第N个复合残差卷积结构的输出阵列,分类器的输出结果就是分类模型的输出结果。该输出结果可以是对应道不同类别的数值。分类器例如可以通过softmax等激活层实现,将输出结果映射到有限的类别上。
下面参考图5的具体例子,对复合残差卷积结构进行具体描述。
首先,复合残差卷积结构可以通过多种卷积方式从接收到的特征阵列提取待分类图片的各种中间特征。可以理解,卷积神经网络在处理图像时,其输入矩阵的格式往往是“批处理尺寸(batch_size)*长*宽*通道数”。其中,彩色图像的通道通常为“R”、“G”、“B”3个通道,即通道数为3。也就是说,残差卷积结构可以同时处理多个通道的颜色特征阵列。对于首个复合残差卷积结构来说,可以将各个通道的颜色特征阵列作为接收到的特征阵列。
在卷积神经网络中,通常通过不同的卷积核提取不同的特征。如此,在图5的具体例子中,通过多个卷积通道完成特征分解。例如,通过一个卷积通道可以提取图片中的竖向特征、横向特征、纹理特征、颜色特征等等中的至少一个。通过卷积神经网络的训练过程,可以确定出具体的卷积核。如图4所示,每种卷积方式可以对应提取图片上的一部分特征。
在第一个卷积通道中,包括一个均值池化层和两个大小相同的卷积核的卷积层。其中,2×2的均值池化(avgpool)可以理解为一种过滤连接,在减少特征数的同时,尽可能保留图片的背景和色彩特征。然后通过两个3×3的卷积核做两次卷积,做一次高维的特征提取。在一些实施例中,该卷积方式提取的特征可以和背景、色彩相关。
在第二个卷积通道中,先通过一个1×1的卷积核,增加或降低输入阵列的通道维数。其中,一个1×1的卷积核可以将输入阵列的通道数变为1,n个1×1的卷积核可以将输入阵列的通道数变为n。通过1×1的卷积操作,可以提取出输入阵列中的重要特征,使得后续的卷积计算量减少很多。然后通过1×7和7×1两个一维卷积核代替7×7的卷积核的卷积计算,增加网络深度,同时增加网络的非线性。这样通过卷积替换可以节约大量参数,加速运算并减轻过拟合。
图5中的第三个卷积通道,先通过一个1×1的卷积核的过滤,增加或降低输入阵列的通道维数,然后先后通过一个3×3的卷积核,以及1×5和5×1两个一维卷积核进行卷积运算。该卷积通道的卷积方式包含了过滤连接、卷积替换,可以增加网络深度,节约参数。
图5中的第四个卷积通道,包括一个最大池化层和一个1×1的卷积层。其中,2×2的最大池化(avgpool)的过滤连接在减少特征数的同时,尽可能保留图片的纹理特征。1×1的卷积层用于降低通道数。
不同的卷积运算与池化操作可以获得输入图像的不同信息,并行处理这些运算并结合所有结果将获得更好的图像表征。通过以上各种卷积通道上的不同卷积操作可以从输入阵列中提取出不同的中间特征。接下来可以将各种不同的中间特征进行拼接,形成中间阵列。在一个实现方式中,可以将各种卷积方式计算得到的阵列展平成一维的向量进行拼接。在另一个实现方式中,可以将各个通道上的阵列串联,以实现中间特征拼接。
深层的卷积神经网络可以提取更高阶的特征,然而,随着层数的加深,准确度会达到饱和然后下降,为了消除这种负面影响,可以利用所接收到的特征阵列(输入阵列)对基于各种中间特征拼接成的中间阵列进行消除残差处理。为了消除残差,将所接收到的输入阵列对基于各种中间特征确定的中间阵列叠加。其中,在特征阵列在经过各种卷积方式的处理之后拼接成的中间阵列与原特征阵列的维度不一致的情况下,还可以对中间阵列用零进行补全,以得到和原特征阵列一致的阵列,从而和原特征阵列叠加。叠加之前,原特征阵列还可以通过激活函数(如sigmoid)进行处理,从而将各个元素的值映射到0-1的范围内,以免使叠加后的阵列元素值过大,影响模型学习效果。
如图5所示,复合残差卷积结构还可以包括批标准化层(Batch Normalization)、归一化层、全连接网络层、随机减维层等。其中:通过批标准化层可以将残差结果拉回激励函数的梯度变化明显的区域;归一化层可以将数据映射到0-1或-1至1之间处理,使计算便捷快速;全连接网络层对通道数进行全连接,使得通道数从若干个(如单个或最初的R、G、B3个)扩展到预定数量(如128);随机减维层可以避免过拟合,从而对模型进行优化;等等。
通过多个如图5所示的复合残差卷积结构的迭代,可以从深度和宽度上对卷积神经网络警醒扩展,提取更高阶的特征,从而是模型更加准确。
基于前述的预先训练的分类模型,确定参考图像的图片类别时,可以先根据参考图片中的图像信息,提取参考图像的各个像素的颜色特征,然后利用分类模型处理各个通道的颜色特征阵列,从分类模型的输出结果确定参考图片的类别。
根据一个实施例,图片素材库中的各个图片对应有通过预先训练的打分模型确定的推送效果分数。其中,推送效果分数可以是对相应图片作为推送图片,能达到的推送效果的评估。例如,对于一个APP的图片,其推送效果可以通过根据该图片的推送进行下载的下载率描述;对于一件商品的图片,其推送效果可以通过根据该图片的推送获得的点击率或购买率描述。该打分模型例如可以是决策树模型、LSTM等等。其训练样本可以是多个图片,每个图片分别对应有根据实践统计的推送效果标签,如前述的下载率、点击率、购买率等等。从图片中提取的特征可以是各个通道的颜色特征阵列,也可以是风格特征,在此不作限定。将各个图片对应的特征分别输入选定的打分模型,并按照相应的推送效果标签调整模型参数。
对图片素材库中的每张图片,都可以预先存储按照该打分模型确定的推送效果分数。此时,可以从图片素材库中和参考图片的图片类别对应的图片中,按照推送效果分数从高到低的顺序,从图片素材库中和所述参考图片的图片类别对应的图片中预定数量的图片,作为候选图片。
通过该步骤203,可以快速从大量图片素材中选择一张或多张业务方需要的类别的图片,提高图片选择效率。同时,在商业应用领域,如果参考推送效果分数选择图片,还可以进一步对图片的商业效果进行评估,大大增强选择图片的意义。
接着,通过步骤204,基于步骤202中确定的候选推送文案和步骤203中确定的候选图片的组合,为待推送目标生成推送信息。在本步骤中,可以将候选推送文案和候选图片叠加在一起,作为待推送目标的推送信息。当候选推送文案和候选图片的数量都是一的时候,直接将它们组合在一起形成推送信息。当候选推送文案或候选图片至少一项的数量大于1时,可以将它们任意排列组合,由人工确定哪种组合作为推送信息,或者任意挑选其中的预定个(如1个)组合作为推送信息。
回顾以上过程,在为待推送目标生成推送信息的过程中,仅需用户提供待推送目标的参考图像及字符描述信息,一方面,根据字符描述信息预测候选推送文案,另一方面,根据参考图片的类型从素材库中选择合适的候选图片,并将候选推送文案和候选图片组合在一起,为待推送目标确定出推送信息。由于在信息推送过程中,仅仅利用参考图像和用于介绍待推送目标的字符描述信息,大大降低了人工经验的依赖,通过人工智能对图像进行文字、风格的多方面知识理解,并且每个方面都可以有多个产出,各个方面的产出的排列组合还可以大大增加推送信息的产出量。总之,本说明书实施例的推送信息的生成方法可以提高生成推送信息的有效性。
根据另一方面的实施例,还提供一种推送信息的生成装置。图6示出根据一个实施例的用于推送信息的生成装置的示意性框图。如图6所示,用于推送信息的生成装置600包括:获取单元61,配置为获取待推送目标的参考信息,其中,参考信息包括参考图像和字符描述信息;文案预测单元62,配置为利用预先训练的预测模型处理字符描述信息,并根据预测模型预测到的字符序列为待推送目标确定至少一条候选推送文案;图片选择单元63,配置为利用预先训练的分类模型确定参考图像的图片类别,并从图片素材库中的、与参考图像的图片类别对应的图片中,选择至少一个候选图片;生成单元64,配置为基于至少一条候选推送文案和至少一个候选图片的组合,为待推送目标生成推送信息。
在一个实施例中,文案预测单元62还配置为:
将字符描述信息拆分为多个字符单元;
确定各个字符单元分别对应的各个字符向量,各个字符向量按照多个字符单元的排列顺序形成向量序列;
将向量序列输入预测模型,以供预测模型输出多个字符序列,其中,预测模型输出的各个字符序列分别不超过预定长度。
在进一步的实施例中,预测模型预测出的各个字符序列分别可以对应有各个排列概率。这里的排列概率可以用于描述各个字符单元按相应字符序列中的顺序排列的概率
文案预测单元62还可以配置为:
将预测模型输出的字符序列中排列概率最大的预定个数的字符序列作为候选推送文案。
根据一个可能的设计,预测模型是通过第一神经网络和第二神经网络组合的编码解码网络,第一神经网络、第二神经网络分别是循环神经网络、双向循环神经网络、门控循环单元、长短期记忆模型中的任意一个。
在一个实施例中,图片选择单元63进一步配置为:
提取参考图像的各个像素的颜色特征,从而确定各个色彩通道上的颜色特征阵列;
利用分类模型处理各个颜色特征阵列,并根据分类模型的输出结果确定参考图像的图片类别。
在进一步的实施例中,分类模型为卷积神经网络,并包括迭代的N个残差卷积结构和一个分类器,N为大于1的整数;
其中,N个残差卷积结构以各个色彩通道的颜色特征阵列作为初始的特征阵列,各个残差卷积结构分别通过至少一种卷积方式从接收到的特征阵列中提取参考图像的中间特征,并利用所接收到的特征阵列对基于各种中间特征拼接形成的中间阵列进行消除残差处理;
第1至N-1个残差卷积结构的输出阵列作为后续残差卷积结构接收的特征阵列;
第N个残差卷积结构的输出阵列作为分类器的输入阵列。
根据一个实施例,图片素材库中的各个图片对应有通过预先训练的打分模型确定的推送效果分数;
图片选择单元63还配置为:
按照推送效果分数从高到低的顺序,从图片素材库中和参考图片的图片类别对应的图片中选择预定数量的图片,作为候选图片。
在一个实施例中,字符描述信息是嵌入参考图像的字符信息;
获取单元61还配置为:
通过光学字符识别方式从参考图像中识别出字符描述信息。
值得说明的是,图6所示的装置600是与图2示出的方法实施例相对应的装置实施例,图2示出的方法实施例中的相应描述同样适用于装置600,在此不再赘述。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。