CN112287076A - 一种基于用户聊天记录的标签挖掘方法及设备 - Google Patents

一种基于用户聊天记录的标签挖掘方法及设备 Download PDF

Info

Publication number
CN112287076A
CN112287076A CN202011556453.4A CN202011556453A CN112287076A CN 112287076 A CN112287076 A CN 112287076A CN 202011556453 A CN202011556453 A CN 202011556453A CN 112287076 A CN112287076 A CN 112287076A
Authority
CN
China
Prior art keywords
user
word
label
tag
chat
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
Application number
CN202011556453.4A
Other languages
English (en)
Other versions
CN112287076B (zh
Inventor
王清琛
张蹲
孟凡华
茆传羽
杜振东
程云
张洪磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Yunwen Network Technology Co ltd
Original Assignee
Nanjing Yunwen Network Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Yunwen Network Technology Co ltd filed Critical Nanjing Yunwen Network Technology Co ltd
Priority to CN202011556453.4A priority Critical patent/CN112287076B/zh
Publication of CN112287076A publication Critical patent/CN112287076A/zh
Application granted granted Critical
Publication of CN112287076B publication Critical patent/CN112287076B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3335Syntactic pre-processing, e.g. stopword elimination, stemming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于用户聊天记录的标签挖掘方法及设备。该方法包括对通过语音助手与用户闲聊生成的聊天数据进行预处理,基于标签抽取模型和统计方法从预处理后的聊天数据中抽取用户标签,基于关系发现模型挖掘相似度在设定阈值以上的所有标签。本发明借助神经网络的机器学习方法,使得模型可根据语义选择合适的标签,标签效果好;当***运行一段时间后会积累更多的用户聊天数据,可以再次进行标注训练来达到更好的效果,可支持进一步优化;本发明在经过前期人工标注后,后期可以自动化抽取标签,节省了大量的人力,提升效率。

Description

一种基于用户聊天记录的标签挖掘方法及设备
技术领域
本发明涉及语音助手技术领域,具体涉及一种基于用户聊天记录的标签挖掘方法及设备。
背景技术
在智能语音助手场景中,为了更好的为用户提供服务,通常需要对用户构建画像、打标签,然后基于这些标签对用户做推荐服务。
个性化推荐在与用户交互的整个过程中。一方面可以针对用户的岗位特征等推荐一些知识或业务信息,比如与之相关的新政策等等,同时也可以针对用户的个人喜好进行相关话题的讨论,谈论一些喜欢吃什么,爱看什么电影等等。成为一个人性化十足的语音助手,渗透到用户的工作生活中的各个角落,提高用户粘性。
当前情况下,构建用户画像需要用户手工填写信息。或者通过***平台获取一定的订单行为等信息。
但是在实际使用情况中,大量的信息采集对于用户来说是一种负担,严重降低了用户体验,此外,用户订单、操作等信息等出于隐私保护的原因不易获取,或者因数据的稀疏性做不到良好的推荐服务。
发明内容
本发明的目的是针对现有技术存在的不足,提供一种基于用户聊天记录的标签挖掘方法及设备。
为实现上述目的,在第一方面,本发明提供了一种基于用户聊天记录的标签挖掘方法,包括:
步骤1:对通过语音助手与用户闲聊生成的聊天数据进行预处理;
步骤2:基于标签抽取模型和统计方法从预处理后的聊天数据中抽取用户标签;
所述标签抽取模型通过以下步骤生成:
步骤201:选取一批聊天数据,标注聊天记录中每句话的用户标签;
步骤202:根据标注数据训练神经网络模型;
步骤203:对于步骤202中训练好的模型计算用户标签抽取准确率,计算公式如下:
Figure 896832DEST_PATH_IMAGE002
当标签抽取准确率大于设定阈值时,即获得标签抽取模型;
步骤3:基于关系发现模型挖掘相似度在设定阈值以上的所有标签;
具体包括以下步骤:
步骤301 :根据标签向量模型获取用户标签的向量;
步骤302 :获取用户标签中的每个字,用于后续相似度计算;
步骤303:根据用户标签向量,计算任意两个用户标签之间的余弦夹角;根据用户标签中的字信息,计算两个用户标签的集合相似度值;
步骤304 :对于两个用户标签的余弦夹角和集合相似度值取平均作为最终相似度值。
进一步的,所述每句话的用户标签包括在该句话中的每个字以及每个字的类别,所述每个字的类别的标注规则如下:
如该字是用户标签的开始,则这个字的类别记为B;
如该字是用户标签的结束,则这个字的类别记为E;
如该在用户标签的中间,则这个字的类别记为I;
如该字不在用户标签中,则这个字的类别记为O。
进一步的,所述步骤202具体包括:
通过以下公式将标注聊天数据中的每一句话转化为矩阵形式:
Figure DEST_PATH_IMAGE003
(1)
其中,
Figure 17234DEST_PATH_IMAGE004
是闲聊语句中的第i个字,
Figure DEST_PATH_IMAGE005
为向量维度,
Figure 265813DEST_PATH_IMAGE006
为1行n列的实数矩阵,通过
Figure DEST_PATH_IMAGE007
函数将闲聊语句中的字映射成字向量,闲聊语句中每个字都会被映射为字向量, 神经网络中会提前预存所有字向量,字向量可以从公开数据中获取;
Figure 129864DEST_PATH_IMAGE008
(2)
其中,m是句子中字的个数,
Figure DEST_PATH_IMAGE009
为m行n列的实数矩阵,通过公式2可将所有字向量拼 接起来;
Figure 911613DEST_PATH_IMAGE010
(3)
其中,W1,b1是神经网络中的参数,
Figure DEST_PATH_IMAGE011
为n行n列的实数矩阵,
Figure 202917DEST_PATH_IMAGE006
为1行n列的实数矩 阵;
Figure 469950DEST_PATH_IMAGE012
(4)
其中,
Figure DEST_PATH_IMAGE013
是神经网络中的参数,
Figure 809796DEST_PATH_IMAGE014
为n行4列的实数矩阵,
Figure DEST_PATH_IMAGE015
为1行2列的实 数矩阵,
Figure 416358DEST_PATH_IMAGE016
是归一化函数,用于把向量中的值映射为0-1之间的小数,
Figure 409721DEST_PATH_IMAGE016
公式如 下:
Figure DEST_PATH_IMAGE017
(5)
其中,
Figure 632892DEST_PATH_IMAGE018
的意思是向量s中的第i个值,
Figure DEST_PATH_IMAGE019
是s中所有值的求和,通过公式4获得的
Figure 71702DEST_PATH_IMAGE020
是一个4维向量,其数值分别代表了每个字属于各个用户标签的概率。
进一步的,所述从预处理后的聊天数据中抽取用户标签包括:
步骤211:基于标签抽取模型抽取用户标签;
步骤212:使用公开的分词工具对聊天记录进行分词,然后选取出现次数在设定阈值以上的名词作为用户标签;
步骤213 :将步骤211和步骤212抽取的用户标签合并,然后计算每个用户标签的得分,最后根据得分排序,选取得分高的若干作为用户标签,计算每个用户标签的得分的方式如下:
Figure 329508DEST_PATH_IMAGE022
其中,
Figure DEST_PATH_IMAGE023
是该标签在聊天记录中出现的次数,
Figure 962614DEST_PATH_IMAGE024
是聊天记录总字数,
Figure DEST_PATH_IMAGE025
是该标签在通用语料库中出现的次数,
Figure 984666DEST_PATH_IMAGE026
是通用语料库总字数。
进一步的,所述预处理包括依次进行的统一编码、简繁转换和移除无效字符。
在第二方面,本发明提供了一种基于用户聊天记录的标签挖掘设备,包括:
预处理模块,用以对通过语音助手与用户闲聊生成的聊天数据进行预处理;
标签抽取模块,用以基于标签抽取模型和统计方法从预处理后的聊天数据中抽取用户标签;
所述标签抽取模型通过以下方式生成:
选取一批聊天数据,标注聊天记录中每句话的用户标签;
根据标注数据训练神经网络模型;
对训练好的模型计算用户标签抽取准确率,计算公式如下:
Figure 994210DEST_PATH_IMAGE002
当标签抽取准确率大于设定阈值时,即获得标签抽取模型;
标签挖掘模块,用以基于关系发现模型挖掘相似度在设定阈值以上的所有标签;
具体包括:
根据标签向量模型获取用户标签的向量;
获取用户标签中的每个字,用于后续相似度计算;
根据用户标签向量,计算任意两个用户标签之间的余弦夹角;根据用户标签中的字信息,计算两个用户标签的集合相似度值;
对于两个用户标签的余弦夹角和集合相似度值取平均作为最终相似度值。
进一步的,所述每句话的用户标签包括在该句话中的每个字以及每个字的类别,所述每个字的类别的标注规则如下:
如该字是用户标签的开始,则这个字的类别记为B;
如该字是用户标签的结束,则这个字的类别记为E;
如该在用户标签的中间,则这个字的类别记为I;
如该字不在用户标签中,则这个字的类别记为O。
进一步的,所述根据标注数据训练神经网络模型具体包括:
通过以下公式将标注聊天数据中的每一句话转化为矩阵形式:
Figure 372102DEST_PATH_IMAGE003
(1)
其中,
Figure 441689DEST_PATH_IMAGE004
是闲聊语句中的第i个字,
Figure 905032DEST_PATH_IMAGE005
为向量维度,
Figure 718267DEST_PATH_IMAGE006
为1行n列的实数矩阵,通过
Figure 216244DEST_PATH_IMAGE007
函数将闲聊语句中的字映射成字向量,闲聊语句中每个字都会被映射为字向量, 神经网络中会提前预存所有字向量,字向量可以从公开数据中获取;
Figure 722312DEST_PATH_IMAGE008
(2)
其中,m是句子中字的个数,
Figure 407371DEST_PATH_IMAGE009
为m行n列的实数矩阵,通过公式2可将所有字向量拼 接起来;
Figure DEST_PATH_IMAGE027
(3)
其中,W1,b1是神经网络中的参数,
Figure 758718DEST_PATH_IMAGE028
为n行n列的实数矩阵,
Figure DEST_PATH_IMAGE029
为1行n列的实数矩 阵;
Figure 845623DEST_PATH_IMAGE030
(4)
其中,
Figure 522592DEST_PATH_IMAGE013
是神经网络中的参数,
Figure 193482DEST_PATH_IMAGE014
为n行4列的实数矩阵,
Figure 614099DEST_PATH_IMAGE015
为1行2列的实 数矩阵,
Figure 821090DEST_PATH_IMAGE016
是归一化函数,用于把向量中的值映射为0-1之间的小数,
Figure 668960DEST_PATH_IMAGE016
公式如 下:
Figure 328611DEST_PATH_IMAGE017
(5)
其中,
Figure 552919DEST_PATH_IMAGE018
的意思是向量s中的第i个值,
Figure 348837DEST_PATH_IMAGE019
是s中所有值的求和,通过公式4获得的
Figure 367609DEST_PATH_IMAGE020
是一个4维向量,其数值分别代表了每个字属于各个用户标签的概率。
进一步的,所述从预处理后的聊天数据中抽取用户标签包括:
基于标签抽取模型抽取用户标签;
使用公开的分词工具对聊天记录进行分词,然后选取出现次数在设定阈值以上的名词作为用户标签;
将以上两种方式抽取的用户标签合并,然后计算每个用户标签的得分,最后根据得分排序,选取得分高的若干作为用户标签,计算每个用户标签的得分的方式如下:
Figure 514556DEST_PATH_IMAGE022
其中,
Figure 276976DEST_PATH_IMAGE023
是该标签在聊天记录中出现的次数,
Figure 192979DEST_PATH_IMAGE024
是聊天记录总字数,
Figure 382652DEST_PATH_IMAGE025
是该标签在通用语料库中出现的次数,
Figure 16896DEST_PATH_IMAGE026
是通用语料库总字数。
进一步的,所述预处理包括依次进行的统一编码、简繁转换和移除无效字符。
有益效果:1、本发明借助神经网络的机器学习方法,使得模型可根据语义选择合适的标签,标签效果好。
2、当***运行一段时间后会积累更多的用户聊天数据,可以再次进行标注训练来达到更好的效果,可支持进一步优化。
3、本发明在经过前期人工标注后,后期可以自动化抽取标签,节省了大量的人力,提升效率。
附图说明
图1是本发明实施例的基于用户聊天记录的标签挖掘方法的示意图;
图2是本发明实施例的基于用户聊天记录的标签挖掘设备的示意图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,本实施例在以本发明技术方案为前提下进行实施,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围。
如图1所示,本发明实施例提供了一种基于用户聊天记录的标签挖掘方法,包括:
步骤1:对通过语音助手与用户闲聊生成的聊天数据进行预处理。预处理可清洗用户问题,避免数据噪音对准确性的影响。预处理具体包括依次进行的统一编码、简繁转换和移除无效字符。统一后的编码优选为UTF8编码。简繁转换后即统一转换为简体。移除无关语义的词,比如汉字“的”,“了”以及无意义符号等,具体做法:首先准备无效词表,无效词表使用网络公开的词表,然后根据使用场景可以选择添加或删除,然后检测用户闲聊记录中是否包含无效字符,凡是用户问题里的词出现在无效字符库中就将该词移除掉,最终会得到不包含停用词的用户闲聊记录。
步骤2:基于标签抽取模型和统计方法从预处理后的聊天数据中抽取用户标签。
标签抽取模型通过以下步骤生成:
步骤201:数据标注。选取一批聊天数据,标注聊天记录中每句话的标签。具体的,每句话的用户标签包括在该句话中的每个字以及每个字的类别,每个字的类别的标注规则如下:
1)如果这个字是用户标签的开始,则这个字的类别记为B。
2)如果这个字是用户标签的结束,则这个字的类别记为E。
3)如果这个字在用户标签的中间,则这个字的类别记为I。
4)如果这个字不在用户标签中,则这个字的类别记为O。
以“我喜欢吃四川菜”这句话为例,“四川菜”是用户标签,则标注结果是“我/O喜/O欢/O吃/O四/B川/I菜/E”。
步骤202:根据标注数据训练神经网络模型。
具体包括:
首先,通过以下公式将标注聊天数据中的每一句话转化为矩阵形式:
Figure DEST_PATH_IMAGE031
(1)
其中,
Figure 51848DEST_PATH_IMAGE004
是闲聊语句中的第i个字,
Figure 87937DEST_PATH_IMAGE005
为向量维度,
Figure 448511DEST_PATH_IMAGE006
为1行n列的实数矩阵,表示vi 是1行n列的矩阵,通过
Figure 570051DEST_PATH_IMAGE032
函数将闲聊语句中的字映射成字向量,闲聊语句中每个字 都会被映射为字向量,神经网络中会提前预存所有字向量,字向量可以从公开数据中获取;
Figure DEST_PATH_IMAGE033
(2)
其中,m是句子中字的个数,
Figure 408694DEST_PATH_IMAGE009
为m行n列的实数矩阵,通过公式2可将所有字向量拼 接起来;
Figure 299290DEST_PATH_IMAGE034
(3)
其中,W1,b1是神经网络中的参数,
Figure 63721DEST_PATH_IMAGE028
为n行n列的实数矩阵,
Figure 672557DEST_PATH_IMAGE006
为1行n列的实数矩 阵;
Figure DEST_PATH_IMAGE035
(4)
其中,
Figure 314891DEST_PATH_IMAGE013
是神经网络中的参数,
Figure 59993DEST_PATH_IMAGE014
为n行4列的实数矩阵,
Figure 27949DEST_PATH_IMAGE015
为1行2列的实 数矩阵,
Figure 858502DEST_PATH_IMAGE016
是归一化函数,用于把向量中的值映射为0-1之间的小数,
Figure 304527DEST_PATH_IMAGE016
公式如 下:
Figure 904135DEST_PATH_IMAGE036
(5)
其中,
Figure DEST_PATH_IMAGE037
的意思是向量s中的第i个值,
Figure 777413DEST_PATH_IMAGE038
是s中所有值的求和,通过公式4获得的
Figure DEST_PATH_IMAGE039
是一个4维向量,其数值分别代表了每个字属于各个用户标签(B、I、O、E)的概率。预测 概率最大的类别就会是最终类别。最后可以根据每个字的类别确定用户标签,比如“四川 菜”三个字的类别分别是BIE,则四川菜就是用户标签。
通常情况下我们把这一组数字称为向量,数字的个数就是向量的维度。把每个值转化为概率的方法就是用每个值除以这一组数字的总和。假设某个字BIOE标签四个得分分别是 [1, 2, 3, 4],那么把分值"1"转化为概率的公式就是 1/(1+2+3+4)。分值“2”转化为概率的公式就是2/(1+2+3+4) 。
在训练模型时,根据预测概率和真实标签,通过梯度下降方法就可以对模型参数进行更新,从而获取最好的参数(参数即上述公式中的W1,W2和词向量等)。梯度下降方法是更新神经网络参数的常用方法,就不再赘述。
从预处理后的聊天数据中抽取用户标签包括:
步骤211:基于标签抽取模型抽取用户标签;
步骤212:使用公开的分词工具对聊天记录进行分词,然后选取出现次数在设定阈值以上的名词作为用户标签;
步骤213 :将步骤211和步骤212抽取的用户标签合并,然后计算每个用户标签的得分,最后根据得分排序,选取得分高的若干作为用户标签,计算每个用户标签的得分的方式如下:
Figure 829683DEST_PATH_IMAGE022
其中,
Figure 813819DEST_PATH_IMAGE023
是该标签在聊天记录中出现的次数,
Figure 533514DEST_PATH_IMAGE024
是聊天记录总字数,
Figure 843272DEST_PATH_IMAGE025
是该标签在通用语料库中出现的次数,
Figure 648417DEST_PATH_IMAGE026
是通用语料库总字数。
步骤203:对于步骤202中训练好的模型计算用户标签抽取准确率,计算公式如下:
Figure 436245DEST_PATH_IMAGE002
当标签抽取准确率大于设定阈值时,即获得标签抽取模型,就可以投入使用了。一般情况下,此处的设定阈值可设定为85%至90%以上,可以根据应用场景需要进行调整。
步骤3:基于关系发现模型挖掘相似度在设定阈值以上的所有标签。
具体包括以下步骤:
步骤301 :标签向量表征。根据训练好的标签向量模型获取用户标签的向量。
步骤302 :统计特征。获取用户标签中的每个字,用于后续相似度计算。
步骤303:相似度计算。根据用户标签向量,计算任意两个用户标签之间的余弦夹角;根据用户标签中的字信息,计算两个用户标签的集合相似度值。需要说明的是,余弦夹角和集合相似度值为已有指标,这里不再赘述。
步骤304 :相似度合并。对于两个用户标签的余弦夹角和集合相似度值取平均作为最终相似度值。一些用户标签存在一定的关联性,比如“四川菜”和“川菜”,“足球”和“篮球”,计算标签之间的相似度可以为用户推荐更多的标签。
如图2所示,基于以上实施例,本领域技术人员可以理解,本发明还提供了一种基于用户聊天记录的标签挖掘设备,包括预处理模块1、标签抽取模块2和标签挖掘模块3。
其中,预处理模块1用以对通过语音助手与用户闲聊生成的聊天数据进行预处理。预处理可清洗用户问题,避免数据噪音对准确性的影响。预处理具体包括依次进行的统一编码、简繁转换和移除无效字符。统一后的编码优选为UTF8编码。简繁转换后即统一转换为简体。移除无关语义的词,比如汉字“的”,“了”以及无意义符号等,具体做法:首先准备无效词表,无效词表使用网络公开的词表,然后根据使用场景可以选择添加或删除,然后检测用户闲聊记录中是否包含无效字符,凡是用户问题里的词出现在无效字符库中就将该词移除掉,最终会得到不包含停用词的用户闲聊记录。
标签抽取模块2用以基于标签抽取模型和统计方法从预处理后的聊天数据中抽取用户标签。
具体的,标签抽取模型通过以下方式生成:
数据标注,选取一批聊天数据,标注聊天记录中每句话的标签。具体的,每句话的用户标签包括在该句话中的每个字以及每个字的类别,每个字的类别的标注规则如下:
1)如果这个字是用户标签的开始,则这个字的类别记为B。
2)如果这个字是用户标签的结束,则这个字的类别记为E。
3)如果这个字在用户标签的中间,则这个字的类别记为I。
4)如果这个字不在用户标签中,则这个字的类别记为O。
以“我喜欢吃四川菜”这句话为例,“四川菜”是用户标签,则标注结果是“我/O喜/O欢/O吃/O四/B川/I菜/E”。
根据标注数据训练神经网络模型。
具体包括:
首先,通过以下公式将标注聊天数据中的每一句话转化为矩阵形式:
Figure 10446DEST_PATH_IMAGE003
(1)
其中,
Figure 724061DEST_PATH_IMAGE004
是闲聊语句中的第i个字,
Figure 16502DEST_PATH_IMAGE005
为向量维度,
Figure 608021DEST_PATH_IMAGE006
为1行n列的实数矩阵,表示vi 是1行n列的矩阵,通过
Figure 36728DEST_PATH_IMAGE032
函数将闲聊语句中的字映射成字向量,闲聊语句中每个字 都会被映射为字向量,神经网络中会提前预存所有字向量,字向量可以从公开数据中获取;
Figure 422710DEST_PATH_IMAGE033
(2)
其中,m是句子中字的个数,
Figure 202447DEST_PATH_IMAGE009
为m行n列的实数矩阵,通过公式2可将所有字向量拼 接起来;
Figure 597656DEST_PATH_IMAGE034
(3)
其中,W1,b1是神经网络中的参数,
Figure 880870DEST_PATH_IMAGE028
为n行n列的实数矩阵,
Figure 703333DEST_PATH_IMAGE006
为1行n列的实数矩 阵;
Figure 704787DEST_PATH_IMAGE035
(4)
其中,
Figure 903687DEST_PATH_IMAGE040
是神经网络中的参数,
Figure DEST_PATH_IMAGE041
为n行4列的实数矩阵,
Figure 775828DEST_PATH_IMAGE015
为1行2列的实 数矩阵,
Figure 769192DEST_PATH_IMAGE016
是归一化函数,用于把向量中的值映射为0-1之间的小数,
Figure 257942DEST_PATH_IMAGE016
公式如 下:
Figure 994954DEST_PATH_IMAGE042
(5)
其中,
Figure 252760DEST_PATH_IMAGE037
的意思是向量s中的第i个值,
Figure 417025DEST_PATH_IMAGE038
是s中所有值的求和,通过公式4获得的
Figure 127492DEST_PATH_IMAGE039
是一个4维向量,其数值分别代表了每个字属于各个用户标签(B、I、O、E)的概率。预测 概率最大的类别就会是最终类别。最后可以根据每个字的类别确定用户标签,比如“四川 菜”三个字的类别分别是BIE,则四川菜就是用户标签。
通常情况下我们把这一组数字称为向量,数字的个数就是向量的维度。把每个值转化为概率的方法就是用每个值除以这一组数字的总和。假设某个字BIOE标签四个得分分别是 [1, 2, 3, 4],那么把分值"1"转化为概率的公式就是 1/(1+2+3+4)。分值“2”转化为概率的公式就是2/(1+2+3+4) 。
在训练模型时,根据预测概率和真实标签,通过梯度下降方法就可以对模型参数进行更新,从而获取最好的参数(参数即上述公式中的W1,W2和词向量等)。梯度下降方法是更新神经网络参数的常用方法,就不再赘述。
从预处理后的聊天数据中抽取用户标签包括:
基于标签抽取模型抽取用户标签;
使用公开的分词工具对聊天记录进行分词,然后选取出现次数在设定阈值以上的名词作为用户标签;
将以上两种方式抽取的用户标签合并,然后计算每个用户标签的得分,最后根据得分排序,选取得分高的若干作为用户标签,计算每个用户标签的得分的方式如下:
Figure 668195DEST_PATH_IMAGE022
其中,
Figure 46086DEST_PATH_IMAGE023
是该标签在聊天记录中出现的次数,
Figure 614209DEST_PATH_IMAGE024
是聊天记录总字数,
Figure 77551DEST_PATH_IMAGE025
是该标签在通用语料库中出现的次数,
Figure 890786DEST_PATH_IMAGE026
是通用语料库总字数。
对训练好的模型计算用户标签抽取准确率,计算公式如下:
Figure DEST_PATH_IMAGE043
当标签抽取准确率大于设定阈值时,即获得标签抽取模型,就可以投入使用了。一般情况下,此处的设定阈值可设定为85%至90%以上,可以根据应用场景需要进行调整。
标签挖掘模块3用以基于关系发现模型挖掘相似度在设定阈值以上的所有标签。
具体包括:
标签向量表征。根据训练好的标签向量模型获取用户标签的向量。
统计特征。获取用户标签中的每个字,用于后续相似度计算。
相似度计算。根据用户标签向量,计算任意两个用户标签之间的余弦夹角;根据用户标签中的字信息,计算两个用户标签的集合相似度值。需要说明的是,余弦夹角和集合相似度值为已有指标,这里不再赘述。
相似度合并。对于两个用户标签的余弦夹角和集合相似度值取平均作为最终相似度值。一些用户标签存在一定的关联性,比如“四川菜”和“川菜”,“足球”和“篮球”,计算标签之间的相似度可以为用户推荐更多的标签。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,其它未具体描述的部分,属于现有技术或公知常识。在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种基于用户聊天记录的标签挖掘方法,其特征在于,包括:
步骤1:对通过语音助手与用户闲聊生成的聊天数据进行预处理;
步骤2:基于标签抽取模型和统计方法从预处理后的聊天数据中抽取用户标签;
所述标签抽取模型通过以下步骤生成:
步骤201:选取一批聊天数据,标注聊天记录中每句话的用户标签;
步骤202:根据标注数据训练神经网络模型;
步骤203:对于步骤202中训练好的模型计算用户标签抽取准确率,计算公式如下:
Figure DEST_PATH_IMAGE002
当标签抽取准确率大于设定阈值时,即模型性能符合要求,可以投入使用;
步骤3:基于关系发现模型挖掘相似度在设定阈值以上的所有标签;
具体包括以下步骤:
步骤301 :根据标签向量模型获取用户标签的向量;
步骤302 :获取用户标签中的每个字,用于后续相似度计算;
步骤303:根据用户标签向量,计算任意两个用户标签之间的余弦夹角;根据用户标签中的字信息,计算两个用户标签的集合相似度值;
步骤304 :对于两个用户标签的余弦夹角和集合相似度值取平均作为最终相似度值。
2.根据权利要求1所述的基于用户聊天记录的标签挖掘方法,其特征在于,所述每句话的用户标签包括在该句话中的每个字以及每个字的类别,所述每个字的类别的标注规则如下:
如该字是用户标签的开始,则这个字的类别记为B;
如该字是用户标签的结束,则这个字的类别记为E;
如该在用户标签的中间,则这个字的类别记为I;
如该字不在用户标签中,则这个字的类别记为O。
3.根据权利要求1所述的基于用户聊天记录的标签挖掘方法,其特征在于,所述步骤202具体包括:
通过以下公式将标注聊天数据中的每一句话转化为矩阵形式:
Figure DEST_PATH_IMAGE004
(1)
其中,
Figure DEST_PATH_IMAGE006
是闲聊语句中的第i个字,
Figure DEST_PATH_IMAGE008
为向量维度,
Figure DEST_PATH_IMAGE010
为1行n列的实数矩阵,通过
Figure DEST_PATH_IMAGE012
函数将闲聊语句中的字映射成字向量,闲聊语句中每个字都会被映射为字向量,神经网络中会提前预存所有字向量,字向量可以从公开数据中获取;
Figure DEST_PATH_IMAGE014
(2)
其中,m是句子中字的个数,
Figure DEST_PATH_IMAGE016
为m行n列的实数矩阵,通过公式2可将所有字向量拼接起来;
Figure DEST_PATH_IMAGE018
(3)
其中,W1,b1是神经网络中的参数,
Figure DEST_PATH_IMAGE020
为n行n列的实数矩阵,
Figure 437649DEST_PATH_IMAGE010
为1行n列的实数矩阵;
Figure DEST_PATH_IMAGE022
(4)
其中,
Figure DEST_PATH_IMAGE024
是神经网络中的参数,
Figure DEST_PATH_IMAGE026
为n行4列的实数矩阵,
Figure DEST_PATH_IMAGE028
为1行2列的实数矩阵,
Figure DEST_PATH_IMAGE030
是归一化函数,用于把向量中的值映射为0-1之间的小数,
Figure 135215DEST_PATH_IMAGE030
公式如下:
Figure DEST_PATH_IMAGE032
(5)
其中,
Figure DEST_PATH_IMAGE034
的意思是向量s中的第i个值,
Figure DEST_PATH_IMAGE036
是s中所有值的求和,通过公式4获得的
Figure DEST_PATH_IMAGE038
是一个4维向量,其数值分别代表了每个字属于各个用户标签的概率。
4.根据权利要求1所述的基于用户聊天记录的标签挖掘方法,其特征在于,所述从预处理后的聊天数据中抽取用户标签包括:
步骤211:基于标签抽取模型抽取用户标签;
步骤212:使用公开的分词工具对聊天记录进行分词,然后选取出现次数在设定阈值以上的名词作为用户标签;
步骤213 :将步骤211和步骤212抽取的用户标签合并,然后计算每个用户标签的得分,最后根据得分排序,选取得分高的若干作为用户标签,计算每个用户标签的得分的方式如下:
Figure DEST_PATH_IMAGE040
其中,
Figure DEST_PATH_IMAGE042
是该标签在聊天记录中出现的次数,
Figure DEST_PATH_IMAGE044
是聊天记录总字数,
Figure DEST_PATH_IMAGE046
是该标签在通用语料库中出现的次数,
Figure DEST_PATH_IMAGE048
是通用语料库总字数。
5.根据权利要求1所述的基于用户聊天记录的标签挖掘方法,其特征在于,所述预处理包括依次进行的统一编码、简繁转换和移除无效字符。
6.一种基于用户聊天记录的标签挖掘设备,其特征在于,包括:
预处理模块,用以对通过语音助手与用户闲聊生成的聊天数据进行预处理;
标签抽取模块,用以基于标签抽取模型和统计方法从预处理后的聊天数据中抽取用户标签;
所述标签抽取模型通过以下方式生成:
选取一批聊天数据,标注聊天记录中每句话的用户标签;
根据标注数据训练神经网络模型;
对训练好的模型计算用户标签抽取准确率,计算公式如下:
Figure 492116DEST_PATH_IMAGE002
当标签抽取准确率大于设定阈值时,即获得标签抽取模型;
标签挖掘模块,用以基于关系发现模型挖掘相似度在设定阈值以上的所有标签;
具体包括:
根据标签向量模型获取用户标签的向量;
获取用户标签中的每个字,用于后续相似度计算;
根据用户标签向量,计算任意两个用户标签之间的余弦夹角;根据用户标签中的字信息,计算两个用户标签的集合相似度值;
对于两个用户标签的余弦夹角和集合相似度值取平均作为最终相似度值。
7.根据权利要求6所述的基于用户聊天记录的标签挖掘设备,其特征在于,所述每句话的用户标签包括在该句话中的每个字以及每个字的类别,所述每个字的类别的标注规则如下:
如该字是用户标签的开始,则这个字的类别记为B;
如该字是用户标签的结束,则这个字的类别记为E;
如该在用户标签的中间,则这个字的类别记为I;
如该字不在用户标签中,则这个字的类别记为O。
8.根据权利要求6所述的基于用户聊天记录的标签挖掘设备,其特征在于,所述根据标注数据训练神经网络模型具体包括:
通过以下公式将标注聊天数据中的每一句话转化为矩阵形式:
Figure 152905DEST_PATH_IMAGE004
(1)
其中,
Figure 170539DEST_PATH_IMAGE006
是闲聊语句中的第i个字,
Figure 258581DEST_PATH_IMAGE008
为向量维度,
Figure 728877DEST_PATH_IMAGE010
为1行n列的实数矩阵,通过
Figure 193356DEST_PATH_IMAGE012
函数将闲聊语句中的字映射成字向量,闲聊语句中每个字都会被映射为字向量,神经网络中会提前预存所有字向量,字向量可以从公开数据中获取;
Figure DEST_PATH_IMAGE049
(2)
其中,m是句子中字的个数,
Figure 65497DEST_PATH_IMAGE016
为m行n列的实数矩阵,通过公式2可将所有字向量拼接起来;
Figure 324440DEST_PATH_IMAGE018
(3)
其中,W1,b1是神经网络中的参数,
Figure 282032DEST_PATH_IMAGE026
为n行4列的实数矩阵,
Figure 284623DEST_PATH_IMAGE010
为1行n列的实数矩阵;
Figure 808008DEST_PATH_IMAGE022
(4)
其中,
Figure 441115DEST_PATH_IMAGE024
是神经网络中的参数,
Figure 948319DEST_PATH_IMAGE026
为n行4列的实数矩阵,
Figure 426705DEST_PATH_IMAGE028
为1行2列的实数矩阵,
Figure 335756DEST_PATH_IMAGE030
是归一化函数,用于把向量中的值映射为0-1之间的小数,
Figure 670922DEST_PATH_IMAGE030
公式如下:
Figure 603106DEST_PATH_IMAGE032
(5)
其中,
Figure 118139DEST_PATH_IMAGE034
的意思是向量s中的第i个值,
Figure 881695DEST_PATH_IMAGE036
是s中所有值的求和,通过公式4获得的
Figure 856604DEST_PATH_IMAGE038
是一个4维向量,其数值分别代表了每个字属于各个用户标签的概率。
9.根据权利要求6所述的基于用户聊天记录的标签挖掘设备,其特征在于,所述从预处理后的聊天数据中抽取用户标签包括:
基于标签抽取模型抽取用户标签;
使用公开的分词工具对聊天记录进行分词,然后选取出现次数在设定阈值以上的名词作为用户标签;
将以上两种方式抽取的用户标签合并,然后计算每个用户标签的得分,最后根据得分排序,选取得分高的若干作为用户标签,计算每个用户标签的得分的方式如下:
Figure DEST_PATH_IMAGE040A
其中,
Figure 541664DEST_PATH_IMAGE042
是该标签在聊天记录中出现的次数,
Figure 424169DEST_PATH_IMAGE044
是聊天记录总字数,
Figure DEST_PATH_IMAGE050
是该标签在通用语料库中出现的次数,
Figure 245495DEST_PATH_IMAGE048
是通用语料库总字数。
10.根据权利要求6所述的基于用户聊天记录的标签挖掘设备,其特征在于,所述预处理包括依次进行的统一编码、简繁转换和移除无效字符。
CN202011556453.4A 2020-12-25 2020-12-25 一种基于用户聊天记录的标签挖掘方法及设备 Active CN112287076B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011556453.4A CN112287076B (zh) 2020-12-25 2020-12-25 一种基于用户聊天记录的标签挖掘方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011556453.4A CN112287076B (zh) 2020-12-25 2020-12-25 一种基于用户聊天记录的标签挖掘方法及设备

