CN110309510B - 一种基于c-s和gru的看画题诗方法 - Google Patents
一种基于c-s和gru的看画题诗方法 Download PDFInfo
- Publication number
- CN110309510B CN110309510B CN201910593023.0A CN201910593023A CN110309510B CN 110309510 B CN110309510 B CN 110309510B CN 201910593023 A CN201910593023 A CN 201910593023A CN 110309510 B CN110309510 B CN 110309510B
- Authority
- CN
- China
- Prior art keywords
- word
- words
- flat
- poems
- vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Abstract
本发明公开了一种基于CornerNet‑Saccade和GRU的为图题诗方法,采用CornerNet‑Saccade检测画中的目标,并提取出画中的意象词,同时采用MobileNetV3网络分类画要表达的思想,提取中心词,并把意象词和中心词都向量化,输入双层GRU网络输出需要的五言诗。在当今社会,艺术形式不断变化,古诗词的创作艺术不断流失,本发明提出一种人工智能和作诗相结合的看画题诗的方法,能把文字信息和图像信息融合,使其在艺术上更有美感,提升其艺术价值。
Description
技术领域
本发明属于神经网络自动看画题诗的深度学习领域,涉及到目标检测、自然语言处理等技术,尤其涉及到一种基于C-S(CornerNet-Saccade)和GRU(Gate Recurrent Unit)的看画题诗方法
背景技术
随着深度学习在计算机视觉和自然语言处理领域的发展,人工智能已经日渐渗透人们的生活,在未来的艺术创作领域,人工智能也必然会有一番作为。在当今社会,艺术形式不断变化,古诗词的创作艺术不断流失,人类的非物质文化遗产也面临着危机,在高速的生活节奏下,保护古诗词等非物质文化遗产的传承也是社会应当重视的问题。深度神经网络通过训练学习到的看画题诗的方法,也是现代人工智能技术和古人智慧的一种结合。
相关技术中自动看画题诗方法目前较少,对画中提取的意象词和画的图像信息并没有做处理,也没有利用画所表达的中心思想作为建模方式,导致所作的诗文不对题,逻辑不通。
发明内容
本发明克服了现有技术的不足之处,提出了一种基于CornerNet-Saccade和GRU的看画题诗方法,意在提升现有计算机作诗效果,提升输入特定画作的美感,也可以利用本申请网络所作的诗提升画作的艺术价值。
本发明为达上述发明目的,采用如下技术方案:
一种基于CornerNet-Saccade和GRU的看画题诗方法,其步骤包括:
步骤(1):对画用CornerNet-Saccade算法进行目标检测,softmax层对检测到的目标分类,获取意象词;将同一张画输入MobileNetV3网络,softmax层对画表达的中心思想分类,获取中心词。
步骤(2):为画数据集中所有人工方法标注的意象词、中心词建立词库并分配词向量,词向量大小为100维。
步骤(3):为五言诗数据集中古诗的每一个不重复的字都分配一个200维的向量,并建立字向量的库。
步骤(4):建立第一层GRU网络,所述第一层GRU网络由N个GRU单元组成,其中最后一个单元连接一个全连接层和一个softmax层,用于生成所题诗的前2句。第一层GRU网络输入为步骤(2)所有检测到的意象词词向量的和X和一个100的起始向量<bos>,即输入为C1=(X,<bos>),其中X=(x1+x2+…+xn),xi表示从画中检测到的每个意向词向量。通过第一层GRU网络得到满足韵律要求的每个候选字的概率,选择概率最大的字作为五言诗的第一个字A1,然后利用再将第一个字的字向量输回第一层GRU网络,利用第一个字预测得到第二个字A2,并用同样的方式依次得到五言诗前2句的每个字{A1,A2,……,A10}。
步骤(5):建立第二层GRU网络,所述第二层GRU网络由M个GRU单元组成,最后一个单元连接一个全连接层和一个softmax层,用于生成所题诗的后2句,第二层GRU网络的输入为意象词向量的和X和中心词向量Y组成的向量 其中X、Y为100维的向量,表示后2句诗的最后一个字的字向量;通过第二层GRU网络得到满足韵律要求的每个候选字的概率,选择概率最大的字作为五言诗后2句的第一个字A11,然后再将第一个字的字向量输回第二层GRU网络,利用第一个字预测得到第二个字A12,并用同样的方式依次得到五言诗后2句的每个字{A11,A12,……,A20}。
步骤(6):根据预先构建平仄函数和平仄矩阵以及预测的当前字的位置,确定预测当前字的平仄取值,在满足平仄取值的候选字中选取概率最大候选字。所述五言诗的平仄矩阵为:
平仄矩阵中P(i,j)代表当前字的位置,i代表诗句的行,j代表诗句的列。0表示该位置的字代表平仄不限,1或者-1代表该位置为平或者仄,2或-2表示该位置与第1句第2字平仄相同或相反,3或-3表示该位置与第1句第3字平仄相同或相反。
所述平仄函数为:
步骤(7):预测五言诗的第2、4句的最后一个字时需要还需要满足韵脚规律,根据预先构建的韵脚编码与汉字之间的映射表,确定要预测的当前字属于哪个汉字集,再从这个汉字集中的候选字选择概率最大的字的作为当前字。
所述韵脚编码与汉字之间映射表,其特征在于:依据平韵和仄韵,将106个韵脚进行编码,第一个韵脚编码为0,最后一个韵脚编码为105,将每个韵脚编号对应的汉字组合成汉字集,如{东,同,童…},在预测需要满足韵脚要求的字时,将一句最后一个字的韵脚根据编码映射到汉字集,并除去该字,并选取其余候选字中概率最大的字作为当前字。
与现有技术相比,本发明的有益效果体现在:
数据集为相关的五言诗和对应画,因为本发明用于生成五言诗,所以这样的数据集更有针对性。用CornerNet-Saccade提取了画中的意象词,用MobileNetv3提取了画的中心词,并建立了两种词的词库。针对五言诗前2句诗和后2句诗的特征做了不同的分析,双层的GRU网络比传统的LSTM、RNN更适用于本发明,对生成的诗做了韵律处理,使生成的诗更加具有美感和艺术性。
附图说明
图1是本发明的方法流程图。
图2是CornerNet-Saccade网络结构示意图。
图3是MobileNetv3提取中心词示意图。
图4是第一层GRU网络模型的结构示意图。
图5是第二层GRU网络模型的结构示意图。
具体实施方式
下面结合附图对本发明做进一步说明。
如图1-5所示,本发明的于CornerNet-Saccade和GRU的看画题诗方法,包括如下步骤:
步骤(1):收集为画题诗及为诗作画的画与诗,所述诗为五言诗,将收集到的五言诗数据中的每个不重复的字建立字库,并为每个字分配一个200维的向量;画数据中的人或物体的位置及其标签人工方法进行标注,画中每一个标注的人或物体代表一个意象词,为所有不重复的意象词建立词库。每张画都有欲表达的中心思想,用中心词表示中心思想,画的中心词类别标签人工方法标注,为所有不重复的中心词建立词库。为所有意象词、中心词都分配词向量,词向量大小为100维。
步骤(2):将步骤(1)标注好的画输入CornerNet-Saccade目标检测网络训练,训练集和验证集按照9:1的比例划分,模型的优化函数为计算随机梯度下降,学习速率为0.01,迭代5000次,将未标注的画输入到训练好的模型中,输出画中人、物体的预测框Bk及类别,从而得到意象词,再从词库中获取意象词对应的词向量,如图2所示,其中k表示输入画中检测到的第k个预测框;将输出的预测框Bk水平和垂直方向都分成10份,对每一份都进行最大池化(max pooling),得到100维的特征使起始向量n表示输入画中检测到的所有预测框数目。
步骤(3):将步骤(1)中画数据送入MobileNetV3识别网络训练,目的是为了获得画的中心词,训练集和验证集按照9:1的比例划分,模型的优化函数为计算随机梯度下降,学习速率为0.01,迭代5000次。将未标注的画输入到训练好的模型中,输出画对应的中心词类别,从而得到画的中心词,再从词库中获取中心词对应的词向量,如图3所示。
步骤(3):为画数据中所有意象词、中心词分配词向量,词向量大小为100维。具体向量化时可以用word2vec技术,如“明月”表示为
x1=[0.011516,0.048745,…,0.075151];
如“寄托乡思”表示为
Y=[0.021521,0.051561,…,0.072151]。
步骤(4):为五言诗数据集中古诗的每一个不重复的字都分配一个200维的向量,并建立字向量的库。具体向量化时可以用word2vec技术,如“床”表示为A1=[0.0853512,0.092564,…,0.078534]。
步骤(5):建立第一层GRU网络,所述第一层GRU网络由N个GRU单元组成,其中最后一个单元连接一个全连接层和一个softmax层,用于生成所题诗的前2句,如图4所示。输入为意象词向量X和给定的100维起始向量<bos>,即输入为C1=(X,<bos>),其中X=(x1+x2+…+xn),xi表示从画中检测到的每个意向词向量。通过第一层GRU网络得到满足韵律要求的每个候选字的概率,选择概率最大的字作为五言诗的第一个字A1,然后利用再将第一个字的字向量输回第一层GRU网络,利用第一个字预测得到第二个字A2,并用同样的方式依次得到五言诗前2句的每个字{A1,A2,……,A10}。,如“床”字预测成功,将“床”字输入回GRU网络,预测得到“前”,再由“前”依次得到“明”“月”…,预测到第10个字“霜”字表示前2句预测完成。
步骤(6):建立第二层GRU网络,所述第二层GRU网络由M个GRU单元组成,最后一个单元连接一个全连接层和一个softmax层,用于生成所题诗的后2句,如图5所示。五言诗后2句一般都带有升华的意境信息,如“野火烧不尽,春风吹又生”即表达一种自强不息的精神,为此,第二层GRU网络的输入为意象词向量的和X和中心词向量Y组成的向量其中X、Y为100维的向量,表示后2句诗的最后一个字的字向量;通过第二层GRU网络得到满足韵律要求的每个候选字的概率,选择概率最大的字作为五言诗后2句的第一个字A11,然后再将第一个字的字向量输回第二层GRU网络,利用第一个字预测得到第二个字A12,并用同样的方式依次得到五言诗后2句的每个字{A11,A12,……,A20}。
步骤(7):双层GRU网络一同训练,模型优化函数为随机梯度下降,学习速率为0.01,迭代次数为5000次。
步骤(8):预测的当前字在每个候选字中选取概率最大的候选字,选取候选字的前提是需要满足韵律要求。所述韵律要求包括:平仄韵律,押韵韵律。所述平仄指的诗句中每个字的声调,即一、二声为平调、三、四声为仄调。如“风”、“昂”为平调,“爽”、“尽”为仄调。根据预先构建平仄函数和平仄矩阵以及预测的当前字的位置,确定预测当前字的平仄取值,在满足平仄取值的候选字中选取概率最大候选字。所述五言诗的平仄矩阵为:
平仄矩阵中P(i,j)代表当前字的位置,i代表诗句的行,j代表诗句的列。0表示该位置的字代表平仄不限,1或者-1代表该位置为平或者仄,2或-2表示该位置与第1句第2字平仄相同或相反,3或-3表示该位置与第1句第3字平仄相同或相反。
所述平仄函数为:
H(i,j)代表平仄取值。如当前字为“床”时,预测下一个字时从候选字中选取概率最大的且满足平仄取值的字,此时满足要求的字为“前”。
步骤(9):预测五言诗的第2、4句的最后一个字时需要还需要满足韵脚规律,如《静夜思》中“霜”“乡”是押韵的。根据预先构建的韵脚编码与汉字之间的映射表,确定要预测的当前字属于哪个汉字集,再从这个汉字集中的候选字选择概率最大的字的作为当前字。
所述韵脚编码与汉字之间映射表,其特征在于:是基于《平水韵》中的押韵规则建立映射表,《平水韵》将汉字分类为平韵和仄韵,平韵包括上平韵和下平韵,仄韵包括上声韵、去声韵、下声韵,所有韵律一共包含106个韵脚,依据平韵和仄韵,将106个韵脚进行编码,第一个韵脚编码为0,最后一个韵脚编码为105,将每个韵脚编号对应的汉字组合成汉字集,如{东,同,童…},在预测需要满足韵脚要求的字时,将一句最后一个字的韵脚根据编码映射到汉字集,并除去该字,并选取其余候选字中概率最大的字作为当前字。
综上所述,可将本发明的流程归结为如图1所示:1)输入需要题诗的画;2)CornerNet-Saccade做目标检测提取意象词,同时MobileNetv3提取输入图片的中心词;3)更具预先建立的词库分配好词向量;4)将意向词向量输入第一层GRU网络输出五言诗的前2句;5)将意向词向量、中心词向量、第10个字的字向量加权组合后输入第二层GRU网络输出五言诗的后2句。
Claims (2)
1.一种基于CornerNet-Saccade和GRU的看画题诗方法,其特征在于包括如下步骤:
步骤(1):收集为画题诗及为诗作画的画与诗,所述诗为五言诗,将收集到的五言诗中的每个不重复的字建立字库,并为每个字分配一个200维的向量;对画中的人和物体的位置、人和物体的类别用人工方法进行标注,画中每一个标注的人或物体代表一个意象词,为所有不重复的意象词建立词库,每张画都有欲表达的中心思想,用中心词表示中心思想,对画的中心词的类别标签人工方法进行标注,为所有不重复的中心词建立词库,为所有意象词、中心词都分配词向量,词向量大小为100维;
步骤(2):将步骤(1)标注好的画输入CornerNet-Saccade目标检测网络训练,训练集和验证集按照9:1的比例划分,模型的优化函数为计算随机梯度下降,学习速率为0.01,迭代5000次,将未标注的画输入到训练好的模型中,输出画中人、物体的预测框Bk及类别,从而得到意象词,再从词库中获取意象词对应的词向量,其中预测框Bk表示输入画中检测到的第k个预测框;将输出的预测框Bk水平和垂直方向都分成10份,对每一份都进行最大池化(max pooling),得到100维的特征使起始向量n表示输入画中检测到的所有预测框数目;
步骤(3):将步骤(1)中标注好的画送入MobileNetV3识别网络训练,训练集和验证集按照9:1的比例划分,模型的优化函数为计算随机梯度下降,学习速率为0.01,迭代5000次,将未标注的画输入到训练好的模型中,输出画对应的中心词类别,从而得到画的中心词,再从词库中获取中心词对应的词向量;
步骤(4):建立第一层GRU网络,所述第一层GRU网络由N个GRU单元组成,其中最后一个单元连接一个全连接层和一个softmax层,用于生成所题诗的前2句;第一层GRU网络输入为步骤(2)所有检测到的意象词词向量的和X和一个100的起始向量<bos>,即输入为C1=(X,<bos>),其中X=(x1+x2+…+xi+…+xn),xi表示从画中检测到的每个意向词向量;通过第一层GRU网络得到满足韵律要求的每个候选字的概率,选择概率最大的字作为五言诗的第一个字A1,然后再将第一个字的字向量输回第一层GRU网络,利用第一个字预测得到第二个字A2,并用同样的方式依次得到五言诗前2句的每个字{A1,A2,……,A10};
步骤(5):建立第二层GRU网络,所述第二层GRU网络由M个GRU单元组成,最后一个单元连接一个全连接层和一个softmax层,用于生成所题诗的后2句,第二层GRU网络的输入为意象词向量的和X和中心词向量Y组成的向量 其中X、Y为100维的向量,表示后2句诗的最后一个字的字向量;通过第二层GRU网络得到满足韵律要求的每个候选字的概率,选择概率最大的字作为五言诗后2句的第一个字A11,然后再将第一个字的字向量输回第二层GRU网络,利用第一个字预测得到第二个字A12,并用同样的方式依次得到五言诗后2句的每个字{A11,A12,……,A20},双层GRU网络一同训练,模型优化函数为随机梯度下降,学习速率为0.01,迭代次数为5000次。
2.如权利要求1所述的基于CornerNet-Saccade和GRU的看画题诗方法,其特征在于:步骤(4)中所述满足韵律要求每个候选字的概率,其韵律要求包括:平仄韵律,押韵韵律;所述平仄韵律的具体实施方法:根据预先构建平仄函数和平仄矩阵以及预测的当前字的位置,确定预测当前字的平仄取值,在满足平仄取值的候选字中选取概率最大候选字;所述五言诗的平仄矩阵为:
平仄矩阵中P(i,j)代表当前字的位置,i代表诗句的行,j代表诗句的列;0表示该位置的字代表平仄不限,1或者-1代表该位置为平或者仄,2或-2表示该位置与第1句第2字平仄相同或相反,3或-3表示该位置与第1句第3字平仄相同或相反;
所述平仄函数为:
H(i,j)代表平仄取值;
所述押韵韵律的具体实施方法:预测五言诗的第2、4句的最后一个字时需要满足韵脚规律,根据预先构建的韵脚编码与汉字之间的映射表,确定要预测的当前字属于哪个汉字集,再从这个汉字集中的候选字选择概率最大的字的作为当前字;所述韵脚编码与汉字之间映射表,其特征在于:依据平韵和仄韵,将106个韵脚进行编码,第一个韵脚编码为0,最后一个韵脚编码为105,将每个韵脚编号对应的汉字组合成汉字集,在预测需要满足韵脚要求的字时,将第一句最后一个字的韵脚根据编码映射到汉字集,并除去该字,并选取其余候选字中概率最大的字作为当前字。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910593023.0A CN110309510B (zh) | 2019-07-02 | 2019-07-02 | 一种基于c-s和gru的看画题诗方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910593023.0A CN110309510B (zh) | 2019-07-02 | 2019-07-02 | 一种基于c-s和gru的看画题诗方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110309510A CN110309510A (zh) | 2019-10-08 |
CN110309510B true CN110309510B (zh) | 2023-05-12 |
Family
ID=68078851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910593023.0A Active CN110309510B (zh) | 2019-07-02 | 2019-07-02 | 一种基于c-s和gru的看画题诗方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110309510B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113052189B (zh) * | 2021-03-30 | 2022-04-29 | 电子科技大学 | 一种基于改进的MobileNetV3特征提取网络 |
CN113010717B (zh) * | 2021-04-26 | 2022-04-22 | 中国人民解放军国防科技大学 | 图像诗句描述生成方法、装置和设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10789298B2 (en) * | 2016-11-16 | 2020-09-29 | International Business Machines Corporation | Specialist keywords recommendations in semantic space |
CN107480132A (zh) * | 2017-07-25 | 2017-12-15 | 浙江工业大学 | 一种基于图像内容的古诗词生成方法 |
CN107832292B (zh) * | 2017-11-02 | 2020-12-29 | 合肥工业大学 | 一种基于神经网络模型的图像到汉语古诗的转换方法 |
CN109086270B (zh) * | 2018-07-24 | 2022-03-01 | 重庆大学 | 基于古诗词语料向量化的自动作诗系统及其方法 |
-
2019
- 2019-07-02 CN CN201910593023.0A patent/CN110309510B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110309510A (zh) | 2019-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108984745B (zh) | 一种融合多知识图谱的神经网络文本分类方法 | |
CN107766447B (zh) | 一种使用多层注意力网络机制解决视频问答的方法 | |
CN109524006B (zh) | 一种基于深度学习的汉语普通话唇语识别方法 | |
CN108875807A (zh) | 一种基于多注意力多尺度的图像描述方法 | |
CN108197294B (zh) | 一种基于深度学习的文本自动生成方法 | |
CN112860888B (zh) | 一种基于注意力机制的双模态情感分析方法 | |
CN107918782A (zh) | 一种生成描述图像内容的自然语言的方法与系统 | |
CN111046668A (zh) | 多模态文物数据的命名实体识别方法与装置 | |
CN109544524A (zh) | 一种基于注意力机制的多属性图像美学评价系统 | |
CN109977416A (zh) | 一种多层次自然语言反垃圾文本方法及系统 | |
CN107368831A (zh) | 一种自然场景图像中的英文文字和数字识别方法 | |
CN108829677A (zh) | 一种基于多模态注意力的图像标题自动生成方法 | |
CN108830287A (zh) | 基于残差连接的Inception网络结合多层GRU的中文图像语义描述方法 | |
CN110378334A (zh) | 一种基于二维特征注意力机制的自然场景文本识别方法 | |
CN110019839A (zh) | 基于神经网络和远程监督的医学知识图谱构建方法和系统 | |
CN106844442A (zh) | 基于fcn特征提取的多模态循环神经网络图像描述方法 | |
CN109447242A (zh) | 基于迭代学习的图像描述重生成系统及方法 | |
CN108763326A (zh) | 一种基于特征多样化的卷积神经网络的情感分析模型构建方法 | |
CN109753567A (zh) | 一种结合标题与正文注意力机制的文本分类方法 | |
CN108416065A (zh) | 基于层级神经网络的图像-句子描述生成系统及方法 | |
CN107145484A (zh) | 一种基于隐多粒度局部特征的中文分词方法 | |
CN106383816A (zh) | 基于深度学习的中文少数民族地区地名的识别方法 | |
CN110309510B (zh) | 一种基于c-s和gru的看画题诗方法 | |
CN110135461A (zh) | 基于分层注意感知深度度量学习的情感图像检索的方法 | |
CN112784604A (zh) | 一种基于实体边界网络的实体链接方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |