CN113569918A - 分类温度调节方法、装置、电子设备及介质 - Google Patents
分类温度调节方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN113569918A CN113569918A CN202110755740.6A CN202110755740A CN113569918A CN 113569918 A CN113569918 A CN 113569918A CN 202110755740 A CN202110755740 A CN 202110755740A CN 113569918 A CN113569918 A CN 113569918A
- Authority
- CN
- China
- Prior art keywords
- target input
- intention
- category
- probability
- iteration
- 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
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000009826 distribution Methods 0.000 claims abstract description 114
- 238000013145 classification model Methods 0.000 claims abstract description 62
- 238000012545 processing Methods 0.000 claims abstract description 28
- 239000013598 vector Substances 0.000 claims description 99
- 238000012360 testing method Methods 0.000 claims description 31
- 230000006870 function Effects 0.000 claims description 21
- 238000004458 analytical method Methods 0.000 claims description 12
- 230000009467 reduction Effects 0.000 claims description 12
- 238000002372 labelling Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000003993 interaction Effects 0.000 abstract description 12
- 230000000694 effects Effects 0.000 abstract description 9
- 238000010801 machine learning Methods 0.000 abstract description 2
- 238000003058 natural language processing Methods 0.000 abstract description 2
- 238000012549 training Methods 0.000 description 27
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 8
- 241000282414 Homo sapiens Species 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000007935 neutral effect Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 4
- 238000007477 logistic regression Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 238000012706 support-vector machine Methods 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 238000013140 knowledge distillation Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000008844 regulatory mechanism Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000000528 statistical test Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- 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/35—Clustering; Classification
- G06F16/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及人机对话领域,针对现有的人机对话采用机器学习和自然语言处理存在不能真实反应复杂实际场景意图而导致数据偏差甚至错误、使得应用中无法适应实际场景实现准确高效的交互,提出了本发明的分类温度调节方法、装置、电子设备及介质,以解决如何确保数据分布更符合真实状态而提高人机交互中的模型预测效果的技术问题。本发明的方法通过在分类模型之后进行分类温度调节处理,以保证能够充分利用数据又适应不同机器人和/或不同节点,还原这些机器人和节点在真实场景下的数据分布,从而确保了实际应用中人机交互的效率、准确性、正确性,有助于提高用户体验。
Description
技术领域
本发明涉及人机对话技术领域,具体而言,涉及一种分类温度调节方法、装置、电子设备及介质。
背景技术
人机对话是自然语言理解技术(Natural Language Understanding,NLU)中一个富有挑战性的任务。在现有的对话系统中,对话系统需要帮助人类完成特定的任务,比如完成人发出的指令、引导人完成某一项任务,与此同时,对话系统设计用来完成不同聊天背景下模仿人类自然聊天的过程,大量的训练对话语料成为模型进一步改进的突破口,深度学习语音机器人成为了学术界和工业界的热门方向。
在语音机器人的人机交互工程中,如何正确的理解客户说话是影响交互质量的重要因素之一。随着机器学习和深度学习的发展以及在自然语言理解领域的应用,深度分类模型可以一定程度上解决这个问题,但面临一些挑战。
模型学习的是数据的分布,在对话机器人领域,收集数据时往往不分对话节点,甚至也不分机器人个体,而是以场景为单位收集标注数据。这样的好处是可以快速的积累数据,但也正因为如此,而忽略了机器人之间、以及节点之间的差异性。意图分类中的训练集与真实场景的意图分布并不一致,训练集的意图分布无法真实的反映复杂的真实场景下的意图分布:首先,不同机器人的意图分布是不一致的,比如电力系统的催缴费的机器人,其首催机器人和复催机器人意图分布就不一致;其次,同一场景中不同节点的意图分布也会不一致,比如银行系统的身份确认(或身份验证)和催促还款节点的意图分布并不一致。也就是说,由于数据收集过程中不可避免的缺陷和为了充分利用数据,模型学习的分布是存在偏差的。
发明内容
针对现有技术中的上述缺陷,本发明提供了一种分类温度调节方法、装置、电子设备及介质,可以解决如何确保数据分布更符合真实状态而有效提高人机交互中的模型预测的效果的技术问题;进一步,解决如何通过分类温度调节机制而保证能够充分利用数据的同时又可以针对/适应不同的机器人不同的节点,还原其本身的数据分布状态,以提高模型更准确的预测,确保实际应用中人机交互的效率、准确性和正确性,进而提高实际应用场景下人机交互时的用户体验的技术问题。
为了解决上述技术问题,本发明第一方面提出一种分类温度调节方法,包括:对将目标输入语句输入到意图分类模型所获得的初步意图分类结果进行还原;基于还原的结果,计算在类别温度向量下所述目标输入语句的类别,并统计所有目标输入语句在计算的各个所述类别上的概率分布;分析所述概率分布与目标输入语句对应的真实数据分布的差距;判断是否达到迭代条件,确定是否继续迭代以优化所述类别温度;停止迭代后输出最终的所述类别温度向量,以在所述意图分类模型预测时对预测结果进行调节。
根据本发明的一种优选实施方式,对将目标输入语句输入到意图分类模型所获得的初步意图分类结果进行还原,具体包括:处理目标输入语句,将处理后的目标输入语句输入到意图分类模型,得到初步意图分类的概率分布P;通过对数函数log将所述概率分布P还原到Logit单位L。
根据本发明的一种优选实施方式,所述处理目标输入语句,具体包括:定义意图特征词表,意图特征词表包括每个意图中相应的特征词;对目标输入语句按意图特征词分割;按照意图特征词表中所包括的意图特征词对所述分割后的目标输入语句进行标注,得到标注后的序列集合I=(x1,x2,…,xn);其中,所有处理后的目标输入语句组成测试集。进一步优选地,所述初步意图分类的概率分布P为意图分类模型输出的在各个类别上的概率向量P=[p1,p2,p3,…,pn],其中,n为正整数;通过对数函数log将所述概率分布P还原到Logit单位L,具体包括:通过对数函数计算概率向量P中每个序列Pi的对数概率,L=[l1,l2,l3,…,ln],li=ln(pi)。
根据本发明的一种优选实施方式,基于还原的结果,计算在类别温度向量下目标输入语句的类别,并统计所有目标输入语句在计算的各个所述类别上的概率分布,具体包括:初始化所述类别温度向量T;基于所述L,计算所述类别温度向量T下每个处理后的目标输入语句的类别;重新统计所有处理后的目标输入语句在计算的各个所述类别上的概率分布P。
根据本发明的一种优选实施方式,所述初始化类别温度向量T=[t1,t2,t3,…tn],并设置迭代次数i=1,ti=1;基于所述L,计算所述类别温度向量T下每个处理后的目标输入语句的类别,具体包括:根据每条处理后的目标输入语句在各个类别上的概率[(sentencei,classi1,classi2,…,classin)],使用softmax函数基于所述类别温度向量T和所述L进行回归处理得到每个候选标签的概率值,并选择概率最大的值作为当前目标输入语句的意图信息以确定对应的类别;重新统计所有处理后的目标输入语句在计算的各个所述类别上的概率分布P为新的概率向量P=[p1,p2,p3,…,pn]。
根据本发明的一种优选实施方式,分析所述概率分布与目标数据对应的真实数据分布的差距,具体包括:计算重新统计的所述概率分布P与目标输入语句对应的真实数据分布Q的距离d,并将迭代次数i加1。进一步优选地,计算所述距离d具体包括:计算重新统计的概率分布P=[p1,p2,p3,…,pn]与真实数据分布Q=[q1,q2,q3,…,qn]的距离d=max(abs(Q–P))。
根据本发明的一种优选实施方式,判断是否达到迭代条件,确定是否继续迭代以优化所述类别温度,具体包括:判断迭代次数i或距离d是否满足条件;如果否则确定继续重复所述还原、计算、统计和分析的步骤以优化所述类别温度;如果是则确定停止迭代。进一步优选地,判断迭代次数i或距离d是否满足条件,具体包括:比较迭代次数i与预设的最大迭代次数max_i,以及,比较距离d与预设的最大距离max_d;当i>max_i或d<max_d时,满足条件,停止迭代。进一步优选地,所述意图分类模型是BERT模型。
为了解决上述技术问题,本发明第二方面提出一种分类温度调节装置,包括:还原模块,用于对将目标输入语句输入到意图分类模型所获得的初步意图分类结果进行还原;计算统计模块,用于基于还原的结果,计算在类别温度向量下所述目标输入语句的类别,并统计所有目标输入语句在计算的各个所述类别上的概率分布;分析模块,用于分析所述概率分布与目标输入语句对应的真实数据分布的差距;判断模块,用于判断是否达到迭代条件,确定是否继续迭代以优化所述类别温度;输出模块,用于停止迭代后输出最终的所述类别温度向量,以在所述意图分类模型预测时对预测结果进行调节。
为了解决上述技术问题,本发明第三方面提出一种电子设备,其包括处理器以及存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器执行上述第一方面的方法。
为了解决上述技术问题,本发明第四方面提出一种计算机可读存储介质,该所述计算机可读存储介质存储一个或多个程序,当所述一个或多个程序被处理器执行时,实现上述第一方面的方法。
本发明的一个实施方式中,通过在分类模型后设置分类温度调节机制,对分类模型输出引入温度向量进行训练,使得分类模型的最后输出分布调节接近真实分布,确保了数据分布更符合真实状态而提高人机交互中的模型预测效果。
进一步,基于场景内标注数据和用户输入语音训练初始的分类模型获得每个意图上的概率,在所述概率上引入分类温度向量,再训练所述分类模型以调整所述分类模型的输出分布更符合或者接近真实场景下的分布。这样,分类模型预测得到的标签与真实分布的标签分布一致,能够提高模型的分类准确率。由此,在分类模型之后进行分类温度调节处理,既保证了充分利用数据又能针对或者说适应真实场景的不同机器人和/或不同节点,还原这些机器人和节点在真实场景下的数据分布,从而确保了实际应用中人机交互的效率、准确性和正确性,有助于提高用户体验。
附图说明
为了使本发明所解决的技术问题、采用的技术手段及取得的技术效果更加清楚,下面将参照附图详细描述本发明的具体实施例。但需声明的是,下面描述的附图仅仅是本发明的示例性实施例的附图,对于本领域的技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他实施例的附图。
图1是根据本发明的分类温度调节方法的一实施例的主要流程图。
图2是根据本发明的分类温度调节方法的一实施例关于具体迭代获得类别温度向量的主要流程示意图。
图3是根据本发明的技术方案的一实施例关于将处理后的目标输入语句输入意图分类模型得到初步意图分类结果的主要流程示意图。
图4是根据本发明的分类温度调节装置的一实施例的结构框图。
图5是根据本发明的电子设备的一个示例性实施例的具体结构框图。
图6是本发明的一个计算机可读介质实施例的示意图。
具体实施方式
现在将参考附图来更加全面地描述本发明的示例性实施例,虽然各示例性实施例能够以多种具体的方式实施,但不应理解为本发明仅限于在此阐述的实施例。相反,提供这些示例性实施例是为了使本发明的内容更加完整,更加便于将发明构思全面地传达给本领域的技术人员。
在符合本发明的技术构思的前提下,在某个特定的实施例中描述的结构、性能、效果或者其他特征可以以任何合适的方式结合到一个或更多其他的实施例中。
在对于具体实施例的介绍过程中,对结构、性能、效果或者其他特征的细节描述是为了使本领域的技术人员对实施例能够充分理解。但是,并不排除本领域技术人员可以在特定情况下,以不含有上述结构、性能、效果或者其他特征的技术方案来实施本发明。
附图中的流程图仅是一种示例性的流程演示,不代表本发明的方案中必须包括流程图中的所有的内容、操作和步骤,也不代表必须按照图中所显示的的顺序执行。例如,流程图中有的操作/步骤可以分解,有的操作/步骤可以合并或部分合并,等等,在不脱离本发明的发明主旨的情况下,流程图中显示的执行顺序可以根据实际情况改变。
附图中的框图一般表示的是功能实体,并不一定必然与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体,或真实的能实现该功能的物理结构部分。
各附图中相同的附图标记表示相同或类似的元件、组件或部分,因而下文中可能省略了对相同或类似的元件、组件或部分的重复描述。还应理解,虽然本文中可能使用第一、第二、第三等表示编号的定语来描述各种器件、元件、组件或部分,但是这些器件、元件、组件或部分不应受这些定语的限制。也就是说,这些定语仅是用来将一者与另一者区分。例如,第一器件亦可称为第二器件,但不偏离本发明实质的技术方案。此外,术语“和/或”、“及/或”是指包括所列出项目中的任一个或多个的所有组合。
分类问题的共同点是模型最后会有一个softmax层,其输出值对应了相应类别的概率值。在知识蒸馏时,由于已经有了一个泛化能力较强的Teacher模型,在利用Teacher模型来蒸馏训练Student模型时,可以直接让Student模型去学习Teacher模型的泛化能力。一个很高效的迁移泛化能力的方法就是:使用softmax层输出的类别的概率来作为“Soft-target”。在将原始logits传递给softmax之前,将Teacher模型的原始logits按一定的温度进行缩放。这样,就会在可用的类标签中得到更广泛的分布。然后用同样的温度用于训练学生模型。也就是说,在知识蒸馏中,需要使用高温将知识“蒸馏”出来。
自然语言处理是人工智能的一个子领域,致力于使计算机能够理解和处理人类语言,使计算机更接近于人类对语言的理解,旨在文本数据中提取信息,在文本上运行模型来提取实体。其中,自然语言理解是用于完成对文本的语义解析,提取关键信息,比如实体、意图等;自然语言生成则针对用户的输入产生响应的自然语言文本。从而,基于人工智能技术实现人机之间进行人机对话。
意图识别是指把所输入的自然语言问题进行数据分析的真实意图识别出来。例如用户是想要过滤数据,还是漏斗分析等。意图识别过程的输入是自然语言问题中的词语经过词向量转换模型转化的稠密向量,输出为意图识别,其本质是一个分类问题,即输出为分类结果。具体地,依据自然语言问题所相应的文本内容通过意图识别后,输出为进行数据分析目的的分类类别,包括源数据查看、数据过滤、多维分析、漏斗分析、对比分析、趋势分析、报表分析、相关分析等。
本发明的一个实施例中,通过迭代学习确定最终的类别温度向量T,用于调节意图分类模型输出的类别分布和相应测试集中数据(目标输入语句)类别分布的差距。具体地,引入的所述温度向量T可以是对模型输出的结果进行调整的权重值,可以称为权重值分布向量或称为权重值向量,权重值向量中的各个元素与模型输出的分布维度可以依次相对应。
进一步,类别温度向量T的维度可以是意图分类模型输出的类别数量,比如情感分析模型可以判断句话的情感是三种类别:正向、负向、中性,即输出的维度是3,可以确定T的维度是3,相应的元素有:t1、t2、t3。进一步,这样的分类模型实际上可以通过模型对各个类别的输出分数来确定最终的结果。具体地,在意图分类模型进行句子的类别预测中,输出的每个类别的分数可以确定输入的目标输入语句应该是哪个类别,承前述三种类别的例子:一句话输入模型后输出的三种类别的分数依次为正向0.8、负向0.1、中性0.1,那么可以确定这句话的最终意图是正向,即以最高分数来决定。而模型输出的标签分布情况则是正向:负向:中性=6:2:2,与测试集中的真实标签分布情况正向:负向:中性=4:5:1存在较大偏差。此时,可以引入类别温度向量T={t1,t2,t3},对模型输出的分数进行调节为:正向0.8/t1、负向0.1/t2、中性0.1/t3。这样,调节后的分数更符合真实标签分布情况对应的分数。其中,通过合理的学习,可以得到合适的温度向量T,从而使最终的模型预测类别分布和真实分布相近。
下面将以自然语言理解领域为例来说明如何调节温度确保数据分布更符合真实状态。
【实施例1】
参见图1所示根据本发明的分类温度调节方法的一实施例的主要流程图,该方法主要包括:
步骤S110,对将目标输入语句输入到意图分类模型所获得的初步意图分类结果进行还原。
一个实施方式中,可以先处理目标输入语句,将处理后的目标输入语句输入到意图分类模型,得到初步意图分类的概率分布P。
具体例如,提供训练集对意图分类模型训练后保存,通过测试集进行模型测试。训练集和测试集中的数据都是标注过的。在本实施例的人机交互的应用场景中,处理目标输入语句可以是标注方式,测试集中的数据包括标注过的目标输入语句。处理在输入模型之前,看作预处理过程。具体例如:定义意图特征词表,意图特征词表包括每个意图中相应的特征词;对目标输入语句按意图特征词分割;按照意图特征词表中所包括的意图特征词对所述分割后的目标输入语句进行标注,得到标注后的序列集合I=(x1,x2,…,xn)。这些所有处理后的目标输入语句放入测试集中。
一个实施方式中,预处理后的目标输入语句输入到意图分类模型中,可以获得初步意图分类结果,比如类别和相应于类别的概率分布P。通过对数函数log将所述概率分布P还原到Logit单位L。具体例如:初步意图分类的概率分布P为意图分类模型输出的在各个类别上的概率向量P=[p1,p2,p3,…,pn],其中,n为正整数;通过对数函数计算概率向量P中每个序列Pi的对数概率,L=[l1,l2,l3,…,ln],li=ln(pi)。
步骤S120,基于还原的结果,计算在类别温度向量下所述目标输入语句的类别,并统计所有目标输入语句在计算的各个所述类别上的概率分布。
一个实施方式中,对训练的意图分类模型通过类别温度调节来优化该模型的预测结果,主要利用测试集具体通过迭代过程学习到最终的类别温度向量结果。例如:
初始化所述类别温度向量T;基于对数还原初步意图结果的P得到的还原结果L,计算所述类别温度向量T下每个处理后的目标输入语句的类别;再重新统计所有处理后的目标输入语句在计算的各个所述类别上的概率分布P。进一步,所述初始化类别温度向量T=[t1,t2,t3,…tn],并设置迭代次数i=1,ti=1;根据每条处理后的目标输入语句在各个类别上的概率[(sentencei,classi1,classi2,…,classin)],使用softmax函数基于所述类别温度向量T和所述L进行回归处理得到每个候选标签的概率值,并选择概率最大的值作为当前目标输入语句的意图信息以确定对应的类别;重新统计所有处理后的目标输入语句在计算的各个所述类别上的概率分布P为新的概率向量P=[p1,p2,p3,…,pn]。
步骤S130,分析所述概率分布与目标数据对应的真实数据分布的差距。
一个实施方式中,可以计算重新统计的所述概率分布P与目标输入语句对应的真实数据分布Q的距离d,并将迭代次数i加1,准备到下一次迭代。例如:重新统计的概率分布或者说概率向量为P=[p1,p2,p3,…,pn],测试集中标注的语句对应的真实的数据分布情况为Q=[q1,q2,q3,…,qn],计算距离d=max(abs(Q–P))。
步骤S140,判断是否达到迭代条件,确定是否继续迭代以优化所述类别温度。
一个实施方式中,可以通过初始化T时设置的迭代次数i的累加来判断迭代次数i或距离d是否满足条件。进一步,判断迭代次数i或距离d是否满足条件可以是比较迭代次数i与预设的最大迭代次数max_i,以及,比较距离d与预设的最大距离max_d。
一个实施方式中,如果是满足条件则确定停止迭代,如果否则确定继续重复所述还原、计算、统计和分析的步骤以优化所述类别温度T。具体地,重复的迭代学习过程,能够更新意图分类模型的参数和类别温度T(如:模型输出时的权重值向量),实现模型优化。
进一步,判断为比较结果是当i>max_i或d<max_d时,满足条件,停止迭代。
步骤S150,停止迭代后输出最终的所述类别温度向量,以在所述意图分类模型预测时对预测结果进行调节。
一个实施方式中,通过测试集中数据对训练的意图分类模型类别利用类别温度向量T调节模型预测结果进行迭代学习,更新模型参数、包括更新所述类别温度向量T,在停止迭代学习过程(如重复还原、计算、统计和分析)后,输出最终的类别温度向量T=[t1,t2,t3,…tn]。
由此,得到学习后的温度向量T可以在意图分类模型进行预测输入语句的类别及各个类别的概率时,进行预测结果调节,以使得类别分布和各类别概率分布更符合真实的场景的分布情况,与真实数据分布情况更趋于一致,从而提高了模型预测的结果更准确。
【实施例2】
本发明的方案中主要通过迭代学习过程,确定最终的T。一个迭代学习过程的例子中,输入进行迭代学习的内容包括了:1、分类模型(如意图分类器或者说意图分类模型)的输出,包括在各个类别上的概率向量P=[p1,p2,p3,…,pn];2、人机交互中在机器人或节点上的真实类别分布情况Q=[q1,q2,q3,…,qn];3、测试集中每条数据在各个类别上的概率[(sentencei,classi1,classi2,…,classin)];4、最大距离max_d,最大迭代次数max_i。而迭代学习的输出则是该T,T=[t1,t2,t3,…,tn]。
进一步,迭代学习主要过程包括:
(1)初始化温度向量T=[t1,t2,t3,…,tn],其中ti=1迭代次数i=1;
(2)通过对数函数log将P还原到logit单位L=[l1,l2,l3,…,ln],其中li=ln(pi);
(3)计算该温度T下测试集中数据的类别,class of sentence=argmax(softmax(L/T));
(4)统计测试集在各个类别上的概率分布P=[p1,p2,p3,…,pn];
(5)计算P与真实数据分布Q的距离:d=max(abs(Q–P));
(6)迭代次数i=i+1;
(7)如果i>max_i或d<max_d,则停止迭代输出T,否则重复上述(2)-(6)。
下面,结合图2所示根据本发明的分类温度调节方法的一实施例中具体迭代学习类别温度向量T的具体流程,说明获得类别温度向量T(简称温度向量T)用以调节意图分类模型的实现过程。其至少包括下述步骤:
S1,处理目标输入语句,将处理后的目标输入语句输入意图分类模型,得到初步意图分类结果,即各个类别上的概率向量。
所述模型的输入是目标输入语句,分类模型的输出是在各个类别上的概率向量P,P=[p1,p2,p3,…,pn]。
S2,初始化温度向量T,T=[t1,t2,t3,…,tn],其中ti=1,迭代次数i=1。
其中,T为温度参数,用于提高数据的迁移率。
S3,使用对数函数作为损失函数来优化模型参数,计算概率向量集合P中的每个序列Pi的对数概率Ln(Pi)。
通过对数函数log将概率向量P还原到logit单位L,L=[l1,l2,l3,…,ln],其中li=ln(pi)。
S4,使用softmax函数回归处理得到每个候选标签的概率值,选择概率最大的值作为当前目标输入语句的意图信息,即最可能的序列。
例如,可以由以下方法确定:
根据测试集中每条数据(如语句)在各个类别上的概率[(sentencei,classi1,classi2,…,classin)],计算温度向量T下测试集中数据的类别,class of sentence=argmax(softmax(L/T))。
因为Logits并非概率值,所以一般在Logits数值上会用softmax函数进行变换,得出的概率值作为最终分类结果概率。softmax一方面把Logits数值在各类别之间进行概率归一,使得各个类别归属数值满足概率分布;另外一方面,它会放大Logits数值之间的差异,使得Logits得分两极分化,Logits得分高的得到的概率值更偏大一些,而较低的Logits数值,得到的概率值则更小。但是如果直接使用softmax层的输出值,如果softmax输出的概率分布熵相对较小时,负标签的值非常接近零,对损失函数的贡献非常小,因此需要引入温度向量T来参与softmax函数的计算。当温度向量T=1时,就是标准的softmax公式。温度向量T越高,softmax的输出概率分布越趋于平滑,其分布的熵越大,负标签所携带的信息也就会被相对的放大,而模型训练时将更加关注负标签。
argmax函数为求最大值,即取概率最大的标签作为最重的标签。
S5,统计测试集在S4中计算的各个类别上的概率分布P=[p1,p2,p3,…,pn]。
本实施例在解码器训练过程中使用强化学习方式来解决训练和真实的信息存在偏差的问题。先从一个初步分类模型(例如意图分类模型)开始训练,随着模型的使用,初步模型的数量不断增多,模型准确率也逐步提升。通过将全部的初步分类模型的结果输入再次分类模型中进行训练,与其真实类别分布进行比对,以此不断迭代优化模型中的参数(包括参数:温度向量T)。假设模型的输出结果为概率向量P,真实的类别分布为Q,如果P等于Q,那么分类正确,否则继续进行迭代训练,直到得到最大的回报为止。
因此,基于上述计算得出的温度向量T下测试集中数据的类别,来输出所述各个类别上的概率向量P,P=[p1,p2,p3,…,pn]。
S6,计算所述概率向量P与真实数据分布Q的距离d:d=max(abs(Q–P)),其中,Q为真实的类别数据分布,Q=[q1,q2,q3,…,qn]。之后将迭代次数i增加1。
S7,比较i与max_i、以及d与max_d的大小,如果i>max_i或d<max_d,停止迭代,否则重复上述步骤S3-S6,直到i>max_i或d<max_d为止,将此时确定的温度向量T作为最终确定的温度向量T,T=[t1,t2,t3,…,tn]。
其中,max_i是预先设置的最大迭代次数,max_d是预先设置的最大距离。
S8,达到前述迭代停止条件停止迭代后,输出温度向量T,用以在之后的意图分类模型进行预测时调节预测时输出的结果。
【实施例3】
下面结合图3示出了根据本发明的方案的一实施例中关于将处理后的目标输入语句输入意图分类模型得到初步意图分类结果进行说明。该包括下述步骤:
S201,构建场景内标注数据。
从场景内获取多条目标输入语句。从中选取出多条作为模型的训练集,再选取出多条作为测试集。
获取的目标输入语句包括:利用网络上的开源问答数据集得到的文本数据;或者利用麦克风方式收集音频数据,然后将音频信号转换为文本数据;用户输入文字方式得到文本数据。
定义意图特征词表,意图特征词表包括每个意图中相应的特征词;如各种查询场景中,查询火车意图下的火车站点、查询酒店意图下酒店名、查询理财意图下理财产品名等。
定义用户词典,用户词典是指在分词时手动添加的一些不可分的词,以防止分词算法时将一些固定搭配的短语拆分,进而影响了人机对话系统对初始意图的识别。
针对获取的目标输入语句,可以先对其进行预处理,包括去除特殊符号、去除停用词等。对预处理后的目标输入语句按意图特征词分割,得到目标输入语句中的每个意图特征词。
根据意图特征词表中所包括的意图特征词对预处理后的所述目标输入语句进行标注以用于训练和测试,得到标注后的序列集合I=(x1,x2,…,xn),其中,x1为目标文本中的第1个意图特征词,x2为目标文本中的第2个意图特征词,以此类推,xn为目标文本中的第n个意图特征词。
例如,若当前目标输入语句中出现了意图特征词,可以使用IOBES标注规则对当前问句中的意图特征词进行标注;如果一个字是一个命名实体的开始则标记为B-label,如果是在命名实体的内部但不是第一个字则标记为I-label,如果是命名实体的结尾那么标记为E-label,如果是单个命名实体的信息则标记为S-label,其他情况的话标记为O。
S202,获取目标输入语句在各个类别上的概率向量P,P=[p1,p2,p3,…,pn]。
将所述目标输入语句输入至意图分类器或者说意图分类模型,以获取多个意图分类结果及所述多个意图分类结果对应的概率值。概率向量P表示了目标输入语句在各个类别上的概率分布。
在输入所述目标输入语句进行意图分类时,会得到所述语句属于各个类别的大小数值,某个类别的数值越大,则模型认为所述目标输入数据属于这个类别的可能性就越大。
其中,意图分类器可以采用业界较为成熟的及其学习方法,例如,逻辑回归算法(LogisticRegression,LR)、支持向量机算法(SupportVectorMachine,SVM)、等等。又或者深度学习方法,例如,文本卷积神经网络算法(TextConvolutionalNeurlNetwork,TextCNN)等,具体采用哪一种方法可根据不同方法在数据上的表现效果来做进一步选择。
在一个特定实施方式中,所述意图分类器是Bert模型。
所述意图分类器根据所述目标输入语句输出多个分类结果及所述多个意图分类结果对应的概率值,例如,当多个意图分类结果所对应的概率值分别为0.2、0.35、0.5、0.75,于是,进一步根据上述多个意图分类结果所对应的概率值判断所述目标输入语句的初始意图。
在人机对话系统中,存储有预设概率阈值用以协助进行意图分类结果的概率判断,其中,所述预设概率阈值为根据实际需要进行设定的值。具体的,将多个意图分类结果所对应的概率值分别与所述预设概率阈值进行比较,判断是否存在大于所述预设概率阈值的概率值。若各所述意图分类结果对应的概率值均小于预设概率阈值,则未能识别出所述目标输入语句的初始意图,即,所述意图分类器未能识别出所述目标输入语句的初始意图。将多个意图分类结果对应的概率值中最大概率值所对应的意图作为所述目标输入语句的初始意图。若存在大于或等于所述预设概率阈值的概率值,则表示所述意图分类器识别出所述目标输入语句的初始意图,并将多个意图分类结果对应的概率值中最大概率值所对应的意图作为所述目标输入语句的初始意图。
在使用训练集训练完意图分类器后,保存此分类器(模型)。
利用测试集对所述意图分类器进行分类温度向量T的迭代学习以获得分类温度向量T,进而用所述T来调节分类器的预测结果。本领域技术人员可以理解,实现上述实施例的全部或部分步骤被实现为由数据处理设备(包括计算机)执行的程序,即计算机程序。在该计算机程序被执行时,可以实现本发明提供的上述方法。而且,所述的计算机程序可以存储于计算机可读存储介质中,该存储介质可以是磁盘、光盘、ROM、RAM等可读存储介质,也可以是多个存储介质组成的存储阵列,例如磁盘或磁带存储阵列。所述的存储介质不限于集中式存储,其也可以是分布式存储,例如基于云计算的云存储。
下面描述本发明的装置实施例,该装置可以用于执行本发明的方法实施例。对于本发明装置实施例中描述的细节,应视为对于上述方法实施例的补充;对于在本发明装置实施例中未披露的细节,可以参照上述方法实施例来实现。
【实施例4】
参见图4所示根据本发明的分类温度调节装置的一实施例的主要结构框图,该装置主要包括:
还原模块410,对将目标输入语句输入到意图分类模型所获得的初步意图分类结果进行还原。
一个实施方式中,可以先处理目标输入语句,将处理后的目标输入语句输入到意图分类模型,得到初步意图分类的概率分布P。
具体例如,提供训练集对意图分类模型训练后保存,通过测试集进行模型测试。训练集和测试集中的数据都是标注过的。在本实施例的人机交互的应用场景中,处理目标输入语句可以是标注方式,测试集中的数据包括标注过的目标输入语句。处理在输入模型之前,看作预处理过程。具体例如:定义意图特征词表,意图特征词表包括每个意图中相应的特征词;对目标输入语句按意图特征词分割;按照意图特征词表中所包括的意图特征词对所述分割后的目标输入语句进行标注,得到标注后的序列集合I=(x1,x2,…,xn)。这些所有处理后的目标输入语句放入测试集中。
一个实施方式中,预处理后的目标输入语句输入到意图分类模型中,可以获得初步意图分类结果,比如类别和相应于类别的概率分布P。通过对数函数log将所述概率分布P还原到Logit单位L。具体例如:初步意图分类的概率分布P为意图分类模型输出的在各个类别上的概率向量P=[p1,p2,p3,…,pn],其中,n为正整数;通过对数函数计算概率向量P中每个序列Pi的对数概率,L=[l1,l2,l3,…,ln],li=ln(pi)。
一个实施方式中,得到初步意图分类结果,如实施例3,进一步包括:
构建标注模块4101:从场景内获取多条目标输入语句。从中选取出多条作为模型的训练集,再选取出多条作为测试集。
获取的目标输入语句包括:利用网络上的开源问答数据集得到的文本数据;或者利用麦克风方式收集音频数据,然后将音频信号转换为文本数据;用户输入文字方式得到文本数据。
定义意图特征词表,意图特征词表包括每个意图中相应的特征词;如各种查询场景中,查询火车意图下的火车站点、查询酒店意图下酒店名、查询理财意图下理财产品名等。
定义用户词典,用户词典是指在分词时手动添加的一些不可分的词,以防止分词算法时将一些固定搭配的短语拆分,进而影响了人机对话系统对初始意图的识别。
针对获取的目标输入语句,可以先对其进行预处理,包括去除特殊符号、去除停用词等。对预处理后的目标输入语句按意图特征词分割,得到目标输入语句中的每个意图特征词。
根据意图特征词表中所包括的意图特征词对预处理后的所述目标输入语句进行标注以用于训练和测试,得到标注后的序列集合I=(x1,x2,…,xn),其中,x1为目标文本中的第1个意图特征词,x2为目标文本中的第2个意图特征词,以此类推,xn为目标文本中的第n个意图特征词。
例如,若当前目标输入语句中出现了意图特征词,可以使用IOBES标注规则对当前问句中的意图特征词进行标注;如果一个字是一个命名实体的开始则标记为B-label,如果是在命名实体的内部但不是第一个字则标记为I-label,如果是命名实体的结尾那么标记为E-label,如果是单个命名实体的信息则标记为S-label,其他情况的话标记为O。
获取向量模块4102,获取目标输入语句在各个类别上的概率向量P,P=[p1,p2,p3,…,pn]。
将所述目标输入语句输入至意图分类器或者说意图分类模型,以获取多个意图分类结果及所述多个意图分类结果对应的概率值。概率向量P表示了目标输入语句在各个类别上的概率分布。
在输入所述目标输入语句进行意图分类时,会得到所述语句属于各个类别的大小数值,某个类别的数值越大,则模型认为所述目标输入数据属于这个类别的可能性就越大。
其中,意图分类器可以采用业界较为成熟的及其学习方法,例如,逻辑回归算法(LogisticRegression,LR)、支持向量机算法(SupportVectorMachine,SVM)、等等。又或者深度学习方法,例如,文本卷积神经网络算法(TextConvolutionalNeurlNetwork,TextCNN)等,具体采用哪一种方法可根据不同方法在数据上的表现效果来做进一步选择。
在一个特定实施方式中,所述意图分类器是Bert模型。
所述意图分类器根据所述目标输入语句输出多个分类结果及所述多个意图分类结果对应的概率值,例如,当多个意图分类结果所对应的概率值分别为0.2、0.35、0.5、0.75,于是,进一步根据上述多个意图分类结果所对应的概率值判断所述目标输入语句的初始意图。
在人机对话系统中,存储有预设概率阈值用以协助进行意图分类结果的概率判断,其中,所述预设概率阈值为根据实际需要进行设定的值。具体的,将多个意图分类结果所对应的概率值分别与所述预设概率阈值进行比较,判断是否存在大于所述预设概率阈值的概率值。若各所述意图分类结果对应的概率值均小于预设概率阈值,则未能识别出所述目标输入语句的初始意图,即,所述意图分类器未能识别出所述目标输入语句的初始意图。将多个意图分类结果对应的概率值中最大概率值所对应的意图作为所述目标输入语句的初始意图。若存在大于或等于所述预设概率阈值的概率值,则表示所述意图分类器识别出所述目标输入语句的初始意图,并将多个意图分类结果对应的概率值中最大概率值所对应的意图作为所述目标输入语句的初始意图。
在使用训练集训练完意图分类器后,保存此分类器(模型)。
利用测试集对所述意图分类器进行分类温度向量T的迭代学习以获得分类温度向量T,进而用所述T来调节分类器的预测结果。
计算统计模块420,基于还原的结果,计算在类别温度向量下所述目标输入语句的类别,并统计所有目标输入语句在计算的各个所述类别上的概率分布。
一个实施方式中,对训练的意图分类模型通过类别温度调节来优化该模型的预测结果,主要利用测试集具体通过迭代过程学习到最终的类别温度向量结果。例如:
初始化所述类别温度向量T;基于对数还原初步意图结果的P得到的还原结果L,计算所述类别温度向量T下每个处理后的目标输入语句的类别;再重新统计所有处理后的目标输入语句在计算的各个所述类别上的概率分布P。进一步,所述初始化类别温度向量T=[t1,t2,t3,…tn],并设置迭代次数i=1,ti=1;根据每条处理后的目标输入语句在各个类别上的概率[(sentencei,classi1,classi2,…,classin)],使用softmax函数基于所述类别温度向量T和所述L进行回归处理得到每个候选标签的概率值,并选择概率最大的值作为当前目标输入语句的意图信息以确定对应的类别;重新统计所有处理后的目标输入语句在计算的各个所述类别上的概率分布P为新的概率向量P=[p1,p2,p3,…,pn]。
分析模块430,分析所述概率分布与目标数据对应的真实数据分布的差距。
一个实施方式中,可以计算重新统计的所述概率分布P与目标输入语句对应的真实数据分布Q的距离d,并将迭代次数i加1,准备到下一次迭代。例如:重新统计的概率分布或者说概率向量为P=[p1,p2,p3,…,pn],测试集中标注的语句对应的真实的数据分布情况为Q=[q1,q2,q3,…,qn],计算距离d=max(abs(Q–P))。
判断模块440,判断是否达到迭代条件,确定是否继续迭代以优化所述类别温度。
一个实施方式中,可以通过初始化T时设置的迭代次数i的累加来判断迭代次数i或距离d是否满足条件。进一步,判断迭代次数i或距离d是否满足条件可以是比较迭代次数i与预设的最大迭代次数max_i,以及,比较距离d与预设的最大距离max_d。
一个实施方式中,如果是满足条件则确定停止迭代,如果否则确定继续重复所述还原、计算、统计和分析的步骤以优化所述类别温度T。具体地,重复的迭代学习过程,能够更新意图分类模型的参数和类别温度T,实现模型优化。
进一步,判断为比较结果是当i>max_i或d<max_d时,满足条件,停止迭代。
输出模块450,停止迭代后输出最终的所述类别温度向量,以在所述意图分类模型预测时对预测结果进行调节。
一个实施方式中,通过测试集中数据对训练的意图分类模型类别利用类别温度向量T调节模型预测结果进行迭代学习,更新模型参数、包括更新所述类别温度向量T,在停止迭代学习过程(如重复还原、计算、统计和分析)后,输出最终的类别温度向量T=[t1,t2,t3,…tn]。
由此,得到学习后的温度向量T可以在意图分类模型进行预测输入语句的类别及各个类别的概率时,进行预测结果调节,以使得类别分布和各类别概率分布更符合真实的场景的分布情况,与真实数据分布情况更趋于一致,从而提高了模型预测的结果更准确。
本领域技术人员可以理解,上述装置实施例中的各模块可以按照描述分布于装置中,也可以进行相应变化,分布于不同于上述实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
【实施例5】
下面描述本发明的电子设备实施例,该电子设备可以视为对于上述本发明的方法和装置实施例的实体形式的实施方式。对于本发明电子设备实施例中描述的细节,应视为对于上述方法或装置实施例的补充;对于在本发明电子设备实施例中未披露的细节,可以参照上述方法或装置实施例来实现。
图5是根据本发明的一种电子设备的示例性实施例的结构框图。图5显示的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,该示例性实施例的电子设备200以通用数据处理设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同系统组件(包括存储单元220和处理单元210)的总线230、显示单元240等。
其中,所述存储单元220存储有计算机可读程序,其可以是源程序或都只读程序的代码。所述程序可以被处理单元210执行,使得所述处理单元210执行本发明各种实施方式的步骤。例如,所述处理单元210可以执行如图1和2所示的步骤。
所述存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(ROM)2203。所述存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备300(例如键盘、显示器、网络设备、蓝牙设备等)通信,使得用户能经由这些外部设备300与该电子设备200交互,和/或使得该电子设备200能与一个或多个其它数据处理设备(例如路由器、调制解调器等等)进行通信。这种通信可以通过输入/输出(I/O)接口250进行,还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)进行。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,电子设备200中可使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
【实施例6】
图6是本发明的一个计算机可读介质实施例的示意图。如图6所示,所述计算机程序可以存储于一个或多个计算机可读介质上。计算机可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。当所述计算机程序被一个或多个数据处理设备执行时,使得该计算机可读介质能够实现本发明的上述方法。
通过以上的实施方式的描述,本领域的技术人员易于理解,本发明描述的示例性实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读的存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台数据处理设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明的上述方法。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本发明可以执行计算机程序的方法、装置、电子设备或计算机可读介质来实现。可以在实践中使用微处理器或者数字信号处理器(DSP)等通用数据处理设备来实现本发明的一些或者全部功能。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,本发明不与任何特定计算机、虚拟装置或者电子设备固有相关,各种通用装置也可以实现本发明。以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种分类温度调节方法,其特征在于,该方法包括以下步骤:
对将目标输入语句输入到意图分类模型所获得的初步意图分类结果进行还原;
基于还原的结果,计算在类别温度向量下所述目标输入语句的类别,并统计所有目标输入语句在计算的各个所述类别上的概率分布;
分析所述概率分布与目标输入语句对应的真实数据分布的差距;
判断是否达到迭代条件,确定是否继续迭代以优化所述类别温度;
停止迭代后输出最终的所述类别温度向量,以在所述意图分类模型预测时对预测结果进行调节。
2.根据权利要求1所述的方法,其特征在于,对将目标输入语句输入到意图分类模型所获得的初步意图分类结果进行还原,具体包括:
处理目标输入语句,将处理后的目标输入语句输入到意图分类模型,得到初步意图分类的概率分布P;
通过对数函数log将所述概率分布P还原到Logit单位L。
3.根据权利要求2所述的方法,其特征在于,所述处理目标输入语句,具体包括:
定义意图特征词表,意图特征词表包括每个意图中相应的特征词;
对目标输入语句按意图特征词分割;
按照意图特征词表中所包括的意图特征词对所述分割后的目标输入语句进行标注,得到标注后的序列集合I=(x1,x2,…,xn);
其中,所有处理后的目标输入语句组成测试集。
4.根据权利要求2或3所述的方法,其特征在于,基于还原的结果,计算在类别温度向量下目标输入语句的类别,并统计所有目标输入语句在计算的各个所述类别上的概率分布,具体包括:
初始化所述类别温度向量T;
基于所述L,计算所述类别温度向量T下每个处理后的目标输入语句的类别;
重新统计所有处理后的目标输入语句在计算的各个所述类别上的概率分布P。
5.根据权利要求4所述的方法,其特征在于,
所述初始化类别温度向量T=[t1,t2,t3,…tn],并设置迭代次数i=1,ti=1;
基于所述L,计算所述类别温度向量T下每个处理后的目标输入语句的类别,具体包括:根据每条处理后的目标输入语句在各个类别上的概率[(sentencei,classi1,classi2,…,classin)],使用softmax函数基于所述类别温度向量T和所述L进行回归处理得到每个候选标签的概率值,并选择概率最大的值作为当前目标输入语句的意图信息以确定对应的类别;
重新统计所有处理后的目标输入语句在计算的各个所述类别上的概率分布P为新的概率向量P=[p1,p2,p3,…,pn]。
6.根据权利要求2至5中任一项所述的方法,其特征在于,分析所述概率分布与目标数据对应的真实数据分布的差距,具体包括:计算重新统计的所述概率分布P与目标输入语句对应的真实数据分布Q的距离d,并将迭代次数i加1。
7.根据权利要求1至6中任一项所述的方法,其特征在于,判断是否达到迭代条件,确定是否继续迭代以优化所述类别温度,具体包括:
判断迭代次数i或距离d是否满足条件;
如果否则确定继续重复所述还原、计算、统计和分析的步骤以优化所述类别温度;
如果是则确定停止迭代。
8.一种分类温度调节装置,其特征在于,包括:
还原模块,用于对将目标输入语句输入到意图分类模型所获得的初步意图分类结果进行还原;
计算统计模块,用于基于还原的结果,计算在类别温度向量下所述目标输入语句的类别,并统计所有目标输入语句在计算的各个所述类别上的概率分布;
分析模块,用于分析所述概率分布与目标输入语句对应的真实数据分布的差距;
判断模块,用于判断是否达到迭代条件,确定是否继续迭代以优化所述类别温度;
输出模块,用于停止迭代后输出最终的所述类别温度向量,以在所述意图分类模型预测时对预测结果进行调节。
9.一种电子设备,包括:
处理器;以及
存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器执行根据权利要求1至11中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,当所述一个或多个程序被处理器执行时,实现权利要求1至11中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110755740.6A CN113569918A (zh) | 2021-07-05 | 2021-07-05 | 分类温度调节方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110755740.6A CN113569918A (zh) | 2021-07-05 | 2021-07-05 | 分类温度调节方法、装置、电子设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113569918A true CN113569918A (zh) | 2021-10-29 |
Family
ID=78163589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110755740.6A Pending CN113569918A (zh) | 2021-07-05 | 2021-07-05 | 分类温度调节方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113569918A (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109063035A (zh) * | 2018-07-16 | 2018-12-21 | 哈尔滨工业大学 | 一种面向出行领域的人机多轮对话方法 |
CN110298391A (zh) * | 2019-06-12 | 2019-10-01 | 同济大学 | 一种基于小样本的迭代式增量对话意图类别识别方法 |
CN110334212A (zh) * | 2019-07-01 | 2019-10-15 | 南京审计大学 | 一种基于机器学习的领域性审计知识图谱构建方法 |
CN110633475A (zh) * | 2019-09-27 | 2019-12-31 | 安徽咪鼠科技有限公司 | 基于计算机场景的自然语言理解方法、装置、系统和存储介质 |
CN111191030A (zh) * | 2019-12-20 | 2020-05-22 | 北京淇瑀信息科技有限公司 | 基于分类的单句意图识别方法、装置和系统 |
CN111198938A (zh) * | 2019-12-26 | 2020-05-26 | 深圳市优必选科技股份有限公司 | 一种样本数据处理方法、样本数据处理装置及电子设备 |
CN111597320A (zh) * | 2020-05-26 | 2020-08-28 | 成都晓多科技有限公司 | 基于层次分类的意图识别装置、方法、设备及存储介质 |
CN111738017A (zh) * | 2020-06-24 | 2020-10-02 | 深圳前海微众银行股份有限公司 | 一种意图识别方法、装置、设备及存储介质 |
WO2020237869A1 (zh) * | 2019-05-31 | 2020-12-03 | 平安科技(深圳)有限公司 | 一种问题意图识别方法、装置、计算机设备及存储介质 |
CN112101044A (zh) * | 2020-11-02 | 2020-12-18 | 北京淇瑀信息科技有限公司 | 一种意图识别方法、装置及电子设备 |
CN112100349A (zh) * | 2020-09-03 | 2020-12-18 | 深圳数联天下智能科技有限公司 | 一种多轮对话方法、装置、电子设备及存储介质 |
CN112182214A (zh) * | 2020-09-27 | 2021-01-05 | 中国建设银行股份有限公司 | 一种数据分类方法、装置、设备及介质 |
CN112420049A (zh) * | 2020-11-06 | 2021-02-26 | 平安消费金融有限公司 | 数据处理方法、装置及存储介质 |
CN112559673A (zh) * | 2019-09-06 | 2021-03-26 | 阿里巴巴集团控股有限公司 | 语言处理模型的训练方法及装置、电子设备及存储介质 |
CN112597310A (zh) * | 2020-12-25 | 2021-04-02 | 深圳市声希科技有限公司 | 领域和意图分层联合分类方法、装置、设备及存储介质 |
-
2021
- 2021-07-05 CN CN202110755740.6A patent/CN113569918A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109063035A (zh) * | 2018-07-16 | 2018-12-21 | 哈尔滨工业大学 | 一种面向出行领域的人机多轮对话方法 |
WO2020237869A1 (zh) * | 2019-05-31 | 2020-12-03 | 平安科技(深圳)有限公司 | 一种问题意图识别方法、装置、计算机设备及存储介质 |
CN110298391A (zh) * | 2019-06-12 | 2019-10-01 | 同济大学 | 一种基于小样本的迭代式增量对话意图类别识别方法 |
CN110334212A (zh) * | 2019-07-01 | 2019-10-15 | 南京审计大学 | 一种基于机器学习的领域性审计知识图谱构建方法 |
CN112559673A (zh) * | 2019-09-06 | 2021-03-26 | 阿里巴巴集团控股有限公司 | 语言处理模型的训练方法及装置、电子设备及存储介质 |
CN110633475A (zh) * | 2019-09-27 | 2019-12-31 | 安徽咪鼠科技有限公司 | 基于计算机场景的自然语言理解方法、装置、系统和存储介质 |
CN111191030A (zh) * | 2019-12-20 | 2020-05-22 | 北京淇瑀信息科技有限公司 | 基于分类的单句意图识别方法、装置和系统 |
CN111198938A (zh) * | 2019-12-26 | 2020-05-26 | 深圳市优必选科技股份有限公司 | 一种样本数据处理方法、样本数据处理装置及电子设备 |
CN111597320A (zh) * | 2020-05-26 | 2020-08-28 | 成都晓多科技有限公司 | 基于层次分类的意图识别装置、方法、设备及存储介质 |
CN111738017A (zh) * | 2020-06-24 | 2020-10-02 | 深圳前海微众银行股份有限公司 | 一种意图识别方法、装置、设备及存储介质 |
CN112100349A (zh) * | 2020-09-03 | 2020-12-18 | 深圳数联天下智能科技有限公司 | 一种多轮对话方法、装置、电子设备及存储介质 |
CN112182214A (zh) * | 2020-09-27 | 2021-01-05 | 中国建设银行股份有限公司 | 一种数据分类方法、装置、设备及介质 |
CN112101044A (zh) * | 2020-11-02 | 2020-12-18 | 北京淇瑀信息科技有限公司 | 一种意图识别方法、装置及电子设备 |
CN112420049A (zh) * | 2020-11-06 | 2021-02-26 | 平安消费金融有限公司 | 数据处理方法、装置及存储介质 |
CN112597310A (zh) * | 2020-12-25 | 2021-04-02 | 深圳市声希科技有限公司 | 领域和意图分层联合分类方法、装置、设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
LIRONG QIU等: "Query Intent Recognition Based on Multi-Class Features", 《IEEE ACCESS》, pages 52195 - 52204 * |
王光慈: "问答系统的用户出行领域意图识别", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2020, pages 138 - 573 * |
迟海洋等: "基于BERT-BiGRU-Attention的在线健康社区用户意图识别方法", 《河北科技大学学报》, vol. 41, no. 3, pages 225 - 232 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021174757A1 (zh) | 语音情绪识别方法、装置、电子设备及计算机可读存储介质 | |
CN110473531B (zh) | 语音识别方法、装置、电子设备、系统及存储介质 | |
Wu et al. | Self-supervised dialogue learning | |
CN106297800B (zh) | 一种自适应的语音识别的方法和设备 | |
WO2022134894A1 (zh) | 语音识别方法、装置、计算机设备及存储介质 | |
WO2020186712A1 (zh) | 一种语音识别方法、装置及终端 | |
CN108710704B (zh) | 对话状态的确定方法、装置、电子设备及存储介质 | |
CN110853628A (zh) | 一种模型训练方法、装置、电子设备及存储介质 | |
JP7178394B2 (ja) | 音声信号を処理するための方法、装置、機器、および媒体 | |
CN115357719B (zh) | 基于改进bert模型的电力审计文本分类方法及装置 | |
Padi et al. | Towards relevance and sequence modeling in language recognition | |
CN113609284A (zh) | 一种融合多元语义的文本摘要自动生成方法及装置 | |
CN113434683A (zh) | 文本分类方法、装置、介质及电子设备 | |
CN111984780A (zh) | 多意图识别模型训练方法和多意图识别方法及相关装置 | |
JP5975938B2 (ja) | 音声認識装置、音声認識方法及びプログラム | |
CN112036186A (zh) | 语料标注方法、装置、计算机存储介质及电子设备 | |
Chandak et al. | Streaming language identification using combination of acoustic representations and ASR hypotheses | |
Xia et al. | Learning salient segments for speech emotion recognition using attentive temporal pooling | |
CN110287999B (zh) | 基于隐变量模型的故事生成方法及装置 | |
CN112257432A (zh) | 一种自适应意图识别方法、装置及电子设备 | |
Wu et al. | Miscommunication handling in spoken dialog systems based on error-aware dialog state detection | |
CN116361442A (zh) | 基于人工智能的营业厅数据分析方法及系统 | |
CN116978367A (zh) | 语音识别方法、装置、电子设备和存储介质 | |
CN113362809B (zh) | 语音识别方法、装置和电子设备 | |
CN115600595A (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 |