Publications (2)

Publication Number Publication Date
CN112287076A true CN112287076A (zh) 2021-01-29
CN112287076B CN112287076B (zh) 2021-04-02

Family

ID=74426199

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011556453.4A Active CN112287076B (zh) 2020-12-25 2020-12-25 一种基于用户聊天记录的标签挖掘方法及设备

Country Status (1)

Country Link
CN (1) CN112287076B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115062630A (zh) * 2022-07-25 2022-09-16 北京云迹科技股份有限公司 机器人昵称的确认方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106156003A (zh) * 2016-06-30 2016-11-23 北京大学 一种问答***中的问句理解方法
CN110674319A (zh) * 2019-08-15 2020-01-10 中国平安财产保险股份有限公司 标签确定方法、装置、计算机设备及存储介质
CN111767386A (zh) * 2020-07-31 2020-10-13 腾讯科技(深圳)有限公司 对话处理方法、装置、电子设备及计算机可读存储介质
CN111914076A (zh) * 2020-08-06 2020-11-10 平安科技(深圳)有限公司 一种基于人机对话的用户画像构建方法、***、终端及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106156003A (zh) * 2016-06-30 2016-11-23 北京大学 一种问答***中的问句理解方法
CN110674319A (zh) * 2019-08-15 2020-01-10 中国平安财产保险股份有限公司 标签确定方法、装置、计算机设备及存储介质
CN111767386A (zh) * 2020-07-31 2020-10-13 腾讯科技(深圳)有限公司 对话处理方法、装置、电子设备及计算机可读存储介质
CN111914076A (zh) * 2020-08-06 2020-11-10 平安科技(深圳)有限公司 一种基于人机对话的用户画像构建方法、***、终端及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
宜信技术学院: "NLP技术在宜信业务中的实践【构建用户画像篇】", 《HTTPS://AIJISHU.COM/A/1060000000007972》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115062630A (zh) * 2022-07-25 2022-09-16 北京云迹科技股份有限公司 机器人昵称的确认方法及装置
CN115062630B (zh) * 2022-07-25 2023-01-06 北京云迹科技股份有限公司 机器人昵称的确认方法及装置

