CN110597963A - 表情问答库的构建方法、表情搜索方法、装置及存储介质 - Google Patents
表情问答库的构建方法、表情搜索方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110597963A CN110597963A CN201910901756.6A CN201910901756A CN110597963A CN 110597963 A CN110597963 A CN 110597963A CN 201910901756 A CN201910901756 A CN 201910901756A CN 110597963 A CN110597963 A CN 110597963A
- Authority
- CN
- China
- Prior art keywords
- expression
- text
- question
- session
- pair
- 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.)
- Granted
Links
- 230000014509 gene expression Effects 0.000 title claims abstract description 1032
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000010276 construction Methods 0.000 title claims abstract description 11
- 239000013598 vector Substances 0.000 claims description 75
- 230000008451 emotion Effects 0.000 claims description 34
- 230000004044 response Effects 0.000 claims description 29
- 230000008569 process Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 10
- 230000009466 transformation Effects 0.000 claims description 6
- 230000001902 propagating effect Effects 0.000 claims description 3
- 230000008909 emotion recognition Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 25
- 230000015654 memory Effects 0.000 description 23
- 239000003795 chemical substances by application Substances 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000013519 translation Methods 0.000 description 9
- 238000012015 optical character recognition Methods 0.000 description 7
- 238000012549 training Methods 0.000 description 7
- 238000012795 verification Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 6
- 230000000644 propagated effect Effects 0.000 description 4
- 230000001976 improved effect Effects 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013524 data verification Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000003867 tiredness Effects 0.000 description 2
- 208000016255 tiredness Diseases 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003796 beauty Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000008093 supporting effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- 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
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种表情问答库的构建方法、表情搜索方法、装置及存储介质;方法包括:获取包括多个表情会话的表情会话集合,所述表情会话由连续的至少两个表情构成;分别将各所述表情会话中相邻的两个表情组成表情对;分别获取各所述表情对中表情所携带的表情文本,得到对应所述表情对的表情文本对;分别将各所述表情文本对输入会话判别模型,输出对应各所述表情文本对的判别结果,所述判别结果用于指示所述表情文本对构成表情会话的概率;基于所述判别结果,构建所述表情问答库。通过本发明,能够实现表情问答库的构建,以用于搜索与表情构成表情会话的目标表情。
Description
技术领域
本发明涉及图像处理技术及区块链技术,尤其涉及一种表情问答库的构建方法、表情搜索方法、装置及存储介质。
背景技术
随着社交和网络的不断发展,通过表情进行沟通已形成一种流行文化。有些用户希望能够针对表情进行搜索,以获取到与该表情具有回复意义的表情,得到更好的沟通体验。获取与表情具有回复意义的表情属于图像翻译的问题,在图像翻译技术中,通常需要大量的图像配对数据对模型进行训练,且存在不稳定、模糊的问题。
发明内容
本发明实施例提供一种表情问答库的构建方法、表情搜索方法、装置及存储介质,能够实现表情问答库的构建,以用于搜索与表情构成表情会话的目标表情。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种表情问答库的构建方法,包括:
获取包括多个表情会话的表情会话集合,所述表情会话由连续的至少两个表情构成;
分别将各所述表情会话中相邻的两个表情组成表情对;
分别获取各所述表情对中表情所携带的表情文本,得到对应所述表情对的表情文本对;
分别将各所述表情文本对输入会话判别模型,输出对应各所述表情文本对的判别结果,所述判别结果用于指示所述表情文本对构成表情会话的概率;
基于所述判别结果,构建所述表情问答库。
本发明实施例提供一种基于表情问答库的表情搜索方法,包括:
接收到针对表情的搜索指令,所述搜索指令用于指示搜索目标表情,所述目标表情能够与所述表情构成表情会话;
获取所述表情中携带的表情文本;
基于所述表情文本,在表情问答库中搜索与所述表情文本的相似度满足相似度条件的第一表情文本;
获取与所述第一表情文本构成文本问答对的至少一个第二表情文本;
基于所述第二表情文本,确定并呈现至少一个目标表情。
上述方案中,所述接收到针对表情的搜索指令,包括:
响应于针对表情搜索功能项的点击操作,呈现包括表情添加入口的表情搜索界面,其中,所述表情添加入口用于指示输入表情;
基于所述表情添加入口,获取到输入的所述表情;
基于输入的所述表情,接收到针对所述表情的搜索指令。
上述方案中,所述基于所述表情添加入口,获取到输入的所述表情,包括:
响应于基于所述表情添加入口的点击操作,呈现供选择的至少一个表情;
响应于针对所述供选择的至少一个表情的选择指令,获取所述选择指令所指示的表情,将所述选择指令所指示的表情作为输入的所述表情。
上述方案中,所述获取所述表情中携带的表情文本,包括:
对所述表情中的表情文本行进行定位,得到所述表情文本行所处的位置;
基于所述表情文本行所处的位置进行文本识别,得到所述表情中携带的表情文本。
上述方案中,所述基于所述表情文本,在表情问答库中搜索与所述表情文本的相似度满足相似度条件的第一表情文本,包括:
获取所述表情文本的第一语义特征和所述表情问答库中各候选表情文本的第二语义特征;
基于所述第一语义特征及所述第二语义特征,分别确定所述表情文本与各所述候选表情文本的相似度;
确定与所述表情文本的相似度大小达到相似度阈值的候选表情文本,将所确定的候选表情文本作为所述第一表情文本。
上述方案中,所述基于所述表情文本,在表情问答库中搜索与所述表情文本的相似度满足相似度条件的第一表情文本,包括:
分别将所述表情文本与所述表情问答库中的多个候选表情文本进行匹配,得到所述表情文本与各候选表情文本的公共字符串;
获取所述公共字符串中的字符数量;
确定与所述表情文本的公共字符串中的字符数量达到预设数量阈值的候选表情文本,将所述确定的候选表情文本作为第一表情文本。
上述方案中,所述基于所述第二表情文本,确定并呈现至少一个目标表情文本,包括:
将所述表情文本与所述第二表情文本输入会话判别模型,得到所述表情文本与所述第二表情文本构成会话的概率值;
确定与表情文本构成会话的所述概率值满足预设概率条件的第二表情文本为目标表情文本;
确定并呈现所述目标表情文本所对应的目标表情。
上述方案中,所述方法还包括:
获取包括多个表情会话的表情会话集合,所述表情会话由连续的至少两个表情构成;
分别将各所述表情会话中相邻的两个表情组成表情对;
分别获取各所述表情对中表情所携带的表情文本,得到对应所述表情对的表情文本对;
基于得到的所述表情文本对,构建所述表情问答库。
本发明实施例提供一种表情问答库的构建装置,包括:
第一获取模块,用于获取包括多个表情会话的表情会话集合,所述表情会话由连续的至少两个表情构成;
组成模块,用于分别将各所述表情会话中相邻的两个表情组成表情对;
第二获取模块,用于分别获取各所述表情对中表情所携带的表情文本,得到对应所述表情对的表情文本对;
判别模块,用于分别将各所述表情文本对输入会话判别模型,输出对应各所述表情文本对的判别结果,所述判别结果用于指示所述表情文本对构成表情会话的概率;
构建模块,用于基于所述判别结果,构建所述表情问答库。
上述方案中,所述装置还包括:
模型训练模块,用于构建样本集合,所述样本集合包括:标注有是否为表情会话的类别信息的表情文本对;
通过所述会话判别模型,对所述表情文本对进行处理,得到对应所述表情文本对的判别结果;
确定所述判别结果与目标判别结果的差异;
基于所述判别结果与所述目标判别结果的差异,更新所述会话判别模型的模型参数。
上述方案中,所述模型训练模块,还用于通过会话判别模型,获取所述表情文本对对应的词向量、段向量及位置向量;
根据所述表情文本对对应的词向量、段向量及位置向量,对所述表情文本对进行语义特征提取,得到所述表情文本对的语义特征;
根据所述表情文本对的语义特征,确定所述表情文本对构成表情会话的概率。
上述方案中,所述模型训练模块,还用于基于所述判别结果与所述目标判别结果的差异,确定所述会话判别模型的损失函数的值;
当所述损失函数的值达到预设阈值时,基于所述会话判别模型的损失函数确定相应的误差信号;
将所述误差信号在所述会话判别模型中反向传播,并在传播的过程中更新所述会话判别模型的各个层的模型参数。
上述方案中,所述装置还包括:
表情搜索模块,用于收到针对表情的搜索指令,所述搜索指令用于指示搜索目标表情,所述目标表情能够与所述表情构成表情会话;
获取所述表情中携带的表情文本;
基于所述表情文本,在所述表情问答库中搜索与所述表情文本的相似度满足相似度条件的第一表情文本;
获取与所述第一表情文本构成文本问答对的至少一个第二表情文本;
基于所述第二表情文本,确定并呈现至少一个目标表情。
本发明实施例提供一种基于表情问答库的表情搜索装置,包括:
指令接收模块,用于接收到针对表情的搜索指令,所述搜索指令用于指示搜索目标表情,所述目标表情能够与所述表情构成表情会话;
第一文本获取模块,获取所述表情中携带的表情文本;
文本搜索模块,基于所述表情文本,在表情问答库中搜索与所述表情文本的相似度满足相似度条件的第一表情文本;
第二文本获取模块,获取与所述第一表情文本构成文本问答对的至少一个第二表情文本;
表情呈现模块,基于所述第二表情文本,确定并呈现至少一个目标表情。
上述方案中,所述指令接收模块,还用于通过会话窗口,在会话界面中呈现接收到的会话消息中的所述表情;
响应于针对所述表情的按压操作,呈现对应所述表情的至少一种控制项;
响应于针对所述至少一种控制项中目标控制项的点击操作,接收到针对所述表情的搜索指令。
上述方案中,所述指令接收模块,还用于响应于针对表情搜索功能项的点击操作,呈现包括表情添加入口的表情搜索界面,其中,所述表情添加入口用于指示输入表情;
基于所述表情添加入口,获取到输入的所述表情;
基于输入的所述表情,接收到针对所述表情的搜索指令。
上述方案中,所述指令接收模块,还用于响应于基于所述表情添加入口的点击操作,呈现供选择的至少一个表情;
响应于针对所述供选择的至少一个表情的选择指令,获取所述选择指令所指示的表情,将所述选择指令所指示的表情作为输入的所述表情。
上述方案中,所述第一文本获取模块,还用于对所述表情中的表情文本行进行定位,得到所述表情文本行所处的位置;
基于所述表情文本行所处的位置进行文本识别,得到所述表情中携带的表情文本。
上述方案中,所述表情搜索模块,还用于获取所述表情文本的第一语义特征和所述表情问答库中各候选表情文本的第二语义特征;
基于所述第一语义特征及所述第二语义特征,分别确定所述表情文本与各所述候选表情文本的相似度;
确定与所述表情文本的相似度大小达到相似度阈值的候选表情文本,将所确定的候选表情文本作为所述第一表情文本。
上述方案中,所述表情搜索模块,还用于分别将所述表情文本与所述表情问答库中的多个候选表情文本进行匹配,得到所述表情文本与各候选表情文本的公共字符串;
获取所述公共字符串中的字符数量;
确定与所述表情文本的公共字符串中的字符数量达到预设数量阈值的候选表情文本,将所述确定的候选表情文本作为第一表情文本。
上述方案中,所述表情呈现模块,还用于将所述表情文本与所述第二表情文本输入会话判别模型,得到所述表情文本与所述第二表情文本构成会话的概率值;
确定与所述表情文本构成会话的所述概率值满足预设概率条件的第二表情文本为目标表情文本;
确定并呈现所述目标表情文本所对应的目标表情。
上述方案中,所述装置还包括:问答库构架模块,用于获取包括多个表情会话的表情会话集合,所述表情会话由连续的至少两个表情构成;
分别将各所述表情会话中相邻的两个表情组成表情对;
分别获取各所述表情对中表情所携带的表情文本,得到对应所述表情对的表情文本对;
基于得到的所述表情文本对,构建所述表情问答库。
上述方案中,所述装置还包括:表情存储模块,用于分别对至少一个所述目标表情进行哈希变换,得到各所述目标表情对应的摘要信息;
存储各所述目标表情对应的摘要信息至区块链网络。
本发明实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的表情问答库的构建方法。
本发明实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的基于表情问答库的表情搜索方法。
本发明实施例提供一种存储介质,存储有可执行指令,用于引起处理器执行时,实现本发明实施例提供的表情问答库的构建方法。
本发明实施例提供一种存储介质,存储有可执行指令,用于引起处理器执行时,实现本发明实施例提供的基于表情问答库的表情搜索方法。
本发明实施例具有以下有益效果:
(1)通过获取包括多个表情会话的表情会话集合,分别将各表情会话中相邻的两个表情组成表情对,分别获取各表情对中表情所携带的表情文本,得到对应表情对的表情文本对;如此,能够通过表情文本对对表情对的含义进行分析,相对于图像翻译的问题,文本分析在实现上更加简单;
(2)通过分别将各表情文本对输入会话判别模型,输出对应各表情文本对的判别结果,所述判别结果用于指示表情文本对构成表情会话的概率;基于表情会话的概率,构建表情问答库;如此,能够通过会话判别模型,判断表情文本对在语义上是否能够构成表情会话,进而根据判别结果构建表情问答库,以用于搜索与表情构成会话的目标表情。
附图说明
图1是本发明实施例提供的基于表情问答库的表情搜索系统的一个可选的架构示意图;
图2是本发明实施例提供的基于表情问答库的表情搜索系统的另一个可选的架构示意图
图3本发明实施例提供的区块链网络300中区块链的结构示意图;
图4是本发明实施例提供的区块链网络200的功能架构示意图;
图5是本发明实施例提供的电子设备的架构示意图;
图6是本发明实施例提供的表情问答库的构建方法;
图7是本发明实施例提供的转换器的结构示意图;
图8是本发明实施例提供的编码器的输入的表示示意图;
图9是本发明实施例提供的会话判别模型的示意图;
图10是本发明实施例提供的基于会话判别模型得到的文本问答对示意图;
图11是本发明实施例提供的基于表情问答库的表情搜索方法的流程示意图;
图12A-12B是本发明实施例提供的会话界面示意图;
图13A-13C是本发明实施例提供的表情搜索的界面示意图;
图14是本发明实施例提供的表情搜索结果的界面示意图;
图15是本发明实施例提供的基于表情问答库的表情搜索方法的流程示意图;
图16是本发明实施例提供的基于表情问答库的表情搜索方法的流程示意图;
图17是本发明实施例提供的表情问答库的构建方法的流程示意图;
图18是本发明实施例提供的基于统计的方式得到的文本问答对示意图;
图19是本发明实施例提供的基于表情问答库的表情搜索方法的流程示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)表情,在社交应用活跃之后,形成的一种流行文化,用以表达特定的情感,例如表达用户面部或姿态上所展现的情感;在实际应用中,表情可分为符号表情、静态图片表情、动态图片表情等,比如,表情可以以表达用户各种情绪的人脸为素材,或者以时下流行的明星、动漫、影视截图等为素材,再配上一系列相匹配的文字等。
2)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制;
3)交易(Transaction),等同于计算机术语“事务”,交易包括了需要提交到区块链网络执行的操作,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交易”这一术语,本发明实施例遵循了这一习惯。
4)区块链(Blockchain),是由区块(Block)形成的加密的、链式的交易的存储结构。
5)区块链网络(Blockchain Network),通过共识的方式将新区块纳入区块链的一系列的节点的集合。
6)账本(Ledger),是区块链(也称为账本数据)和与区块链同步的状态数据库的统称。
7)智能合约(Smart Contracts),也称为链码(Chaincode)或应用代码,部署在区块链网络的节点中的程序,节点执行接收的交易中所调用的智能合约,来对状态数据库的键值对数据进行更新或查询的操作。
8)共识(Consensus),是区块链网络中的一个过程,用于在涉及的多个节点之间对区块中的交易达成一致,达成一致的区块将被追加到区块链的尾部,实现共识的机制包括工作量证明(PoW,Proof of Work)、权益证明(PoS,Proof of Stake)、股份授权证明(DPoS,Delegated Proof-of-Stake)、消逝时间量证明 (PoET,Proof of Elapsed Time)等。
根据用户的输入表情返回相应的回复表情,是一个图像翻译问题。相关技术中,图像翻译的技术主要有图像变换(pix2pix)和环形生成性对抗网络(Cy cleGAN,CycleGenerative Adversarial Networks)。
pix2pix是用条件生成对抗网络(cGAN)来学习从输入图像到输出图像的映射。该网络由两个主要部分组成,即生成器和判别器。生成器对输入图像应用一些变换以获得输出图像。判别器将真实图像与生成图像进行比较,并尝试判别这是否是由生成器产生的。其中生成器,使用了U-Net而不是通常的编码器-解码器结构,U-Net通过“跳转连接”将编码器层直接连接到解码器层。判别器的结构为PatchGAN,是一个完全卷积神经网络,输入是图像的“补丁”,并输出补丁真实的概率。
CycleGAN是一种生成性对抗网络(GAN,Generative Adversarial Networ ks),它使用两个生成器和两个鉴别器,其中一个生成器G,并将图像从X域转换为Y域。另一个生成器称为F,将图像从Y转换为X。每个生成器都有一个相应的判别器,它试图将生成器生成的图像与真实图像分开。每个CycleGAN 生成器有三个部分:编码器,转换器和解码器。图像直接输入编码器,编码器由三个卷积层组成。然后将得到的表示传递给转换器。最后由解码器再次扩展,并使用一个输出层以RGB格式生成最终图像。判别器的结构也为PatchGAN。
由于pix2pix和CycleGAN都是有监督学习,获得大量的表情图像配对数据需要耗费大量的人力、物力;且图片翻译技术在生成图片时,存在不稳定、模糊等问题。
本发明实施例提供一种基于表情问答库的表情搜索方法,相对于基于图片翻译技术的方法,不需要大量的表情图像配对数据,技术可行性更高,能够实现准确获取与表情构成会话的目标表情。
参见图1,图1是本发明实施例提供的基于表情问答库的表情搜索系统的一个可选的架构示意图,为支撑一个示例性应用,基于表情问答库的表情搜索系统包括终端400(示例性示出了终端400-1和终端400-2)、表情问答库500。其中,表情问答库500可以存储在终端400中,也可以存储在服务器中。
终端400(如终端400-1),用于接收到针对表情的搜索指令,搜索指令用于指示搜索目标表情,目标表情能够与表情构成表情会话;获取表情中携带的表情文本;基于表情文本,在表情问答库中搜索与表情文本的相似度满足相似度条件的第一表情文本;
表情问答库500,用于返回与表情文本的相似度满足相似度条件的第一表情文本给终端,以及返回第一表情文本构成文本问答对的至少一个第二表情文本给终端;
终端400(如终端400-1),还用于基于第二表情文本,确定并呈现至少一个目标表情。
在实际应用中,当表情问答库500存储在服务器中,服务器既可以为单独配置的支持各种业务的一个服务器,亦可以配置为一个服务器集群;终端可以为智能手机、平板电脑、笔记本电脑等各种类型的用户终端,还可以为可穿戴计算设备、个人数字助理(PDA)、台式计算机、蜂窝电话、媒体播放器、导航设备、游戏机、电视机、或者这些数据处理设备或其他数据处理设备中任意两个或多个的组合。
参见图2,图2是本发明实施例提供的基于表情问答库的表情搜索系统的另一个可选的架构示意图,包括区块链网络200(示例性示出了共识节点210- 1至共识节点210-3)、认证中心300和业务主体600,下面分别进行说明。
区块链网络200的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。以公有链为例,任何业务主体的电子设备例如用户终端和服务器,都可以在不需要授权的情况下接入区块链网络200;以联盟链为例,业务主体在获得授权后其下辖的电子设备(例如终端/服务器)可以接入区块链网络200,此时,成为区块链网络200中的客户端节点。
在一些实施例中,客户端节点可以只作为区块链网络200的观察者,即提供支持业务主体发起交易(例如,用于上链存储数据或查询链上数据)功能,对于区块链网络200的共识节点210的功能,例如排序功能、共识服务和账本功能等,客户端节点可以缺省或者有选择性(例如,取决于业务主体的具体业务需求)地实施。从而,可以将业务主体的数据和业务处理逻辑最大程度迁移到区块链网络200中,通过区块链网络200实现数据和业务处理过程的可信和可追溯。
区块链网络200中的共识节点接收来自业务主体600的客户端节点610提交的交易,执行交易以更新账本或者查询账本,执行交易的各种中间结果或最终结果可以返回业务主体的客户端节点中显示。
例如,客户端节点610可以订阅区块链网络200中感兴趣的事件,例如区块链网络200中特定的组织/通道中发生的交易,由共识节点210推送相应的交易通知到客户端节点610,从而触发客户端节点610中相应的业务逻辑。
下面以业务主体接入区块链网络以实现基于表情问答库的表情搜索为例,说明区块链网络的示例性应用。
参见图2,基于表情问答库的表情搜索涉及的业务主体600,从认证中心3 00进行登记注册获得各自的数字证书,数字证书中包括业务主体的公钥、以及认证中心300对业务主体的公钥和身份信息签署的数字签名,用来与业务主体针对交易的数字签名一起附加到交易中,并被发送到区块链网络,以供区块链网络从交易中取出数字证书和签名,验证消息的可靠性(即是否未经篡改)和发送消息的业务主体的身份信息,区块链网络会根据身份进行验证,例如是否具有发起交易的权限。业务主体下辖的电子设备(例如终端或者服务器)运行的客户端都可以向区块链网络200请求接入而成为客户端节点。
业务主体600的客户端节点610用于搜索与表情构成表情会话的目标表情,例如,待搜索的表情可以是会话消息中的表情;接收到针对表情的搜索指令,搜索指令用于指示搜索目标表情,目标表情能够与所述表情构成表情会话;获取所述表情中携带的表情文本;基于表情文本,在表情问答库中搜索与表情文本的相似度满足相似度条件的第一表情文本;获取与第一表情文本构成文本问答对的至少一个第二表情文本;基于第二表情文本,确定并呈现至少一个目标表情;并将确定的至少一个目标表情发送至区块链网络200。
其中,将至少一个目标表情发送至区块链网络200的操作,可以预先在客户端节点610设置业务逻辑,当搜索到至少一个目标表情时,客户端节点610 将至少一个目标表情自动发送至区块链网络200,也可以由业务主体600的业务人员在客户端节点610中登录,手动打包至少一个目标表情,并将其发送至区块链网络200。在发送时,客户端节点610根据至少一个目标表情生成对应更新操作的交易,在交易中指定了实现更新操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客户端节点610的数字证书、签署的数字签名(例如,使用客户端节点610的数字证书中的私钥,对交易的摘要进行加密得到),并将交易广播到区块链网络200中的共识节点210。
区块链网络200中的共识节点210中接收到交易时,对交易携带的数字证书和数字签名进行验证,验证成功后,根据交易中携带的业务主体600的身份,确认业务主体600是否是具有交易权限,数字签名和权限验证中的任何一个验证判断都将导致交易失败。验证成功后签署节点210自己的数字签名(例如,使用节点210-1的私钥对交易的摘要进行加密得到),并继续在区块链网络200 中广播。
区块链网络200中的共识节点210接收到验证成功的交易后,将交易填充到新的区块中,并进行广播。区块链网络200中的共识节点210广播的新区块时,会对新区块进行共识过程,如果共识成功,则将新区块追加到自身所存储的区块链的尾部,并根据交易的结果更新状态数据库,执行新区块中的交易:对于提交更新至少一个目标表情的交易,在状态数据库中添加包括至少一个目标表情。
值得说明的是,在图2中示例性地示出了将目标表情直接上链的过程,但在另一些实施例中,对于目标表情的数据量较大的情况,客户端节点610可将目标表情的哈希上链,将原始目标表情存储于分布式文件系统或数据库。
作为区块链的示例,参见图3,图3是本发明实施例提供的区块链网络30 0中区块链的结构示意图,每个区块的头部既可以包括区块中所有交易的哈希值,同时也包含前一个区块中所有交易的哈希值,新产生的交易的记录被填充到区块并经过区块链网络中节点的共识后,会被追加到区块链的尾部从而形成链式的增长,区块之间基于哈希值的链式结构保证了区块中交易的防篡改和防伪造。
下面说明本发明实施例提供的区块链网络的示例性的功能架构,参见图4,图4是本发明实施例提供的区块链网络200的功能架构示意图,包括应用层20 1、共识层202、网络层203、数据层204和资源层205,下面分别进行说明。
资源层205封装了实现区块链网路200中的各个节点210的计算资源、存储资源和通信资源。
数据层204封装了实现账本的各种数据结构,包括以文件系统中的文件实现的区块链,键值型的状态数据库和存在性证明(例如区块中交易的哈希树)。
网络层203封装了点对点(P2P,Point to Point)网络协议、数据传播机制和数据验证机制、接入认证机制和业务主体身份管理的功能。
其中,P2P网络协议实现区块链网络200中节点210之间的通信,数据传播机制保证了交易在区块链网络200中的传播,数据验证机制用于基于加密学方法(例如数字证书、数字签名、公/私钥对)实现节点210之间传输数据的可靠性;接入认证机制用于根据实际的业务场景对加入区块链网络200的业务主体的身份进行认证,并在认证通过时赋予业务主体接入区块链网络200的权限;业务主体身份管理用于存储允许接入区块链网络200的业务主体的身份、以及权限(例如能够发起的交易的类型)。
共识层202封装了区块链网络200中的节点210对区块达成一致性的机制 (即共识机制)、交易管理和账本管理的功能。共识机制包括POS、POW和D POS等共识算法,支持共识算法的可插拔。
交易管理用于验证节点210接收到的交易中携带的数字签名,验证业务主体的身份信息,并根据身份信息判断确认其是否具有权限进行交易(从业务主体身份管理读取相关信息);对于获得接入区块链网络200的授权的业务主体而言,均拥有认证中心颁发的数字证书,业务主体利用自己的数字证书中的私钥对提交的交易进行签名,从而声明自己的合法身份。
账本管理用于维护区块链和状态数据库。对于取得共识的区块,追加到区块链的尾部;执行取得共识的区块中的交易,当交易包括更新操作时更新状态数据库中的键值对,当交易包括查询操作时查询状态数据库中的键值对并向业务主体的客户端节点返回查询结果。支持对状态数据库的多种维度的查询操作,包括:根据区块序列号(例如交易的哈希值)查询区块;根据区块哈希值查询区块;根据交易序列号查询区块;根据交易序列号查询交易;根据业务主体的账号(序列号)查询业务主体的账号数据;根据通道名称查询通道中的区块链。
应用层201封装了区块链网络能够实现的各种业务,包括交易的溯源、存证和验证等。
下面继续说明本发明实施例提供的电子设备的示例性应用。本发明实施例提供的电子设备可以用于实施本发明实施例提供的表情问答库的构建方法,也可以用于实施本发明实施例提供的基于表情问答库的表情搜索方法。电子设备可以实施为笔记本电脑,平板电脑,台式计算机,机顶盒,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)等各种类型的终端设备。
下面以实施本发明实施例提供的表情问答库的构建方法为例,参见图5,图5是本发明实施例提供的电子设备的架构示意图,电子设备400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。电子设备400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图4中将各种总线都标为总线系统440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本发明实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置43 1(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本发明实施例提供的表情问答库的构建装置可以采用软件方式实现,图5示出了存储在存储器450中的表情问答库的构建装置455,其可以是程序和插件等形式的软件,包括以下软件模块:第一获取模块4551、组成模块4552、第二获取模块4553、判别模块4554及构建模块4555,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
将在下文中说明各个模块的功能。
在另一些实施例中,本发明实施例提供的表情问答库的构建装置可以采用硬件方式实现,作为示例,本发明实施例提供的表情问答库的构建装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的表情问答库的构建方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,ApplicationSpecific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable LogicDevice)、复杂可编程逻辑器件(C PLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Fi eld-Programmable Gate Array)或其他电子元件。
参见图6,图6是本发明实施例提供的表情问答库的构建方法的流程示意图,本发明实施例提供的表情问答库的构建方法包括:
步骤501:获取包括多个表情会话的表情会话集合,表情会话由连续的至少两个表情构成。
这里,表情会话集合可以通过历史会话中包含表情的会话获取。
步骤502:分别将各表情会话中相邻的两个表情组成表情对。
步骤503:分别获取各表情对中表情所携带的表情文本,得到对应表情对的表情文本对。
这里,可以通过光学字符识别(OCR,Optical Character Recognition)来获取表情对中表情所携带的表情文本,也可以通过人工标注表情对的表情文本,以保证线上应用的准确性。
步骤504:分别将各表情文本对输入会话判别模型,输出对应各表情文本对的判别结果,判别结果用于指示表情文本对构成表情会话的概率。
这里,通过表情对中表情所携带的表情文本,在语义上可能并不能构成会话,通过将表情文本对输入会话判别模型,以确定表情文本对是否能够在语义上构成表情会话。
在一些实施例中,会话判别模型可以通过以下方式训练得到:构建样本集合,所述样本集合包括:标注有是否为表情会话的类别信息的表情文本对;通过会话判别模型,对表情文本对进行处理,得到针对表情文本对的判别结果;确定判别结果与目标判别结果的差异;基于判别结果与所述目标判别结果的差异,更新会话判别模型的模型参数。
在一些实施例中,可以通过以下方式输出对应所述表情文本对的判别结果:
通过会话判别模型,获取表情文本对对应的词向量、段向量及位置向量;根据表情文本对对应的词向量、段向量及位置向量,对表情文本对进行语义特征提取,得到表情文本对的语义特征;根据表情文本对的语义特征,确定表情文本对构成表情会话的概率。
这里,对会话判别模型进行说明。会话判别模型用于判断表情文本对中的两个表情文本是否构成表情会话,其输入为表情文本对,表情文本对中的两个句子末尾都有加[SEP]结尾符,两句拼接开头有[CLS]符,用于区分文本对中的上句和下句。
在实际实施时,会话判别模型包括转换器(Transformer)和softmax分类层。参见图7,图7为本发明实施例提供的转换器的结构示意图,转换器包括数据预处理部分和编码器(Encoder)。通过数据预处理部分,获取表情文本对对应的词向量、段向量及位置向量,并输入编码器,通过编码器对表情文本进行语义特征提取,得到表情文本对的语义特征。通过在第一个起始符号对应的转换器最后一层位置上串接一个softmax分类层,将表情文本对的语义特征输入softmax分类层,得到表情文本对构成表情会话的概率。
图8为本发明实施例提供的编码器的输入的表示示意图。其中,词向量用于表示词本身的信息,段向量用于区分表情文本对中的上句和下句,即如图8 所示的EA与EB分别表示上句和下句中的词;位置向量则是因为转换器模型不能记住句子中词的时序,所以加入表示位置的向量。
在一些实施例中,可以通过数据预处理部分,对输入的表情文本对的进行位置编码,得到表情文本对的位置信息;同时,由于输入的表情文本对中的两个句子末尾都有加[SEP]结尾符,两句拼接开头有[CLS]符。根据输入的表情文本对,可以根据输入的表情文本对得到对应的段向量,如此,能够获取表情文本对对应的词向量、段向量及位置向量。
在一些实施例中,如图7所示,编码器的每一层包含两个子层,一个子层为多头注意力层(multi-head attention layer),另一个子层为简单的全连接层。其中每个子层都加了残差连接(Residual Connection)和归一化(Normalisation)。在实际实施时,通过多头注意力层,获取文本对中每个词的增强语义向量;通过残差连接,将模块的输入与输出直接相加,作为最后的输出,使网络更容易训练;通过归一化,对某一层神经网络节点作0均值1方差的标准化。
图9为本发明实施例提供的会话判别模型的示意图,如图9所示,表情文本对包括第一文本和第二文本对,将第一文本和第二文本一起输入会话判别模型,输出第一文本与第二文本构成表情会话的概率。
在一些实施例中,可以通过以下方式实现对会话判别模型的训练:根据所述预测结果与所述标注结果的差异,确定所述会话判别模型的损失函数的值;当所述损失函数的值达到预设阈值时,基于所述会话判别模型的损失函数确定相应的误差信号;将所述误差信号在所述会话判别模型中反向传播,并在传播的过程中更新所述会话判别模型的各个层的模型参数。
这里,在实际应用中,会话判别模型的损失函数可以为交叉熵损失函数:
其中,为判别结果,y为目标判别结果。
这里对反向传播进行说明,将训练样本数据输入到神经网络模型的输入层,经过隐藏层,最后达到输出层并输出结果,这是神经网络模型的前向传播过程,由于神经网络模型的输出结果与实际结果有误差,则计算输出结果与实际值之间的误差,并将该误差从输出层向隐藏层反向传播,直至传播到输入层,在反向传播的过程中,根据误差调整模型参数的值;不断迭代上述过程,直至收敛。
以损失函数为(1)为例,服务器基于损失函数确定误差信号,误差信号从会话判别模型的输出层反向传播,逐层反向传播误差信号,在误差信号到达每一层时,结合传导的误差信号来求解梯度(也就是Loss函数对该层参数的偏导数),将该层的参数更新对应的梯度值。
步骤505:基于判别结果,构建表情问答库。
这里,针对每个表情文本对所对应的判别结果,判断判别结果所指示的概率是否达到预设概率值,若达到,则将对应的表情文本对作为文本问答对,存储至表情问答库中,以对表情问答库进行构建。
图10为本发明实施例提供的基于会话判别模型得到的文本问答对示意图。如图10所示,基于会话判别模型得到的文本问答对是普遍的对话,文本问答对的质量很高。
在一些实施例中,还可以通过以下方式对表情问答库中的文本问答对进行扩充:提取表情会话集合中所有表情对应的表情文本,获取各表情文本对应的语义向量。同时,获取表情问答库中所有候选表情文本的语义向量。针对表情会话集合中的每个表情文本,根据表情文本的语义向量,和所有候选表情文本的语义向量,在表情问答库中搜索与表情文本的语义相似度达到相似度阈值的第三表情文本,将表情文本、及与第三表情文本构成文本问答对的第四表情文本组成文本问答对,并存储至表情问答库中。
例如,对于表情文本“气氛突然的尴尬”,其与表情问答库中候选表情文本“气氛突然有些尴尬”的语义相似度满足预设阈值,且“气氛突然有些尴尬”与“气氛搞起来”构成文本问答对,那么将“气氛突然的尴尬”与“气氛搞起来”组成文本问答对,并存储至表情问答库中。
本发明实施例通过相似度匹配,对表情问答库中的文本问答对进行扩充,使得表情问答库更加的丰富,进而提高搜索的泛化能力。
在一些实施例中,在构建表情问答库后,方法还包括:接收到针对表情的搜索指令,搜索指令用于指示搜索目标表情,目标表情能够与表情构成表情会话;获取表情中携带的表情文本;基于表情文本,在表情问答库中搜索与表情文本的相似度满足相似度条件的第一表情文本;获取与第一表情文本构成文本问答对的至少一个第二表情文本;基于第二表情文本,确定并呈现至少一个目标表情。
如此,能够基于构建的表情问答库,实现搜索与表情构成表情会话的目标表情。
本发明实施例通过获取包括多个表情会话的表情会话集合,分别将各表情会话中相邻的两个表情组成表情对,分别获取各表情对中表情所携带的表情文本,得到对应表情对的表情文本对;如此,能够通过表情文本对对表情对的含义进行分析,相对于图像翻译的问题,文本分析在实现上更加简单;并且,通过分别将各表情文本对输入会话判别模型,输出对应各表情文本对的判别结果,所述判别结果用于指示表情文本对构成表情会话的概率;基于表情会话的概率,构建表情问答库;如此,能够通过会话判别模型,判断表情文本对在语义上是否能够构成表情会话,进而根据判别结果构建表情问答库,以用于搜索与表情构成会话的目标表情。
参见图11,图11是本发明实施例提供的基于表情问答库的表情搜索方法的流程示意图,本发明实施例提供的基于表情问答库的表情搜索方法包括:
步骤601:终端接收到针对表情的搜索指令,搜索指令用于指示搜索目标表情,目标表情能够与表情构成表情会话。
在实际应用中,终端上设置有社交应用的客户端,如即时通讯客户端(微信/QQ)、微博客户端等,用户可通过客户端对表情进行搜索,以获取与表情构成表情会话的目标表情
在一些实施例中,终端可以通过以下方式接收到针对表情的搜索指令:通过会话窗口,在会话界面中呈现接收到的会话消息中的表情;响应于针对表情的按压操作,呈现对应表情的至少一种控制项;响应于针对至少一种控制项中目标控制项的点击操作,接收到针对表情的搜索指令。
在实际实施时,可以通过通讯客户端接收会话消息,用户根据在会话界面中显示的表情,在终端上执行针对该表情的按压操作,终端接收到用户的按压操作后,呈现针对该表情的多个控制项,如转发、收藏、删除、搜索等。这里,目标控制项为“搜索”,用户通过点击“搜索”对应的图标,触发针对该表情的搜索指令。
图12A-12B为本发明实施例提供的会话界面示意图,参见图12A,在会话界面中呈现接收到的会话消息中的表情“你不累吗”,用户可以针对该表情进行按压操作;参见图12B,终端接收到针对该表情进行按压操作后,呈现“转发”、“收藏”、“搜索”及“更多”的控制项。用户根据呈现的控制项,对“搜索”的控制项进行点击,以触发针对表情“你不累吗”的搜索。
在一些实施例中,终端可以通过以下方式接收到针对表情的搜索指令:终端响应于针对表情搜索功能项的点击操作,呈现包括表情添加入口的表情搜索界面,其中,表情添加入口用于指示输入表情;基于表情添加入口,获取到输入的所述表情;基于输入的表情,接收到针对所述表情的搜索指令。
在实际实施时,通讯客户端设置有搜索功能,用户可以通过对客户端上的表情搜索功能项的点击操作,使得客户端响应于针对表情搜索功能项的点击操作,呈现表情搜索界面。用户可以通过表情搜索界面的表情添加入口,输入想要搜索的表情,基于用户输入的表情,客户端接收针对表情的搜索指令。
例如,图13A-13B为本发明实施例提供的表情搜索的界面示意图,参见图 13A,客户端设置有“搜一搜”功能,客户端接收到用户点击“搜一搜”的操作后,呈现如图13B所示的表情搜索界面。参见图13B,表情搜索界面包括“+”的表情添加入口,用户通过“+”的表情添加入口来输入需要搜索的表情,客户端接收基于用户输入的表情触发的搜索指令。
在一些实施例中,响应于基于表情添加入口的点击操作,呈现供选择的至少一个表情;响应于针对供选择的至少一个表情的选择指令,获取选择指令所指示的表情,将选择指令所指示的表情作为输入的所述表情。
在实际实施时,客户端在接收到用户点击表情添加入口的操作后,在表情搜索界面的呈现用户收藏的多个表情,用户可以通过点击收藏的多个表情中的一个表情,触发选择指令,客户端根据选择指令所指示的表情,确定输入的表情。
例如,图13C为本发明实施例提供的表情搜索的界面示意图,参见图13B 及图13C,当接收到针对如“+”的点击操作后,在搜索界面下方呈现用户收藏的多个表情,用户通过对需要搜索的表情进行点击操作,触发选择指令,终端根据选择指令所指示的表情,即“你不累吗”,确定输入的表情为“你不累吗”。
步骤602:获取表情中携带的表情文本。
这里,表情通常是有表情图片配上表情文本组成的,其中,表情文本与表情图片所展现的含义是相匹配的。获取表情中携带的表情文本,能够根据表情文本的语义,得到表情所展现的含义。
在一些实施例中,终端可以通过以下方式获取表情中携带的表情文本:对表情中的表情文本行进行定位,得到表情文本行所处的位置;基于表情文本行所处的位置进行文本识别,得到表情中携带的表情文本。
在实际实施时,终端会先确定表情中表情文本所处的位置,然后对表情进行裁剪,得到仅包含表情文本的矩形区域,再对表情文本进行识别,以得到表情中携带的表情文本。如此,能够减少图像中的无用信息,使识别更加地准确。
在一些实施例中,终端可以通过光学字符识别(OCR,Optical CharacterRecognition)来获取表情中携带的表情文本。这里,光学字符识别,是指终端通过检测暗、亮的模式确定图像中字符的形状,然后用字符识别方法将形状翻译成计算机文字的过程。
步骤603:基于表情文本,在表情问答库中搜索与表情文本的相似度满足相似度条件的第一表情文本。
这里,表情问答库由文本问答对构成,文本问答对为能够构成会话的一对表情文本,可以记作(post,response),其中,post为候选表情文本,response 为相对于post具有回复意义的表情文本。例如,post可以为“你不累吗”,那么 response可以为“可累了”。在实际实施时,表情问答库可以存储在终端上,也可以存储在服务器中。
在一些实施例中,相似度可以为语义的相似度,终端可以通过以下方式实现在表情问答库中搜索与表情文本的相似度满足相似度条件的第一表情文本:获取表情文本的第一语义特征和表情问答库中各候选表情文本的第二语义特征;基于第一语义特征及第二语义特征,分别确定表情文本与各候选表情文本的相似度;确定与表情文本的相似度大小达到相似度阈值的候选表情文本,将所确定的候选表情文本作为第一表情文本。
这里,语义特征可以用语义向量表示,在实际实施时,终端可以获取表情文本的第一语义特征所对应的第一向量和表情问答库中各候选表情文本的第二语义特征所对应的第二向量,分别计算表情文本的第一向量与各候选表情文本的第二向量的夹角余弦值,得到表情文本与各候选表情文本的相似度。
在一些实施例中,可以通过预训练的转换器的双向编码器表示(BERT,Bidirectional Encoder Representations from Transformers)模型获取表情文本的第一语义特征所对应的第一向量和表情问答库中各候选表情文本的第二语义特征所对应的第二向量。将表情文本和表情问答库中各候选表情文本输入预训练得到的BERT模型中,输出表情文本的第一语义特征所对应的第一向量、以及表情问答库中各候选表情文本的第二语义特征所对应的第二向量。
在实际实施时,可以使用两个无监督预测任务对BERT模型进行预训练。在第一个无监督预测任务中,随机遮蔽输入的部分词,然后对被遮蔽的词进行预测;在第二个无监督预测任务中,预训练一个二值化下一句预测任务,即选择句子A和B作为预训练样本:B有50%的可能是A的下一句,也有50%的可能是来自语料库的随机句子。
在一些实施例中,终端可以通过以下方式实现在表情问答库中搜索与表情文本的相似度满足相似度条件的第一表情文本:分别将表情文本与表情问答库中的多个候选表情文本进行匹配,得到表情文本与各候选表情文本的公共字符串;获取公共字符串中的字符数量;确定与表情文本的公共字符串中的字符数量达到预设数量阈值的候选表情文本,将所述确定的候选表情文本作为第一表情文本。
这里,公共字符串由表情文本与候选表情文本共有的字符组成,例如,表情文本为“气氛突然的尴尬”,候选表情文本为“气氛突然有些尴尬”,那么公共字符串为“气氛突然”、“尴尬”,那么,公共字符串中的字符数量为6。
在一些实施例中,终端可以通过以下方式现在表情问答库中搜索与表情文本的相似度满足相似度条件的第一表情文本:针对表情问答库中的每个候选表情文本,获取表情文本和候选表情文本所有的词,计算表情文本中各个词出现的次数,以及候选表情文本中各个词出现的次数,分别用向量进行表示,计算两个向量的夹角余弦值,将夹角余弦值作为相似度;确定与表情文本的相似度大小达到相似度阈值的候选表情文本,将所确定的候选表情文本作为第一表情文本。
例如,表情文本为“气氛突然的尴尬”,候选表情文本为“气氛突然有些尴尬”,其中,表情文本和候选表情文本中的词包括:“气氛”、“突然”“有些”“的”“尴尬”,那么,表情文本可以表示为(1,1,0,1,1),候选表情文本可以表示为(1, 1,1,0,1),计算(1,1,0,1,1)与(1,1,1,0,1)的夹角余弦值,即相似度。
在一些实施例中,可以通过以下方式构建表情问答库:获取表情会话集合,其中,表情会话集合中的每个表情会话由连续的至少两个表情构成;分别将表情会话集合中各表情会话中相邻的两个表情组成表情对;分别获取各表情对中表情所携带的表情文本,得到对应表情对的表情文本对;基于得到的表情文本对,构建表情问答库。
在一些实施例中,可以基于统计的方式构建表情问答库:获取表情文本对所对应的表情对在表情会话集合中出现的次数,确定次数达到预设次数的表情文本对为文本问答对,并将所述文本问答对存储至表情问答库。
这里,表情文本对所对应的表情对在表情会话集合中出现的次数越多,可以认为表情文本对越有可能构成语义上的会话关系。
在一些实施例中,可以基于会话判别模型构建问答库:将表情文本对输入会话判别模型,得到表情文本对构成会话的概率值,确定概率值达到预设概率值的表情文本对为文本问答对,并存储文本问答对至表情问答库。
在一些实施例中,还可以通过以下方式对表情问答库中的文本问答对进行扩充:提取表情会话集合中所有表情对应的表情文本,获取各表情文本对应的语义向量。同时,获取所有候选表情文本的语义向量。针对表情会话集合中的每个表情文本,根据表情文本的语义向量,和所有候选表情文本的语义向量,在表情问答库中搜索与表情文本的语义相似度达到相似度阈值的第三表情文本,将表情文本、及与第三表情文本构成文本问答对的第四表情文本组成文本问答对,并存储至表情问答库中。
例如,对于表情文本“气氛突然的尴尬”,其与表情问答库中候选表情文本“气氛突然有些尴尬”的语义相似度满足预设阈值,且“气氛突然有些尴尬”与“气氛搞起来”构成文本问答对,那么将“气氛突然的尴尬”与“气氛搞起来”组成文本问答对,并存储至表情问答库中。
本发明实施例通过相似度匹配,对表情问答库中的文本问答对进行扩充,使得表情问答库更加的丰富,进而提高搜索的泛化能力。
步骤604:获取与第一表情文本构成文本问答对的至少一个第二表情文本。
这里,根据第一表情文本在表情问答库中查找对应的文本问答对,然后根据第一表情文本对应的问答对,确定至少一个第二表情文本。其中,第一表情文本可以为多个。
步骤605:基于第二表情文本,确定并呈现至少一个目标表情。
这里,当表情文本与第一表情文本为完全匹配时,即表情文本与第一表情文本的相似度为100%时,确定第二表情文本为目标表情文本,确定并呈现目标表情文本所对应的目标表情。
需要说明的是,表情文本可以对应多个目标表情文本,每个目标表情文本可以对应多个目标表情。例如,图14为本发明实施例提供的表情搜索结果的界面示意图,如图14所示,对“你不累吗”进行搜索时,得到目标表情文本为“无所谓”、“不仅不会还美滋滋的”、“可累了”,其中,目标表情文本“可累了”对应三个不同的目标表情。
这里,当表情文本与第一表情文本不是完全匹配时,在一些实施例中,终端将表情文本与第二表情文本输入会话判别模型,得到表情文本与第二表情文本构成会话的概率值;确定与表情文本构成会话的概率值满足预设概率条件的第二表情文本为目标表情文本;确定并呈现目标表情文本所对应的目标表情。
这里,通过将表情文本与第二表情文本输入会话判别模型,得到表情文本与第二表情文本构成会话的概率值,以对第二表情文本进行筛选,从第二表情文本中确定目标表情文本,进而根据目标表情文本确定对应的目标表情。在实际实施时,可以根据表情文本与第二表情文本构成会话的概率值,对第二表情文本进行优先级排序,以根据优先级序列,确定多个目标表情文本;也可以获取概率值达到预设概率阈值的第二表情文本为目标表情文本。
在一些实施例中,可以根据表情文本与第一表情文本的语义相似度、表情文本与第一表情文本的公共字符串、表情文本与第一表情文本的向量空间相似度、表情文本与第二表情文本构成会话的概率值、第一表情文本与第二表情文本构成会话的概率值进行综合排序。
在实际实施时,表情文本与第一表情文本的语义相似度为qp_sm、表情文本与第一表情文本的公共字符串为lc_score、表情文本与第一表情文本的向量空间相似度为vec_score、表情文本与第二表情文本构成会话的概率值为qp_sm、第一表情文本与第二表情文本构成会话的概率值为pr_bert,根据score=w1* qr_mt+w2*pr_bert+w3*qp_sm+w4*lc_score+w5*vec_score,计算综合分数,根据综合分数对第二表情文本进行优先级排序,以根据优先级序列,确定多个目标表情文本。
在一些实施中,在步骤605之后,还包括:分别对至少一个目标表情进行哈希变换,得到各目标表情对应的摘要信息;存储各目标表情对应的摘要信息至区块链网络。
本发明实施例可结合区块链技术,在得到目标表情后,分别对至少一个目标表情进行哈希变换,得到各目标表情对应的摘要信息,将各目标表情对应的摘要信息发送至区块链网络。区块链网络的节点对发送的主体进行相关验证,包括对数字证书、数字签名以及写入权限的验证,并在验证成功的基础上,将各目标表情对应的摘要信息填充至新区块中,并将新区块广播至区块链网络的其他节点,在区块链网络的节点对新区块共识一致时,各节点将新区块追加至自身保存的区块链的尾部。通过上述方式,当有用户再对表情进行搜索时,能够直接从区块链网络获取相应的目标表情,提高了搜索效率。
通过本发明实施例,一方面,通过获取表情中携带的表情文本,能够获取到表情的含义,相对于图像识别技术,通过表情文本获取表情的含义更加地简单准确;另一方面,通过在表情问答库中搜索与表情文本相似度满足相似度条件的第一表情文本,再获取与第一表情构成文本问答对的至少一个第二表情文本,进而根据至少一个第二表情文本,确定并呈现目标表情,如此,相对于通过图片翻译技术获取具有回复意义的目标表情,通过文本问答对确定具有回复意义的文本,再通过文本确定具有回复意义的目标表情,技术可行性更高,获取到的目标表情更加准确。
接下来以通过会话界面进行表情搜索为应用场景,图15为本发明实施例提供的基于表情问答库的表情搜索方法的流程示意图,下面结合图12A-12B及图 15对本发明实施例提供的基于表情问答库的表情搜索方法进行说明,本发明实施例提供的基于表情问答库的表情搜索方法包括:
步骤701:客户端接收包括表情的会话消息。
这里,在通过即时通讯客户端进行会话时,通讯客户端可以接收包括表情的会话消息。
步骤702:通过会话窗口,在会话界面中呈现会话消息中的表情。
例如,如图12A所示,在会话界面中呈现接收到的会话消息中的表情“你不累吗”。
步骤703:接收到针对表情的按压操作,呈现控制项:“转发”、“收藏”、“搜索”及“更多”。
例如,如图12A所示,用户可以针对表情“你不累吗”进行按压操作,如图12B所示,终端接收到针对该表情进行按压操作后,呈现“转发”、“收藏”、“搜索”及“更多”的控制项。
步骤704:响应于针对“搜索”控制项的点击操作,接收到针对表情的搜索指令。
例如,如图12B所示,用户可以根据呈现的控制项,对“搜索”的控制项进行点击,以触发针对表情“你不累吗”的搜索。
步骤705:基于针对表情的搜索指令,对表情中的表情文本行进行定位,得到表情文本行所处的位置。
步骤706:基于表情文本行所处的位置,通过OCR技术进行文本识别,得到表情中携带的表情文本。
步骤707:分别将表情文本和表情问答库中各候选表情文本输入预训练得到的BERT模型,输出表情文本的第一向量和表情问答库中各候选表情文本的第二向量。
步骤708:分别计算表情文本的第一向量与各候选表情文本的第二向量的夹角余弦值,得到表情文本与各候选表情文本的相似度。
步骤709:确定与表情文本的相似度大小达到80%的候选表情文本,将所确定的候选表情文本作为第一表情文本。
步骤710:获取与第一表情文本构成文本问答对的多个第二表情文本。
步骤711:将第二表情文本确定为目标表情文本。
步骤712:基于目标表情文本,获取对应目标表情文本的目标表情。
步骤713:在搜索结果界面呈现多个目标表情。
接下来以通过搜索功能项进行表情搜索为应用场景,图16为本发明实施例提供的基于表情问答库的表情搜索方法的流程示意图,下面结合13A-13C及图 16对本发明实施例提供的基于表情问答库的表情搜索方法进行说明,本发明实施例提供的基于表情问答库的表情搜索方法包括:
步骤801:响应于针对表情搜索功能项的点击操作,呈现包括表情添加入口的表情搜索界面。
这里,所述表情添加入口用于指示输入表情。如图13A-13B所示,客户端设置有“搜一搜”功能,客户端接收到用户点击“搜一搜”的操作后,呈现进入表情搜索界面,表情搜索界面包括“+”的表情添加入口。
步骤802:响应于基于表情添加入口的点击操作,呈现供选择的至少一个表情。
这里,用户通过点击“+”进行表情输入,客户端接收到基于表情添加入口的点击操作,如图13C所示,客户端在搜索界面下方呈现用户收藏的多个表情。
步骤803:响应于针对供选择的至少一个表情的选择指令,获取选择指令所指示的表情,将选择指令所指示的表情作为输入的所述表情。
例如,如图13C所示,用户通过点击操作,触发针对表情的选择指令。
步骤804:基于输入的表情,接收到针对表情的搜索指令。
步骤805:基于针对表情的搜索指令,对表情中的表情文本行进行定位,得到表情文本行所处的位置。
步骤806:基于表情文本行,通过OCR技术进行文本识别,得到表情中携带的表情文本。
步骤807:分别将表情文本与表情问答库中的多个候选表情文本进行匹配,得到表情文本与各候选表情文本的公共字符串。
例如,表情文本为“气氛突然的尴尬”,候选表情文本为“气氛突然有些尴尬”,那么公共字符串为“气氛突然”、“尴尬”,那么,公共字符串中的字符数量为6。
步骤808:获取公共字符串中的字符数量。
步骤809:确定与表情文本的公共字符串中的字符数量达到5的候选表情文本,将确定的候选表情文本作为第一表情文本。
步骤810:获取与第一表情文本构成文本问答对的多个第二表情文本。
步骤811:将表情文本与第二表情文本输入会话判别模型,得到表情文本与所述第二表情文本构成会话的概率值。
步骤812:确定与表情文本构成会话的概率值达到80%的第二表情文本为目标表情文本。
步骤813:基于目标表情文本,获取对应目标表情文本的目标表情。
步骤814:在搜索结果界面呈现多个目标表情。
继续对本发明实施例提供的表情问答库的构建方法及基于表情问答库的表情搜索方法进行说明。
下面先对表情问答库的构建方法进行说明。图17为本发明实施例提供的表情问答库的构建方法的流程示意图,如图17所示,本发明实施例问答库的构建包括三个部分,分别为基于统计的方式构建表情问答库、基于会话判别模型构建问答库以及对表情问答库中的文本问答对的扩充。
首先,获取表情会话集合,表情会话集合中每个表情会话由连续的至少两个表情构成,分别将表情会话集合中各表情会话中相邻的两个表情组成表情对,再分别获取各表情对中表情所携带的表情文本,得到对应表情对的表情文本对,并将获取的表情文本对记作(post,response)。
需要说明的是,为了保证线上应用的准确性,对应表情对的表情文本对需要经过人工的标注。
然后,通过基于统计的方式构建表情问答库。在实际实施时,分别获取每个表情文本对在表情会话集合对应的表情文本中出现的次数,将次数记作pv。这里,pv越大,则(post,response)越有可能构成语义上的对话关系。因此设定一个次数阈值K,pv((post,response))>K,则将(post,response)作为文本问答对存储至表情问答库中。
参见图18,图18为本发明实施例提供的基于统计的方式得到的文本问答对示意图,通过统计方式得到的文本问答对数量较少,普遍为情侣间的日常对话。即统计方式只利用到了用户的行为信息,而未考虑到文本的语义信息。
接着,通过基于会话判别模型构建问答库,以利用文本特征判断表情文本对是否构成会话。即将表情文本对输入会话判别模型,得到表情文本对构成会话的概率值,将概率值达到预设概率值的表情文本对作为文本问答对,并存处至表情问答库。如图10所示,基于会话判别模型得到的文本问答对是更普遍的对话,文本问答对的质量更高。
在实际实施时,基于预训练的BERT模型构建会话判别模型,以外部公开的对话数据、以及随机采样的文本数据作为样本数据集,对会话判别模型进行训练。其中,外部对话数据可以为微博评论中挖掘的对话数据,将外部对话数据作为正样本,将随机采样的数据作为负样本。
最后,为了进一步扩大文本问答对的数量,利用向量检索的方法对文本问答对进行扩充。
在实际实施时,对所有表情文本ocrText输入预训练得到的BERT模型,输出ocrText对应的语义向量,维度为768维;对利用会话判别模型得到的文本问答对建立向量索引,向量为post的语义向量;所有的表情文本在该向量索引上进行检索,获取相似度阈值大于0.99的post所对应的response,将ocrText与p ost组成文本问答对。
接着对基于表情问答库进行表情搜索进行说明。图19为本发明实施例提供的基于表情问答库的表情搜索方法的流程示意图。参见图19,在对表情进行检索时,分为精确命中和非精确命中两种。
用户输入表情,经过ORC识别,得到表情文本query。将query与表情问答库中文本问答对的post进行匹配,若表情问答库中存在query==post,则直接召回相应的response。若表情问答库中不存在query==post,则表示未精确命中,那么通过向量检索,对召回的结果进行排序。
对于为精确命中的情况,分为三个部分:为表情问答库建立向量索引,对 query提取向量特征并检索,对返回的结果进行排序。
首先,将通过预训练得到的BERT模型得到表情问答库中文本问答对(post,response)中的post的语义向量,语义向量的维度可以为768维;然后,利用F aiss为表情问答库构建索引,将query输入BERT模型,得到对应query的语义向量,根据query的语义向量进行向量检索,并对检索出的post-response进行排序。这里,Faiss是Facebook AI团队开源的针对聚类和相似性搜索库,为稠密向量提供高效相似度搜索和聚类。
在实际实施时,排序主要利用的是语义相关性特征和字面相关性特征。
其中,语义相关性,包括:query-response的语义相关性,在网页搜索中利用统计机器翻译计算计算查询query和召回response的语义相关性qr_mt;post -response构成会话的概率值pr_bert,通过会话判别模型得到;query-post的语义相似度:通过faiss检索返回语义相似度qp_sm;
字面相关性,包括:query-post的最长公共字符串lc_score;query-post的向量空间相似度,对于query和post,将它们转换为二进制字向量,其中每个元表示相应句子中是否出现对应的词,然后应用余弦函数计算query和post的相似度vec_score。
根据上述参数进行综合打分,即score=w1*qr_mt+w2*pr_bert+w3 *qp_sm+w4*lc_score+w5*vec_score。若得分大于预设的分数阈值,则将该 response对应的表情返回给用户。
下面继续说明本发明实施例提供的表情问答库的构建装置455的实施为软件模块的示例性结构,在一些实施例中,如图5所示,存储在存储器440的表情问答库的构建装置455中的软件模块可以包括:
第一获取模块4551,用于获取包括多个表情会话的表情会话集合,所述表情会话由连续的至少两个表情构成;
组成模块4552,用于分别将各所述表情会话中相邻的两个表情组成表情对;
第二获取模块4553,用于分别获取各所述表情对中表情所携带的表情文本,得到对应所述表情对的表情文本对;
判别模块4554,用于分别将各所述表情文本对输入会话判别模型,输出对应各所述表情文本对的判别结果,所述判别结果用于指示所述表情文本对构成表情会话的概率;
构建模块4555,用于基于所述判别结果,构建所述表情问答库。
本发明实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本发明实施例提供的表情问答库的构建方法,例如,如图6示出的方法。
在一些实施例中,存储介质可以是FRAM、ROM、PROM、EPROM、EE PROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(H TML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
Claims (10)
1.一种表情问答库的构建方法,其特征在于,所述方法包括:
获取包括多个表情会话的表情会话集合,所述表情会话由连续的至少两个表情构成;
分别将各所述表情会话中相邻的两个表情组成表情对;
分别获取各所述表情对中表情所携带的表情文本,得到对应所述表情对的表情文本对;
分别将各所述表情文本对输入会话判别模型,输出对应各所述表情文本对的判别结果,所述判别结果用于指示所述表情文本对构成表情会话的概率;
基于所述判别结果,构建所述表情问答库。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
构建样本集合,所述样本集合包括:标注有是否为表情会话的类别信息的表情文本对;
通过所述会话判别模型,对所述表情文本对进行处理,得到对应所述表情文本对的判别结果;
确定所述判别结果与目标判别结果的差异;
基于所述判别结果与所述目标判别结果的差异,更新所述会话判别模型的模型参数。
3.如权利要求2所述的方法,其特征在于,所述通过所述会话判别模型,对所述表情文本对进行处理,得到对应所述表情文本对的判别结果,包括:
通过会话判别模型,获取所述表情文本对对应的词向量、段向量及位置向量;
根据所述表情文本对对应的词向量、段向量及位置向量,对所述表情文本对进行语义特征提取,得到所述表情文本对的语义特征;
根据所述表情文本对的语义特征,确定所述表情文本对构成表情会话的概率。
4.如权利要求2所述的方法,其特征在于,所述基于所述判别结果与所述目标判别结果的差异,更新所述会话判别模型的模型参数,包括:
基于所述判别结果与所述目标判别结果的差异,确定所述会话判别模型的损失函数的值;
当所述损失函数的值达到预设阈值时,基于所述会话判别模型的损失函数确定相应的误差信号;
将所述误差信号在所述会话判别模型中反向传播,并在传播的过程中更新所述会话判别模型的各个层的模型参数。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
接收到针对表情的搜索指令,所述搜索指令用于指示搜索目标表情,所述目标表情能够与所述表情构成表情会话;
获取所述表情中携带的表情文本;
基于所述表情文本,在所述表情问答库中搜索与所述表情文本的相似度满足相似度条件的第一表情文本;
获取与所述第一表情文本构成文本问答对的至少一个第二表情文本;
基于所述第二表情文本,确定并呈现至少一个目标表情。
6.一种基于表情问答库的表情搜索方法,其特征在于,所述方法包括:
接收到针对表情的搜索指令,所述搜索指令用于指示搜索目标表情,所述目标表情能够与所述表情构成表情会话;
获取所述表情中携带的表情文本;
基于所述表情文本,在表情问答库中搜索与所述表情文本的相似度满足相似度条件的第一表情文本;
获取与所述第一表情文本构成文本问答对的至少一个第二表情文本;
基于所述第二表情文本,确定并呈现至少一个目标表情。
7.如权利要求6所述的方法,其特征在于,所述接收到针对表情的搜索指令,包括:
通过会话窗口,在会话界面中呈现接收到的会话消息中的所述表情;
响应于针对所述表情的按压操作,呈现对应所述表情的至少一种控制项;
响应于针对所述至少一种控制项中目标控制项的点击操作,接收到针对所述表情的搜索指令。
8.如权利要求6至7所述的方法,其特征在于,所述方法还包括:
分别对至少一个所述目标表情进行哈希变换,得到各所述目标表情对应的摘要信息;
存储各所述目标表情对应的摘要信息至区块链网络。
9.一种表情问答库的构建装置,其特征在于,所述装置包括:
第一获取模块,用于获取包括多个表情会话的表情会话集合,所述表情会话由连续的至少两个表情构成;
组成模块,用于分别将各所述表情会话中相邻的两个表情组成表情对;
第二获取模块,用于分别获取各所述表情对中表情所携带的表情文本,得到对应所述表情对的表情文本对;
判别模块,用于分别将各所述表情文本对输入会话判别模型,输出对应各所述表情文本对的判别结果,所述判别结果用于指示所述表情文本对构成表情会话的概率;
构建模块,用于基于所述判别结果,构建所述表情问答库。
10.一种存储介质,其特征在于,存储有可执行指令,用于引起处理器执行时,实现权利要求1至5任一项所述的表情问答库的构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910901756.6A CN110597963B (zh) | 2019-09-23 | 2019-09-23 | 表情问答库的构建方法、表情搜索方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910901756.6A CN110597963B (zh) | 2019-09-23 | 2019-09-23 | 表情问答库的构建方法、表情搜索方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110597963A true CN110597963A (zh) | 2019-12-20 |
CN110597963B CN110597963B (zh) | 2024-02-06 |
Family
ID=68862486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910901756.6A Active CN110597963B (zh) | 2019-09-23 | 2019-09-23 | 表情问答库的构建方法、表情搜索方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110597963B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111339295A (zh) * | 2020-02-19 | 2020-06-26 | 北京字节跳动网络技术有限公司 | 用于展示信息的方法、装置、电子设备和计算机可读介质 |
CN111506717A (zh) * | 2020-04-15 | 2020-08-07 | 网易(杭州)网络有限公司 | 问题答复方法、装置、设备及存储介质 |
CN111930854A (zh) * | 2020-10-10 | 2020-11-13 | 北京福佑多多信息技术有限公司 | 意图预测的方法及装置 |
CN112131359A (zh) * | 2020-09-04 | 2020-12-25 | 交通银行股份有限公司太平洋信用卡中心 | 一种基于图形化编排智能策略的意图识别方法及电子设备 |
CN112185104A (zh) * | 2020-08-22 | 2021-01-05 | 南京理工大学 | 一种基于对抗自编码器的交通大数据修复方法 |
CN112215017A (zh) * | 2020-10-22 | 2021-01-12 | 内蒙古工业大学 | 一种基于伪平行语料库构造的蒙汉机器翻译方法 |
CN113722477A (zh) * | 2021-08-09 | 2021-11-30 | 北京智慧星光信息技术有限公司 | 基于多任务学习的网民情绪识别方法、系统及电子设备 |
TWI796864B (zh) * | 2021-12-06 | 2023-03-21 | 明基電通股份有限公司 | 偵測使用者學習熟練度的方法以及偵測使用者學習熟練度的系統 |
CN117076702A (zh) * | 2023-09-14 | 2023-11-17 | 荣耀终端有限公司 | 图像查找方法及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103426005A (zh) * | 2013-08-06 | 2013-12-04 | 山东大学 | 微表情自动识别的建库视频自动切段方法 |
US20170185580A1 (en) * | 2015-12-23 | 2017-06-29 | Beijing Xinmei Hutong Technology Co.,Ltd, | Emoji input method and device thereof |
CN108733651A (zh) * | 2018-05-17 | 2018-11-02 | 新华网股份有限公司 | 表情符号预测方法及模型构建方法、装置、终端 |
CN109388697A (zh) * | 2018-10-10 | 2019-02-26 | 成都小多科技有限公司 | 处理问答语料的方法、装置及电子终端 |
CN109842546A (zh) * | 2018-12-25 | 2019-06-04 | 阿里巴巴集团控股有限公司 | 会话表情处理方法以及装置 |
CN109948454A (zh) * | 2019-02-25 | 2019-06-28 | 深圳大学 | 表情数据库的增强方法、训练方法、计算设备及存储介质 |
-
2019
- 2019-09-23 CN CN201910901756.6A patent/CN110597963B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103426005A (zh) * | 2013-08-06 | 2013-12-04 | 山东大学 | 微表情自动识别的建库视频自动切段方法 |
US20170185580A1 (en) * | 2015-12-23 | 2017-06-29 | Beijing Xinmei Hutong Technology Co.,Ltd, | Emoji input method and device thereof |
CN108733651A (zh) * | 2018-05-17 | 2018-11-02 | 新华网股份有限公司 | 表情符号预测方法及模型构建方法、装置、终端 |
CN109388697A (zh) * | 2018-10-10 | 2019-02-26 | 成都小多科技有限公司 | 处理问答语料的方法、装置及电子终端 |
CN109842546A (zh) * | 2018-12-25 | 2019-06-04 | 阿里巴巴集团控股有限公司 | 会话表情处理方法以及装置 |
CN109948454A (zh) * | 2019-02-25 | 2019-06-28 | 深圳大学 | 表情数据库的增强方法、训练方法、计算设备及存储介质 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111339295A (zh) * | 2020-02-19 | 2020-06-26 | 北京字节跳动网络技术有限公司 | 用于展示信息的方法、装置、电子设备和计算机可读介质 |
CN111506717B (zh) * | 2020-04-15 | 2024-02-09 | 网易(杭州)网络有限公司 | 问题答复方法、装置、设备及存储介质 |
CN111506717A (zh) * | 2020-04-15 | 2020-08-07 | 网易(杭州)网络有限公司 | 问题答复方法、装置、设备及存储介质 |
CN112185104A (zh) * | 2020-08-22 | 2021-01-05 | 南京理工大学 | 一种基于对抗自编码器的交通大数据修复方法 |
CN112185104B (zh) * | 2020-08-22 | 2021-12-10 | 南京理工大学 | 一种基于对抗自编码器的交通大数据修复方法 |
CN112131359A (zh) * | 2020-09-04 | 2020-12-25 | 交通银行股份有限公司太平洋信用卡中心 | 一种基于图形化编排智能策略的意图识别方法及电子设备 |
CN111930854A (zh) * | 2020-10-10 | 2020-11-13 | 北京福佑多多信息技术有限公司 | 意图预测的方法及装置 |
CN112215017A (zh) * | 2020-10-22 | 2021-01-12 | 内蒙古工业大学 | 一种基于伪平行语料库构造的蒙汉机器翻译方法 |
CN112215017B (zh) * | 2020-10-22 | 2022-04-29 | 内蒙古工业大学 | 一种基于伪平行语料库构造的蒙汉机器翻译方法 |
CN113722477A (zh) * | 2021-08-09 | 2021-11-30 | 北京智慧星光信息技术有限公司 | 基于多任务学习的网民情绪识别方法、系统及电子设备 |
CN113722477B (zh) * | 2021-08-09 | 2023-09-19 | 北京智慧星光信息技术有限公司 | 基于多任务学习的网民情绪识别方法、系统及电子设备 |
TWI796864B (zh) * | 2021-12-06 | 2023-03-21 | 明基電通股份有限公司 | 偵測使用者學習熟練度的方法以及偵測使用者學習熟練度的系統 |
CN117076702A (zh) * | 2023-09-14 | 2023-11-17 | 荣耀终端有限公司 | 图像查找方法及电子设备 |
CN117076702B (zh) * | 2023-09-14 | 2023-12-15 | 荣耀终端有限公司 | 图像查找方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110597963B (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110569377B (zh) | 一种媒体文件的处理方法和装置 | |
CN110597963A (zh) | 表情问答库的构建方法、表情搜索方法、装置及存储介质 | |
Shakhovska et al. | Development of the Speech-to-Text Chatbot Interface Based on Google API. | |
CN111552799B (zh) | 信息处理方法、装置、电子设备及存储介质 | |
US20190034404A1 (en) | Cognitive mediator for generating blockchain smart contracts | |
US20220129556A1 (en) | Systems and Methods for Implementing Smart Assistant Systems | |
CN111602147A (zh) | 基于非局部神经网络的机器学习模型 | |
CN111310436B (zh) | 基于人工智能的文本处理方法、装置及电子设备 | |
CN111026858B (zh) | 基于项目推荐模型的项目信息处理方法及装置 | |
CN111026319B (zh) | 一种智能文本处理方法、装置、电子设备及存储介质 | |
CN111552797B (zh) | 名称预测模型的训练方法、装置、电子设备及存储介质 | |
JP6776310B2 (ja) | ユーザ−入力コンテンツと連関するリアルタイムフィードバック情報提供方法およびシステム | |
US11836452B2 (en) | Multi-turn dialogue response generation using asymmetric adversarial machine classifiers | |
CN111506794A (zh) | 一种基于机器学习的谣言管理方法和装置 | |
US20230237255A1 (en) | Form generation method, apparatus, and device, and medium | |
EP3557500A1 (en) | Building customized user profiles based on conversational data | |
CN111026320A (zh) | 多模态智能文本处理方法、装置、电子设备及存储介质 | |
CN111552798A (zh) | 基于名称预测模型的名称信息处理方法、装置、电子设备 | |
Verma et al. | Web application implementation with machine learning | |
CN113609866A (zh) | 文本标记方法、装置、设备及存储介质 | |
CN113573128A (zh) | 一种音频处理方法、装置、终端以及存储介质 | |
US11558471B1 (en) | Multimedia content differentiation | |
CN108509059B (zh) | 一种信息处理方法、电子设备和计算机存储介质 | |
CN113033209B (zh) | 文本关系抽取方法、装置、存储介质及计算机设备 | |
CN111552890B (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 |