[发明专利]前端代码生成模型的生成方法和装置在审
申请号: | 202010544833.X | 申请日: | 2020-06-15 |
公开(公告)号: | CN111562915A | 公开(公告)日: | 2020-08-21 |
发明(设计)人: | 郑一鸣;陈启安 | 申请(专利权)人: | 厦门大学 |
主分类号: | G06F8/34 | 分类号: | G06F8/34;G06K9/62;G06N3/04 |
代理公司: | 厦门福贝知识产权代理事务所(普通合伙) 35235 | 代理人: | 陈远洋 |
地址: | 361000 福建*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 前端 代码 生成 模型 方法 装置 | ||
1.一种前端代码生成模型的生成方法,其特征在于,所述方法包括:
获取训练样本集合,其中,训练样本包括样本界面图像和样本前端代码;
获取初始模型,其中,所述初始模型包括编码器和解码器,所述编码器包括视觉模型和语言模型;
将样本界面图像输入所述视觉模型,得到图像特征;
确定输入的样本界面图像对应的代码字符串序列,并将所述代码字符串序列输入所述语言模型的词嵌入层,得到词向量,以及将所述词向量输入所述语言模型的特征提取层,得到所述代码字符串序列的文本特征;
将所述图像特征和所述文本特征作为所述解码器的输入,将与输入的样本界面图像对应的样本前端代码作为期望输出,训练所述初始模型,得到前端代码生成模型。
2.根据权利要求1所述的方法,其特征在于,所述将所述图像特征和所述文本特征作为所述解码器的输入,包括:
将所述图像特征和所述文本特征进行合并,得到合并特征;
将所述合并特征作为所述解码器的输入。
3.根据权利要求2所述的方法,其特征在于,所述解码器采用注意力机制进行解码,得到前端代码包括的代码字符串。
4.根据权利要求1所述的方法,其特征在于,所述视觉模型采用包括SE-Net的卷积神经网络确定图像特征。
5.根据权利要求4所述的方法,其特征在于,所述卷积神经网络采用卷积核大于等于2*2,且步长大于1的卷积层替代池化层。
6.根据权利要求1所述的方法,其特征在于,所述语言模型和所述解码器采用GRU网络进行编码和解码。
7.根据权利要求1所述的方法,其特征在于,所述解码器采用Beam Search算法预测前端代码包括的代码字符串。
8.根据权利要求1所述的方法,其特征在于,所述获取训练样本集合,包括:
基于预设的元素种类和每个元素种类包括的元素样式,生成至少两个元素数据集合,其中,所述至少两个元素数据集合中的每个元素数据集合对应于一个元素种类;
从所述至少两个元素数据集合中提取元素数据进行组合,得到样本前端代码;
基于所述样本前端代码,生成样本界面图像。
9.一种前端代码生成方法,其特征在于,所述方法包括:
获取目标界面图像和初始代码字符串序列;
执行如下预测步骤:
将所述目标界面图像和所述初始代码字符串序列输入预先训练的前端代码生成模型,得到位于所述代码字符串序列之后的代码字符串;将所得到的代码字符串添加进所述初始代码字符串序列之后;确定所得到的代码字符串是否为结束标记;如果是,基于所述模型输出的代码字符串,生成所述目标界面图像的前端代码;
如果确定所得到的代码字符串不是结束标记,基于最近一次添加代码字符串后的初始代码字符串序列,继续执行所述预测步骤。
10.一种前端代码生成模型的生成装置,其特征在于,所述装置包括:
第一获取模块,用于获取训练样本集合,其中,训练样本包括样本界面图像和样本前端代码;
第二获取模块,用于获取初始模型,其中,所述初始模型包括编码器和解码器,所述编码器包括视觉模型和语言模型;
第一生成模块,用于将样本界面图像输入所述视觉模型,得到图像特征;
第二生成模块,用于确定输入的样本界面图像对应的代码字符串序列,并将所述代码字符串序列输入所述语言模型的词嵌入层,得到词向量,以及将所述词向量输入所述语言模型的特征提取层,得到所述代码字符串序列的文本特征;
训练模块,用于将所述图像特征和所述文本特征作为所述解码器的输入,将与输入的样本界面图像对应的样本前端代码作为期望输出,训练所述初始模型,得到前端代码生成模型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门大学,未经厦门大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010544833.X/1.html,转载请声明来源钻瓜专利网。