当前位置: 首页 > 科技观察

概念标签构建技术在垂直领域的实践

时间:2023-03-18 23:56:37 科技观察

目的概念(Concept)包含世界知识,引导人类认知发展,具有抽象和概括的特点。标签挖掘和标签系统构建也是一个重要的研究课题,尤其对于UGC/PGC文档的处理更为实用和重要。但目前的工作主要集中在综合领域的文档概念抽取,垂直领域的概念标签挖掘工作相对较少。另外,从推荐系统中使用概念标签的角度来看,要求概念标签必须符合用户的兴趣和用户认知,因此直接从文章或百科中提取常见的、粗粒度的、肤浅的概念将与用户认知与兴趣矛盾,不利于在推荐系统中的应用。例如:别克GL8是一个“mpv”(一个常见的概念),用户可能更感兴趣的是“省油mpv”或者“进口mpv”。另外,对于垂直领域的特点,简单地提取表面概念也会与用户的认知相矛盾。例如:丰田普拉多是一款“越野车”(一个肤浅的概念),用户更可能对专业汽车APP中的“适合山路和越野的SUV”或“硬派SUV”感兴趣。的概念。从UGC/PGC等素材中挖掘概念标签并构建标签系统是内容理解的重要任务。如下图所示,一般来说,内容理解按照抽象的程度可以分为业务层、抽象层和细粒度层,每一层都会产生一些语义结果。分类和主题与业务端直接强耦合,而细粒度层语义跨度更大,更分散。概念标签、主题和需求在两层之间,形成一个抽象层。在推荐中,标签(Tag)被定义为能够代表文章语义的最重要的词或短语,是比分类和主题更细粒度的语义。标签可以认为是推荐系统的“血液”,作用于推荐系统的方方面面,打散多样性、画像维度、排序模型特征、召回模型特征等。由于篇幅原因,本文主要介绍概念标签挖掘相关工作,并说明期间遇到的问题和解决方案。概念标签的文档标记模型将在下一篇文章中介绍。候选概念标签挖掘这部分将讲解候选概念标签挖掘的三种方法,以及遇到的问题和解决方法。为了使挖掘的概念标签符合用户的认知和兴趣点,我们选择从查询日志中挖掘候选概念。挖掘方法包括无监督策略、半监督方法和监督方法。让我们举一些例子来展示我们从查询中挖掘出的概念。下面看一下候选概念挖掘的总体框架1.基于模式匹配的无监督挖掘方法这种方法主要针对查询,目标是从查询中提取出符合模式的概念。这样做有两个好处:a)由于是用户输入的query,提取的概念词或词组更符合用户的认知。b)根据query的频率和点击率,筛选出用户感兴趣的词,定义概念标签的粒度。例如,“适合越野山路的车辆”的概念可以进行缩放以获得上位词。上义词可以是“off-roadvehicle”,下义词可以是“mountainoff-roadsuv”。如果说“适合越野山路的车辆”这个概念比其他两个概念出现频率更高,那么我们认为这个概念的粒度更符合用户的兴趣点和认知点。如流程图最左侧所示,该方法首先根据预定义的模式提取概念。比如“最XXX的车”、“最适合XXX的车”。通过这个模型可以提炼出一些概念,比如“最便宜买得起的车”中的“便宜买得起的车”,“适合露营的小车”中的“适合露营的车”。但是预定义的模式毕竟是有限的,我们仍然需要在现有概念的基础上发现新的模式。它可以分为两种方法:第一种方法是基于机器的方法来发现新模式。首先,我们根据“便宜实惠的汽车”和“适合露营的汽车”的概念找出所有包含这些概念的查询,然后从这些查询中找到新的模式。例如,“便宜买得起的车”可以匹配到“比亚迪有便宜买得起的车吗?”并且可以找到新的模式,例如“acarwithXXX”。然后通过匹配新模式得到一个新概念。这里的关键点是如何评估新模式是否可用。需要保证模式具有一定的通用性,否则匹配很少的query是没有意义的;还需要确保模式不会太宽泛,导致匹配查询过多。.例如,“xxcar”是一个过于宽泛的模式,它可以匹配语料库中20%的查询。在实践中,对于一个新的模式P,会计算与P匹配的query的覆盖率a,只有当a在一定范围内时才会将P加入模式库。第二种方法是根据品牌和型号发现新模式。首先,我们找出所有包含品牌和型号的查询,然后屏蔽品牌和型号,最后替换屏蔽字符并从剩余查询中提取概念。比如下图,我们可以通过这种方式得到“夜间氛围灯”和“改装航空座椅”的概念。最后,该方法从最近一段时间的查询中得到了几个概念。经过人工评估,表明该方法概念的挖掘精度还是不错的。2.基于AutoPhase的半监督挖掘方法基于模式匹配的方法的优点是准确率高,符合用户的认知和兴趣,并且相对容易定义概念的粒度。但缺点也很明显。依赖人工标定模式,输出的概念不够,并且由于用户输入,提取的概念存在词序颠倒、过于口语化等问题。鉴于此,我们使用AutoPhase方法从点击率和曝光率高的文章标题中抽取概念。AutoPhase是韩嘉伟团队提出的自动词组提取框架。该框架独立于领域,几乎不需要人工或语言分析,并包括一种远程短语质量估计训练方法,可提高短语提取的质量。AutoPhase方法的整体流程如上图所示。AutoPhase基于远程监督提取候选短语。根据wiki条目和文档,选择适合短语的正例作为PositivePool,选择不适合短语的负例作为NoisyNegativePool。由于positiveexample是wiki词条,比较准确,但是NegativePool中有噪声,所以文章中提到了使用集成学习来降噪。具体实现方法是构建多组基础分类器,分别从PositivePool和NegativePool中随机抽取K个候选。为了尽可能降低基本分类器的训练误差,不剪枝构建决策树的方式,当扰动训练集中不存在共享相同特征值的两个正负短语时,我们认为在这次决策树可以达到100%的训练准确率。最后按排序输出排序后的结果。可以看看AutoPhase方法抽取的概念。AutoPhase最初的方法是利用维基语料库构建正例和负例。这里我们将方法一得到的概念改成正例,加入到PositivePool中。随机选取包含概念的文章经过分词和POSTag处理后的token序列,作为Negativeexamples加入到NegativePool中。最后,AutoPhase结果虽然是可用的短语,但可能不适合作为概念。比如《冰冷女神》、《比亚迪汽车》。首先,我们可以使用一些规则进行排除,比如检测品牌车系列是否包含,首末词的词性,词组的长度,分词后包含的token个数,以及很快。其次,我们使用语义方法。对于提取出的短语P,我们可以利用语义相似度得到相关的query,然后根据query的频率进行过滤。最终我们利用AutoPhase框架从近期点击率较高的文章标题中提取出大量的multiphrase,并使用上述方法进行筛选,最终得到概念(不包括方法1)生成的概念。经过人工评估,这种方法概念的可用率比较高。3.基于NER监督方法的尝试上述两种方法的优点是显而易见的,只需要少量的劳动,不依赖于大量的标记数据。但缺点也很明显,准确率低,结果不能直接作为概念,需要通过规则过滤。所以如果我们考虑使用端到端的模型来抽取概念。我们的想法是使用NER方法来提取概念。使用BIO标签系统预测概念所在token的BIO标签。我们主要做了几个方面的微创新。一方面是监督数据的构建。如果手动标记NER模型训练数据,则成本高且耗时。因此,我们监管数据的来源是前两种挖掘方式的结果。训练数据的构造如下:首先,我们挖掘概念和查询之间的映射关系。以及查询和标题的点击数据。这样我们就得到了concept和title的对应关系,所以在构造数据的时候,把concept对应的token看成一个实体,标记为B标签和I标签,其他词标记为O。训练,我们使用经典的预训练模型Bert-CRF做finetune。模型结构如下:里面有个trick。bert和crf层需要设置不同的学习率,这样crf层才能充分学习标签的概念。分布,如果设置相同的学习率,会削弱crf层纠正标签的作用。最终,该方法的标签输出率略高于上述无监督和半监督方法,准确率也有所提高。4.标签重复问题我们在整理标签库和标注训练数据时发现了这个问题。这个问题有两种表现形式。a)同一个概念有两个不同的标签,比如“好看的车”和“好看的车”b)两个概念之间存在isA关系,比如“适合长途车”和“适合适用于高速行驶的长途汽车”。这其实属于标签库排列的问题。标签重复不仅会造成标签库冗余,还会导致后续标注时指标计算不准确。所以必须解决标签重复问题。首先,分析问题的根源。一个原因是我们提取的语料来自query,这导致不同概念的用户会有不同的表达。另一个原因是我们在抽取时只判断候选概念是否准确,而忽略了与其他概念的关系。针对这个问题,我们采用了两种解决方案。方案一:利用编辑距离和同义词过滤掉包含同义词或词序不同的概念对。例如,“carwithwhiteinterior”和“carwithwhiteinterior”可以计算编辑距离。“适合家庭自驾游的车”和“适合家庭自驾游的车”可以用wordembedding来计算相似度。方案二:利用句子的语义相似度,过滤出语义相似的概念对。比如“carssuitableforsmallgirls”和“carssuitedforthickchildren”,使用simbert模型计算句子的语义相似度。经过筛选,我们最终得到了没有重复的概念标签。总结本文介绍并实践了概念标签挖掘的通用方法和技术方案。一共有基于模式匹配的无监督方法,基于AutoPhase框架的半监督方法,以及基于NER的监督方法。关系和实际效果。此外,还介绍了针对垂直领域的特点所做的优化,也介绍了标签重复等实际问题的解决方案。下一期主要介绍概念标签标注的相关方法。