CN114218936A - 一种媒体领域的优质评论自动生成算法 - Google Patents
一种媒体领域的优质评论自动生成算法 Download PDFInfo
- Publication number
- CN114218936A CN114218936A CN202111156043.5A CN202111156043A CN114218936A CN 114218936 A CN114218936 A CN 114218936A CN 202111156043 A CN202111156043 A CN 202111156043A CN 114218936 A CN114218936 A CN 114218936A
- Authority
- CN
- China
- Prior art keywords
- ids
- batch
- comment
- output
- token
- 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.)
- Pending
Links
- 238000012549 training Methods 0.000 claims abstract description 44
- 238000012552 review Methods 0.000 claims abstract description 37
- 230000008451 emotion Effects 0.000 claims abstract description 25
- 238000000034 method Methods 0.000 claims abstract description 24
- 230000008569 process Effects 0.000 claims abstract description 17
- 238000004458 analytical method Methods 0.000 claims abstract description 14
- 238000013528 artificial neural network Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 9
- 238000012550 audit Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 6
- 238000002372 labelling Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 11
- 238000012544 monitoring process Methods 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本发明属于自然语言生成(NLG)技术领域,涉及一种媒体领域的优质评论自动生成算法,依次包括评论审核、评论情感分析、评论自动生成,即通过机器审核+人工审核相互合作的方式,严格把关客户端的评论质量;其次,通过情感分析算法分析评论的情感系数,对用户评论做情感分层;最终,根据情感等级提取相关评论进行定制化训练,让机器学习用户的评论思维,生成两种模式下的评论生成模型:正能量模式、大众评论模式。当然,机器生成的评论同样需要经过机器审核+人工审核流程,将机器评论的风险降到最低;三大流程形成闭环,层层筛选把控,打造优质评论生产生态圈。
Description
技术领域
本发明属于自然语言生成(NLG)技术领域,涉及一种媒体领域的优质评论自动生成算法。
背景技术
在全媒体时代下,信息传播采用文字、声音、影像、动画、网页等多种媒体表现手段进行。在此形势下,如何全面提升“四力”:脚力、眼力、脑力、笔力,加快推进媒体的深度融合发展,加强新闻舆论的监控覆盖范围和执行效能成为一个值得研究的课题。而研究课题的难点在于通过人机互动的方式激发用户与新闻内容的互动性,同时也能做到舆论监控技术的自我把控,这是值得我们深思的一个问题。在此背景下,南方+客户端积极响应数字化转型的理念,采用深度学习技术打造端内智能化“评论审核——评论筛选——评论生成”优质评论的生态闭环,实现从评论生产到发布的全流程自动化监控处理。从而提升了新闻舆论的监控执行效力,加强监控覆盖范围。
通过人机结合进行评论审核,杜绝出现辱骂等违规评论,打造一个拥有优质绿色环境的移动媒体平台;对过审的评论进行情感分析,建立评论情感系数漏斗,实现评论数据的分层管理;根据实际业务场景,筛选不同情感等级的评论数据进行训练机器评论模型,学习优质用户的评论思维,然后通过机器理解新闻内容的方式生成互动性较高的评论,从而达到增强用户在新闻评论区的互动性和提升用户对客户端的体验质量的效果。对比传统的人工评论审核,机器审核可以帮助新闻编辑解放大量的重复性审核工作,与此同时,通过大数据精准计算,推送用户感兴趣的评论互动内容,通过人机互动的方式来提升新闻内容与用户的互动效果,让APP更懂用户,为用户带来更多的新闻价值。
发明内容
本发明针对上述的问题,提供了一种媒体领域的优质评论自动生成算法。
为了达到上述目的,本发明采用的技术方案为,
一种媒体领域的优质评论自动生成算法,依次包括以下步骤:
A、评论审核;
B、评论情感分析;
C、评论自动生成。
作为优选,所述评论审核采用bert预训练模型与softmax函数进行微调处理,具体包括以下步骤:
步骤一
通过人工标注方式对评论进行打标,标注评论所属类型,作为评论审核的训练数据,训练数据的格式为:
[[comment,label],[comment,label],[comment, label].....,[comment,label]];
步骤二
采用bert模型的tokenizer分词器对评论进行分词,并且根据 tokenizer的encode规则和标签表进行id转码,生成词id (batch_token_ids),句子id(batch_segment_ids),标签id (batch_label_id);
步骤三
搭建评论审核模型的神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids] 作为输入层;
2)bert的输出层的结果为bert_output,bert_output的形状为 [batch_size,max_length,hidden_size];
3)提取bert_output的cls元素的编码向量来表示评论的编码特征,即pool_output=bert_output[:,0:1,:],pool_output的形状为 [batch_size,hidden_size];
4)评论的编码特征pool_output后面连接一层全连接层,并以 softmax作为激活函数,输出预测概率label_prob,label_prob的形状为[label_num];
步骤四
argmax(label_prob)得到的最大值索引,匹配到标签表中的标签名,得到最终的预测结果。
作为优选,所述步骤一中的标注评论所属类型,其类型为:普通。
作为优选,步骤二中的batch_token_ids的形状为 [batch_size,max_length+2],batch_segment_ids的形状为 [batch_size,max_length+2],标签id的形状为[batch_size],batch_size 表示的是每个训练批次的数据量,max_length表示的是当前bert模型支持的最大文本长度;假设batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3, 0,0]]
batch_segment_ids=[[0,0,0,.....,0,0],[0,0,0,.....,0,0]]
batch_label_id=[[0,1]]。
作为优选,所述评论情感分析采用bert预训练模型与sigmod函数进行微调处理,具体包括以下步骤:
步骤五
通过人工标注方式对评论进行情感分类,标注评论所属的情感类型,作为评论情感分析的训练数据,训练数据的格式为:
[[comment,label],[comment,label],[comment, label].....,[comment,label]]
步骤六
采用bert模型的tokenizer分词器对评论进行分词,并且根据 tokenizer的encode规则和标签表进行id转码,生成词id (batch_token_ids),句子id(batch_segment_ids),标签id (batch_label_id);
步骤七
搭建评论审核模型的神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids] 作为输入层;
2)bert的输出层的结果为bert_output,bert_output的形状为 [batch_size,max_length,hidden_size];
3)提取bert_output的cls元素的编码向量来表示评论的编码特征,即pool_output=bert_output[:,0:1,:],pool_output的形状为 [batch_size,hidden_size];
4)评论的编码特征pool_output后面连接一层全连接层,并以 sigmod作为激活函数,输出正负面的预测概率label_prob, label_prob的形状为[2];
步骤八
argmax(label_prob)得到的最大值索引,匹配到标签表中的标签名,得到最终的预测结果。
作为优选,步骤五中的标注评论所属的情感类型,其情感类型为正面和负面。
作为优选,步骤六中的batch_token_ids的形状为 [batch_size,max_length+2],batch_segment_ids的形状为[batch_size,max_length+2],标签id的形状为[batch_size],batch_size 表示的是每个训练批次的数据量,max_length表示的是当前bert模型支持的最大文本长度;假设batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3, 0,0]]
batch_segment_ids=[[0,0,0,.....,0,0],[0,0,0,.....,0,0]]
batch_label_id=[[0,1]]
作为优选,所述评论自动生成采用bert预训练模型与mask机制,结合了seq2seq算法进行微调处理,具体步骤如下:
步骤九
提取新闻稿件的正文(text)和评论(comment),将正文与评论对应组合作为评论自动生成模型的训练数据,格式为:
[[text_1,comment_1],[text_2,comment_2],.....,[text_n,comment_n]]
步骤十
采用bert模型的tokenizer分词器对评论进行分词,并且根据 tokenizer的encode规则对正文和评论进行合并编码,生成词id (batch_token_ids),句子id(batch_segment_ids);
步骤十一
搭建评论自动生成模型的编码层神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids] 作为输入层,每个batch的输入层为token_ids和segment_ids,其中 token_ids由正文的token_ids和评论的token_ids拼接而成,segment_ids由正文的segment_ids和评论的segment_ids拼接而成;
2)bert的输出层的结果为bert_output,bert_output的形状为 [batch_size,max_length,vocab_size],其中vocab_size为bert内置词表的大小;
3)bert的输入层的token_ids作为真实标签、segment_ids作为 mask,bert_output作为预测序列,通过交叉熵损失函数计算 token_ids与bert_output的每个序列的损失值,然后与segment_ids 进行相乘,mask掉正文序列的损失值,最终计算评论序列的平均损失值;
4)最终评论自动生成模型的编码层输出为bert_output;
步骤十二
搭建评论自动生成模型的解码层神经网络,具体的搭建流程如下:
1)定义评论的最大长度,在最大长度范围内进行迭代预测,直到预测结果中出现end标记;
2)定义Top k值,作用是配置每一步序列预测中取得分最高的前k个token_id;
3)初始化output_ids,output_scores,其中output_ids为上一步输出分数最高的前k个token_id,output_socres为上一步输出最高的前 k个分数;
4)正文token_ids与上一步的output_ids进行拼接,正文 segment_ids与上一步的output_ids的ones_like进行拼接;上述两个拼接生成的new_token_ids和new_segment_ids作为编码层的输入;
5)将编码层的输出结果bert_output进行重复生成k次;
6)取每个bert_output最后一个token的预测分值向量得到 scores,scores的形状为[k,vocab_size];
7)对scores进行展开,从k*vocab_size个分值中,取分值最高的前k个作为当前的output_scores,同时得到该k个分值在scores 中的索引值indices;
8)通过indices索引定位到分值最高的前k个token_id,作为当前的output_ids;
9)重复进行4)-8)的运算,将每一步的output_ids进行拼接以及output_scores累加;
10)直到所有评论序列都出现end标记才视为预测结束,生成 k个评论的序列id列表;
11)最终得到k个评论的序列id列表,取最终output_scores中分值最大的评论序列作为最佳输出结果output_ids;
步骤十三
通过tokenizer对output_ids进行decode转换,从id转换成文字,得到评论内容。
作为优选,步骤十中的batch_token_ids的形状为 [batch_size,max_length+2],batch_segment_ids的形状为 [batch_size,max_length+2],batch_size表示的是每个训练批次的数据量,max_length表示的是当前bert模型支持的最大文本长度。假设 batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3, 0,0]]
batch_segment_ids=[[0,0,0,.....,1,1],[0,0,0,.....,1,1]]。
与现有技术相比,本发明的优点和积极效果在于,
1、本发明通过机器审核+人工审核相互合作的方式,严格把关客户端的评论质量;其次,通过情感分析算法分析评论的情感系数,对用户评论做情感分层;最终,根据情感等级提取相关评论进行定制化训练,让机器学习用户的评论思维,生成两种模式下的评论生成模型:正能量模式、大众评论模式。当然,机器生成的评论同样需要经过机器审核+人工审核流程,将机器评论的风险降到最低;
2、本发明依次包括评论审核——评论筛选——评论生成,三大流程形成闭环,层层筛选把控,打造优质评论生产生态圈
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一种媒体领域的优质评论自动生成算法的示意图;
图2为一种媒体领域的优质评论自动生成算法的总体流程图;
图3为一种媒体领域的优质评论自动生成算法中评论审核的流程图;
图4为一种媒体领域的优质评论自动生成算法中评论情感分析的流程图;
图5为一种媒体领域的优质评论自动生成算法中评论自动生成的流程图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和实施例对本发明做进一步说明。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开说明书的具体实施例的限制。
实施例1,如图1图2所示,本发明提供了一种媒体领域的优质评论自动生成算法,依次包括以下步骤:
A、评论审核;
B、评论情感分析;
C、评论自动生成。
如图2和图3所示,其评论审核采用bert预训练模型与softmax 函数进行微调处理,具体包括以下步骤:
步骤一
通过人工标注方式对评论进行打标,标注评论所属类型,如:普通等,作为评论审核的训练数据,训练数据的格式为:
[[comment,label],[comment,label],[comment, label].....,[comment,label]]
步骤二
采用bert模型的tokenizer分词器对评论进行分词,并且根据 tokenizer的encode规则和标签表进行id转码,生成词id
(batch_token_ids),句子id(batch_segment_ids),标签id (batch_label_id)。
其中batch_token_ids的形状为[batch_size,max_length+2], batch_segment_ids的形状为[batch_size,max_length+2],标签id的形状为[batch_size],batch_size表示的是每个训练批次的数据量, max_length表示的是当前bert模型支持的最大文本长度。假设 batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3, 0,0]]
batch_segment_ids=[[0,0,0,.....,0,0],[0,0,0,.....,0,0]]
batch_label_id=[[0,1]]
步骤三
搭建评论审核模型的神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids] 作为输入层。
2)bert的输出层的结果为bert_output,bert_output的形状为[batch_size,max_length,hidden_size]
3)提取bert_output的cls元素的编码向量来表示评论的编码特征,即pool_output=bert_output[:,0:1,:],pool_output的形状为 [batch_size,hidden_size]
4)评论的编码特征pool_output后面连接一层全连接层,并以 softmax作为激活函数,输出预测概率label_prob,label_prob的形状为[label_num]。
步骤四
argmax(label_prob)得到的最大值索引,匹配到标签表中的标签名,得到最终的预测结果。
如图2和图4所示,其评论情感分析采用bert预训练模型与 sigmod函数进行微调处理,具体包括以下步骤:
步骤一
通过人工标注方式对评论进行情感分类,标注评论所属的情感类型,如:正面和负面,作为评论情感分析的训练数据,训练数据的格式为:
[[comment,label],[comment,label],[comment, label].....,[comment,label]]
步骤二
采用bert模型的tokenizer分词器对评论进行分词,并且根据 tokenizer的encode规则和标签表进行id转码,生成词id (batch_token_ids),句子id(batch_segment_ids),标签id (batch_label_id)。
其中batch_token_ids的形状为[batch_size,max_length+2], batch_segment_ids的形状为[batch_size,max_length+2],标签id的形状为[batch_size],batch_size表示的是每个训练批次的数据量, max_length表示的是当前bert模型支持的最大文本长度。假设batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3, 0,0]]
batch_segment_ids=[[0,0,0,.....,0,0],[0,0,0,.....,0,0]]
batch_label_id=[[0,1]]
步骤三
搭建评论审核模型的神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids] 作为输入层。
2)bert的输出层的结果为bert_output,bert_output的形状为 [batch_size,max_length,hidden_size]。
3)提取bert_output的cls元素的编码向量来表示评论的编码特征,即pool_output=bert_output[:,0:1,:],pool_output的形状为 [batch_size,hidden_size]
4)评论的编码特征pool_output后面连接一层全连接层,并以 sigmod作为激活函数,输出正负面的预测概率label_prob, label_prob的形状为[2]。
步骤四
argmax(label_prob)得到的最大值索引,匹配到标签表中的标签名,得到最终的预测结果。
如图2和图5所示,其评论自动生成采用bert预训练模型与 mask机制,结合了seq2seq算法进行微调处理,具体步骤如下:
步骤一
提取新闻稿件的正文(text)和评论(comment),将正文与评论对应组合作为评论自动生成模型的训练数据,格式为:
[[text_1,comment_1],[text_2,comment_2],.....,[text_n,comment_n]]
步骤二
采用bert模型的tokenizer分词器对评论进行分词,并且根据 tokenizer的encode规则对正文和评论进行合并编码,生成词id (batch_token_ids),句子id(batch_segment_ids)
其中batch_token_ids的形状为 [batch_size,max_length+2],batch_segment_ids的形状为 [batch_size,max_length+2],batch_size表示的是每个训练批次的数据量,max_length表示的是当前bert模型支持的最大文本长度。假设 batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3, 0,0]]
batch_segment_ids=[[0,0,0,.....,1,1],[0,0,0,.....,1,1]]
步骤三
搭建评论自动生成模型的编码层神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids] 作为输入层,每个batch的输入层为token_ids和segment_ids,其中 token_ids由正文的token_ids和评论的token_ids拼接而成,segment_ids由正文的segment_ids和评论的segment_ids拼接而成。
2)bert的输出层的结果为bert_output,bert_output的形状为 [batch_size,max_length,vocab_size],其中vocab_size为bert内置词表的大小。
3)bert的输入层的token_ids作为真实标签、segment_ids作为 mask,bert_output作为预测序列,通过交叉熵损失函数计算 token_ids与bert_output的每个序列的损失值,然后与segment_ids 进行相乘(正文序列在segment_ids中的值都为0),mask掉正文序列的损失值,最终计算评论序列的平均损失值。
4)最终评论自动生成模型的编码层输出为bert_output。
步骤四
搭建评论自动生成模型的解码层神经网络,具体的搭建流程如下:
1)定义评论的最大长度,在最大长度范围内进行迭代预测,直到预测结果中出现end标记。
2)定义Top k值,作用是配置每一步序列预测中取得分最高的前k个token_id。
3)初始化output_ids,output_scores,其中output_ids为上一步输出分数最高的前k个token_id,output_socres为上一步输出最高的前 k个分数。
4)正文token_ids与上一步的output_ids进行拼接,正文 segment_ids与上一步的output_ids的ones_like进行拼接;上述两个拼接生成的new_token_ids和new_segment_ids作为编码层的输入。
5)将编码层的输出结果bert_output进行重复生成k次,假设 k=3,则得到[bert_output,bert_output,bert_output]。
6)取每个bert_output最后一个token的预测分值向量得到 scores,scores的形状为[k,vocab_size]。
7)对scores进行展开,从k*vocab_size个分值中,取分值最高的前k个作为当前的output_scores,同时得到该k个分值在scores 中的索引值indices。
8)通过indices索引定位到分值最高的前k个token_id,作为当前的output_ids。
9)重复进行4)-8)的运算,将每一步的output_ids进行拼接以及output_scores累加。
10)直到所有评论序列都出现end标记才视为预测结束,生成 k个评论的序列id列表。
11)最终得到k个评论的序列id列表,取最终output_scores中分值最大的评论序列作为最佳输出结果output_ids。
步骤五
通过tokenizer对output_ids进行decode转换,从id转换成文字,得到评论内容。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例应用于其它领域,但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
Claims (9)
1.一种媒体领域的优质评论自动生成算法,其特征在于,依次包括以下步骤:
A、评论审核;
B、评论情感分析;
C、评论自动生成。
2.根据权利要求1所述的一种媒体领域的优质评论自动生成算法,其特征在于,
所述评论审核采用bert预训练模型与softmax函数进行微调处理,具体包括以下步骤:
步骤一
通过人工标注方式对评论进行打标,标注评论所属类型,作为评论审核的训练数据,训练数据的格式为:
[[comment,label],[comment,label],[comment,label].....,[comment,label]];
步骤二
采用bert模型的tokenizer分词器对评论进行分词,并且根据tokenizer的encode规则和标签表进行id转码,生成词id(batch_token_ids),句子id(batch_segment_ids),标签id(batch_label_id);
步骤三
搭建评论审核模型的神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids]作为输入层;
2)bert的输出层的结果为bert_output,bert_output的形状为[batch_size,max_length,hidden_size];
3)提取bert_output的cls元素的编码向量来表示评论的编码特征,即pool_output=bert_output[:,0:1,:],pool_output的形状为[batch_size,hidden_size];
4)评论的编码特征pool_output后面连接一层全连接层,并以softmax作为激活函数,输出预测概率label_prob,label_prob的形状为[label_num];
步骤四
argmax(label_prob)得到的最大值索引,匹配到标签表中的标签名,得到最终的预测结果。
3.根据权利要求2所述的一种媒体领域的优质评论自动生成算法,其特征在于,所述步骤一中的标注评论所属类型,其类型为:普通。
4.根据权利要求2所述的一种媒体领域的优质评论自动生成算法,其特征在于,步骤二中的batch_token_ids的形状为[batch_size,max_length+2],batch_segment_ids的形状为[batch_size,max_length+2],标签id的形状为[batch_size],batch_size表示的是每个训练批次的数据量,max_length表示的是当前bert模型支持的最大文本长度;假设batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3,0,0]]
batch_segment_ids=[[0,0,0,.....,0,0],[0,0,0,.....,0,0]]
batch_label_id=[[0,1]]。
5.根据权利要求1所述的一种媒体领域的优质评论自动生成算法,其特征在于,
所述评论情感分析采用bert预训练模型与sigmod函数进行微调处理,具体包括以下步骤:
步骤五
通过人工标注方式对评论进行情感分类,标注评论所属的情感类型,作为评论情感分析的训练数据,训练数据的格式为:
[[comment,label],[comment,label],[comment,label].....,[comment,label]]
步骤六
采用bert模型的tokenizer分词器对评论进行分词,并且根据tokenizer的encode规则和标签表进行id转码,生成词id(batch_token_ids),句子id(batch_segment_ids),标签id(batch_label_id);
步骤七
搭建评论审核模型的神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids]作为输入层;
2)bert的输出层的结果为bert_output,bert_output的形状为[batch_size,max_length,hidden_size];
3)提取bert_output的cls元素的编码向量来表示评论的编码特征,即pool_output=bert_output[:,0:1,:],pool_output的形状为[batch_size,hidden_size];
4)评论的编码特征pool_output后面连接一层全连接层,并以sigmod作为激活函数,输出正负面的预测概率label_prob,label_prob的形状为[2];
步骤八
argmax(label_prob)得到的最大值索引,匹配到标签表中的标签名,得到最终的预测结果。
6.根据权利要求5所述的一种媒体领域的优质评论自动生成算法,其特征在于,步骤五中的标注评论所属的情感类型,其情感类型为正面和负面。
7.根据权利要求5所述的一种媒体领域的优质评论自动生成算法,其特征在于,步骤六中的batch_token_ids的形状为[batch_size,max_length+2],batch_segment_ids的形状为[batch_size,max_length+2],标签id的形状为[batch_size],batch_size表示的是每个训练批次的数据量,max_length表示的是当前bert模型支持的最大文本长度;假设batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3,0,0]]
batch_segment_ids=[[0,0,0,.....,0,0],[0,0,0,.....,0,0]]
batch_label_id=[[0,1]]。
8.根据权利要求1所述的一种媒体领域的优质评论自动生成算法,其特征在于,所述评论自动生成采用bert预训练模型与mask机制,结合了seq2seq算法进行微调处理,具体步骤如下:
步骤九
提取新闻稿件的正文(text)和评论(comment),将正文与评论对应组合作为评论自动生成模型的训练数据,格式为:
[[text_1,comment_1],[text_2,comment_2],.....,[text_n,comment_n]]
步骤十
采用bert模型的tokenizer分词器对评论进行分词,并且根据tokenizer的encode规则对正文和评论进行合并编码,生成词id(batch_token_ids),句子id(batch_segment_ids);
步骤十一
搭建评论自动生成模型的编码层神经网络,具体的搭建流程如下:
1)加载bert预训练模型,[batch_token_ids,batch_segment_ids]作为输入层,每个batch的输入层为token_ids和segment_ids,其中token_ids由正文的token_ids和评论的token_ids拼接而成,segment_ids由正文的segment_ids和评论的segment_ids拼接而成;
2)bert的输出层的结果为bert_output,bert_output的形状为[batch_size,max_length,vocab_size],其中vocab_size为bert内置词表的大小;
3)bert的输入层的token_ids作为真实标签、segment_ids作为mask,bert_output作为预测序列,通过交叉熵损失函数计算token_ids与bert_output的每个序列的损失值,然后与segment_ids进行相乘,mask掉正文序列的损失值,最终计算评论序列的平均损失值;
4)最终评论自动生成模型的编码层输出为bert_output;
步骤十二
搭建评论自动生成模型的解码层神经网络,具体的搭建流程如下:
1)定义评论的最大长度,在最大长度范围内进行迭代预测,直到预测结果中出现end标记;
2)定义Top k值,作用是配置每一步序列预测中取得分最高的前k个token_id;
3)初始化output_ids,output_scores,其中output_ids为上一步输出分数最高的前k个token_id,output_socres为上一步输出最高的前k个分数;
4)正文token_ids与上一步的output_ids进行拼接,正文segment_ids与上一步的output_ids的ones_like进行拼接;上述两个拼接生成的new_token_ids和new_segment_ids作为编码层的输入;
5)将编码层的输出结果bert_output进行重复生成k次;
6)取每个bert_output最后一个token的预测分值向量得到scores,scores的形状为[k,vocab_size];
7)对scores进行展开,从k*vocab_size个分值中,取分值最高的前k个作为当前的output_scores,同时得到该k个分值在scores中的索引值indices;
8)通过indices索引定位到分值最高的前k个token_id,作为当前的output_ids;
9)重复进行4)-8)的运算,将每一步的output_ids进行拼接以及output_scores累加;
10)直到所有评论序列都出现end标记才视为预测结束,生成k个评论的序列id列表;
11)最终得到k个评论的序列id列表,取最终output_scores中分值最大的评论序列作为最佳输出结果output_ids;
步骤十三
通过tokenizer对output_ids进行decode转换,从id转换成文字,得到评论内容。
9.根据权利要求1所述的一种媒体领域的优质评论自动生成算法,其特征在于,步骤十中的batch_token_ids的形状为[batch_size,max_length+2],batch_segment_ids的形状为[batch_size,max_length+2],batch_size表示的是每个训练批次的数据量,max_length表示的是当前bert模型支持的最大文本长度。假设batch_size为2,max_length为128:
batch_token_ids=[[2,689,1819,.....,1860,3],[2,4700,2039,.....,1860,3,0,0]]batch_segment_ids=[[0,0,0,.....,1,1],[0,0,0,.....,1,1]]。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111156043.5A CN114218936A (zh) | 2021-09-29 | 2021-09-29 | 一种媒体领域的优质评论自动生成算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111156043.5A CN114218936A (zh) | 2021-09-29 | 2021-09-29 | 一种媒体领域的优质评论自动生成算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114218936A true CN114218936A (zh) | 2022-03-22 |
Family
ID=80696033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111156043.5A Pending CN114218936A (zh) | 2021-09-29 | 2021-09-29 | 一种媒体领域的优质评论自动生成算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114218936A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116187334A (zh) * | 2023-04-20 | 2023-05-30 | 山东齐鲁壹点传媒有限公司 | 一种基于mt5模型融合ner实体识别的评论生成方法 |
CN117725909A (zh) * | 2024-02-18 | 2024-03-19 | 四川日报网络传媒发展有限公司 | 一种多维度的评论审核方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111310474A (zh) * | 2020-01-20 | 2020-06-19 | 桂林电子科技大学 | 基于激活-池化增强bert模型的在线课程评论情感分析方法 |
CN111325571A (zh) * | 2019-12-30 | 2020-06-23 | 北京航空航天大学 | 一种多任务学习的商品评论标签自动生成方法、装置及系统 |
CN111325000A (zh) * | 2020-01-23 | 2020-06-23 | 北京百度网讯科技有限公司 | 语言生成方法、装置及电子设备 |
CN111966944A (zh) * | 2020-08-17 | 2020-11-20 | 中电科大数据研究院有限公司 | 一种多层级用户评论安全审核的模型构建方法 |
CN112257452A (zh) * | 2020-09-21 | 2021-01-22 | 北京达佳互联信息技术有限公司 | 情感识别模型的训练方法、装置、设备和存储介质 |
-
2021
- 2021-09-29 CN CN202111156043.5A patent/CN114218936A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111325571A (zh) * | 2019-12-30 | 2020-06-23 | 北京航空航天大学 | 一种多任务学习的商品评论标签自动生成方法、装置及系统 |
CN111310474A (zh) * | 2020-01-20 | 2020-06-19 | 桂林电子科技大学 | 基于激活-池化增强bert模型的在线课程评论情感分析方法 |
CN111325000A (zh) * | 2020-01-23 | 2020-06-23 | 北京百度网讯科技有限公司 | 语言生成方法、装置及电子设备 |
US20210232775A1 (en) * | 2020-01-23 | 2021-07-29 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Language generation method and apparatus, electronic device and storage medium |
CN111966944A (zh) * | 2020-08-17 | 2020-11-20 | 中电科大数据研究院有限公司 | 一种多层级用户评论安全审核的模型构建方法 |
CN112257452A (zh) * | 2020-09-21 | 2021-01-22 | 北京达佳互联信息技术有限公司 | 情感识别模型的训练方法、装置、设备和存储介质 |
Non-Patent Citations (3)
Title |
---|
JACOB DEVLIN ET AL.: "BERT Pre-training of Deep Bidirectional Transformers for Language Understanding", 《ARXIV》, 24 May 2019 (2019-05-24) * |
王启发;王中卿;李寿山;周国栋;: "基于交叉注意力机制和新闻正文的评论情感分类", 计算机科学, no. 10 * |
腾讯云TI平台: "【技术分享】BERT系列(一)——BERT源码分析及使用方法", Retrieved from the Internet <URL:https://brands.cnblogs.com/tencentcloud/p/6604> * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116187334A (zh) * | 2023-04-20 | 2023-05-30 | 山东齐鲁壹点传媒有限公司 | 一种基于mt5模型融合ner实体识别的评论生成方法 |
CN117725909A (zh) * | 2024-02-18 | 2024-03-19 | 四川日报网络传媒发展有限公司 | 一种多维度的评论审核方法、装置、电子设备及存储介质 |
CN117725909B (zh) * | 2024-02-18 | 2024-05-14 | 四川日报网络传媒发展有限公司 | 一种多维度的评论审核方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111177366B (zh) | 一种基于查询机制的抽取式文档摘要自动生成方法、装置及系统 | |
CN108197294B (zh) | 一种基于深度学习的文本自动生成方法 | |
CN110516244B (zh) | 一种基于bert的句子自动填充方法 | |
CN112307773B (zh) | 机器阅读理解系统的自定义问题数据自动生成方法 | |
CN112131347A (zh) | 一种基于多模态融合的假新闻检测方法 | |
CN114218936A (zh) | 一种媒体领域的优质评论自动生成算法 | |
CN115982350A (zh) | 基于多模态Transformer的虚假新闻检测方法 | |
CN116542817B (zh) | 一种智能数字人律师咨询方法及系统 | |
Wang et al. | Comic-guided speech synthesis | |
CN117423108B (zh) | 指令微调多模态大模型的图像细粒度描述方法及系统 | |
CN116092472A (zh) | 一种语音合成方法和合成系统 | |
CN117349427A (zh) | 一种面向舆情事件应对的人工智能多模态内容生成系统 | |
CN114444481B (zh) | 一种新闻评论的情感分析与生成方法 | |
CN115438665A (zh) | 一种供电服务工单预警识别方法、装置、设备及介质 | |
CN114942990A (zh) | 一种基于提示学习的少样本抽象对话摘要生成系统 | |
CN116341519A (zh) | 基于背景知识的事件因果关系抽取方法、装置及存储介质 | |
CN116258147A (zh) | 一种基于异构图卷积的多模态评论情感分析方法及系统 | |
CN117150320B (zh) | 对话数字人情感风格相似度评价方法及系统 | |
CN114372140A (zh) | 分层会议摘要生成模型训练方法、生成方法及装置 | |
CN117235256A (zh) | 一种多类知识体系下的情感分析分类方法 | |
CN116129868A (zh) | 一种结构化画本的生成方法和生成系统 | |
CN115589446A (zh) | 一种基于预训练与提示的会议摘要生成方法及系统 | |
CN113515960A (zh) | 一种融合句法信息的翻译质量自动评估方法 | |
CN117453895B (zh) | 一种智能客服应答方法、装置、设备及可读存储介质 | |
CN117877517B (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 |