Also Published As

Publication number Publication date
CN112287076B (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
CN109657054B (zh) 摘要生成方法、装置、服务器及存储介质
CN109255027B (zh) 一种电商评论情感分析降噪的方法和装置
CN112395395B (zh) 文本关键词提取方法、装置、设备及存储介质
CN113505586A (zh) 一种融合语义分类与知识图谱的坐席辅助问答方法与***
CN106126619A (zh) 一种基于视频内容的视频检索方法及***
CN112257452B (zh) 情感识别模型的训练方法、装置、设备和存储介质
CN108804577B (zh) 一种资讯标签兴趣度的预估方法
CN112559684A (zh) 一种关键词提取及信息检索方法
CN110096572B (zh) 一种样本生成方法、装置及计算机可读介质
CN110287314B (zh) 基于无监督聚类的长文本可信度评估方法及***
CN109033166B (zh) 一种人物属性抽取训练数据集构建方法
CN104142995A (zh) 基于视觉属性的社会事件识别方法
CN111460251A (zh) 数据内容个性化推送冷启动方法、装置、设备和存储介质
CN108021545A (zh) 一种司法文书的案由提取方法及装置
CN113946657A (zh) 一种基于知识推理的电力业务意图自动识别方法
CN112287076B (zh) 一种基于用户聊天记录的标签挖掘方法及设备
CN111814486A (zh) 一种基于语义分析的企业客户标签生成方法、***及装置
CN108536676A (zh) 数据处理方法、装置、电子设备及存储介质
CN115062621A (zh) 标签提取方法、装置、电子设备和存储介质
CN113076391B (zh) 一种基于多层注意力机制的远程监督关系抽取方法
CN113220964B (zh) 一种基于网信领域短文本的观点挖掘方法
CN112015871A (zh) 基于事件集远程监督的人物关系自动标注方法
CN113722460B (zh) 指标数据入库方法、装置、设备及存储介质
CN114943285A (zh) 互联网新闻内容数据智能审核***
CN115080741A (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