深度结合NLP领域最强大模型,赋能人力资本领域算法升级

本文主要是介绍深度结合NLP领域最强大模型,赋能人力资本领域算法升级,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

                             

                                                                        WHAT'S BERT ? 

 

BERT (Bidirectional Encoder Representations from Transformers),是google于2018年底提出的一个预训练语言模型,它通过无监督的方法对大规模的自然语言的语料进行学习,从中提取出人类语言的内在基本规律,辅助后续的自然语言理解的相关任务。

 

例如,对于一段文本:e成科技是HR+AI赛道的领跑者,在NLP领域有很多的技术积累。

 

用通俗的语言理解,BERT在学习的是以下两方面的能力:

 

1.当输入了“e成科技是一家HR+AI__的领跑者”的时候,模型要学习到填入”赛道”是最佳答案,而不是其他的任何的无关词。

 

2.当输入了“e成科技是HR+AI赛道的领跑者”的时候,模型要学习到”在NLP领域有很多的技术积累”是最佳的下一句,而不是其他的任何句子。

 

以上两方面的能力,可以理解为是人类语言的基本规律,那么当模型学习到这种规律之后,有什么用呢?

 

BERT的强大能力

以BERT模型为基础,通过fine tune的方式,可以在BERT已经习得的语言知识的基础上,快速构建对其他自然语言任务的学习和理解,相比于普通的模型,其中的增益主要体现在两个方面:

 

1.理解更深入。

由于已经在大量的自然语言中习得了基本的语言规律,当模型面临一个新的自然语言任务的时候,模型可以利用的知识就包含了已经习得的海量语言规律+新任务里的知识,使得模型能够更加深入新任务所表达的规律。

 

2.更少的样本依赖。

在BERT以前,凡是涉及自然语言理解的任务,需要少则数万,多则数十万的训练样本,才能达到一个基本的效果,而训练样本不是自然就有的,大多需要人工标注。BERT出现之后,BERT可以基于已经习得的语言规律,更好的利用样本,使依赖的标注数量降低至少一个量级,极大加快模型的理解速度。

 

 

                                      

                                                                            BERT原理和BERT升级

 

BERT自2018年底诞生后,在业界和学术界迅速激起一层研究热潮,不断的出现以BERT为基础的改良模型,这其中典型的中文模型代表包括来自哈工大的bert_wwm以及来自百度的 ernie模型。下面我们将简单介绍BERT-base\BERT_wwm\ernie模型的基本原理。

 

BERT-base

 

BERT综合考虑了以往语言模型(例如ELMo\GPT)的缺点,基本组件使用Transformer模块,并将单向的语言模型改进成双向模型,其结构如图1所示。

 

图1 BERT: Bidirectional EncoderRepresentations from Transformers

 

BERT所提出的双向预训练模型提出了两个预训练目标,分别是Masked Language Model(MLM)和Next Sentence Prediction(NSP)。MLM随机选取15%的词进行掩码,被选中的词中,80%的词用[MASK]标记替代,10%的情况用随机挑选的词替代,另外10%的情况维持不变。由于在使用预训练模型时,输入的文本不会有[MASK]标记,因此采用这种掩码机制可以有效避免模型误以为目标词预测是针对[MASK]标记的,从而在下游任务中也能有效预测目标词。因此,BERT相关的模型又被称为掩码语言模型(MLM)。下一句预测(NSP)任务在预训练过程中,按50%的概率选择实际输入中当前句子的下一个句子,并标为IsNext标签,另外50%的情况随机从语料中选择一个句子拼接在当前句子后,并标为NotNext标签。预训练模型同时优化[MASK]目标词预测及下一句预测的目标。

 

在下游任务的改造方面,类似于GPT,BERT也针对不同任务提出了不同构造输入的方式,包括句子关系分类、文本分类、阅读理解及序列标注,构造方法如图所示。对输入只有一个句子的情况,直接添加[CLS]字符,对有两个句子的情况,将句子通过分隔符拼接再添加[CLS]字符。每种任务的输入都由三个部分组成,每个单词的向量表示(Token Embedding),句子的向量表示(Segment Embedding,用于区分输入的不同句子)及位置向量表示(Position Embedding)。

 

BERT提供了基于字符mask机制的中文预训练模型BERT-Base, Chinese。而对于中文来说,一个词由不同的字符组成,而BERT提供的字符级的mask机制对中文来说会有一些限制,因此对中文的预训练模型的改进则体现在对整个单词进行mask(即全词mask,whole-word-mask)。

 

BERT_wwm

 

哈工大讯飞联合实验室开放的中文预训练模型BERT-wwm[17],与下文介绍的百度的ERNIE类似,是采用了全词mask策略(Whole Word Masking, wwm),对同属一个词的所有子词进行mask、保留或替换操作。数据预处理的分词过程采用了哈工大LTP分词工具。第一版本的BERT-wwm采用了中文维基百科数据进行预训练,第二版本BERT-wwm-ext提供了在更大通用语料(5.4B词数,包括维基百科和通用数据)上预训练的模型。

 

ERNIE

 

比于BERT的字符级mask,ERNIE提出了基于先验知识的mask策略。即每次mask连续的短语或实体。如对句子“哈尔滨是黑龙江的省会,国际冰雪文化名城”进行mask,依据BERT的字符级mask策略得到“哈 [mask] 滨是 [mask] 龙江的省会,[mask] 际冰 [mask] 文化名城”,而ERNIE的mask方式为“[mask][mask] [mask] 是黑龙江的省会,国际 [mask] [mask] 文化名城”。在训练数据方便,ERNIE使用了中文维基百科,百度百科,百度新闻及百度贴吧的论坛对话数据,并采用类似于BERT 下一句预测的对话语言模型(Dialogue Language Model, DLM)来建模对话句对结构。

 

 

                                           

                                                                                  人力资本领域应用

 

e成科技作为HR+AI赛道的领跑者,以先进的NLP能力不断引领HR领域内的AI升级。我们从BERT一经问世就密切关注其研究进展,在将近一年的时间内,我们积累了大量的探索和应用的经验,下文从BERT直接应用、专有BERT研发、合理性判定三个方面阐述了我们的一些探索。

 

BERT的直接应用

 

(1)基于BERT的情感分析模型

情感分析是语义理解里的核心模型之一,其解决的主要问题是一句具有主观情感的话语进行理解,识别出其中蕴含的正面、负面或者中性的情绪。

 

举例如下:

1. 该面试者的沟通能力非常强

2.该面试者沟通方面有一些不足,

3.该同学来自上海。

 

模型对以上1 2 3句进行情感分析,1表达积极情绪,2表达消极情绪,3表达中性情绪。

 

在人力资本领域,情感分析模型的应用随处可见,在e成内部,我们使用情感分析模型进行公司新闻舆情、公司评价、面试官评价、绩效文本分析、对话情绪识别等基础的分析工作,助力人力资本领域内的洞见形成。

 

在BERT到来之前,e成就自研了基于lstm+softmax的情感分析模型,用于对公司的评价信息进行情感分析,取得相对不错的效果。但是仍然存在主要两点问题:

 

1.训练出一个有效模型需要的数据量庞大。我们使用了15w的训练数据,才训练出了一个准确率在90%的模型,15w的数据量不仅意味了更大的收集和标注数据难度,而且意味了更长的训练时常和资源消耗。

 

2.迁移能力差。我们尝试使用基于公司评价数据的模型直接对面试官评价数据进行分类,发现效果下降明显,大概降低了近15个百分点,自然语言处理有天然的领域属性,而一般的模型领域迁移能力有明显的局限。

 

2018年底,我们尝试了基于BERT的情感分析模型,新训练的模型准确率达到了93%,更重要的是,在以上两方面问题上,基于BERT的模型有质的提升:

 

1.训练模型需要的数据下降了至少一个量级。我们基于BERT尝试进行少量样本的学习,发现,训练到同样的效果,BERT需要的数据降低了一个量级。

2.强大的迁移能力。当我们把在公司评价数据集上训练的模型迁移到面试官评价数据集的时候,模型的效果几乎没有下降,这证明了BERT强大的领域迁移能力。

 

(2)基于BERT的实体识别模型

实体识别任务是指从一段文本中识别出特殊的名词,是NLP领域语言理解的核心任务之一。

 

在人力资本领域,我们需要识别的实体,主要包括(但不限于)公司、专业、职能、技能、学历、证书、学校等,从一段文本中识别出这些实体,是理解这段文本内容的基础,而基于识别结果并链接到知识图谱,更是下一步进行人岗匹配工作的核心要素。

 

举一个实体识别的例子如下:

我毕业于北京大学,是一名算法工程师,现在在阿里巴巴就职。

 

从上面这句话,我们的识别结果是,学校-北京大学,职能-算法工程师,公司-阿里巴巴。

 

我们使用BERT进行实体识别模型的训练,取得很好的效果。整体识别的f1值达到了0.79,相比于传统的模型提升了5-10个百分点。

 

(3)基于BERT的名词短语识别模型

 

众所周知,对文本进行理解的第一步就是要进行分词,而人力资本领域充满了各种专有名词,在分词的时候确保一个名词短语不被错误的切分开,是正确的理解人力资本领域内的各种文本的重要前提。

 

为此,e成在很久以前就尝试了各种名词短语识别的算法,我们将名词短语识别直接建模成为序列标注任务,同时基于cv语料上的识别结果进行相关统计过滤,识别出了大量的名词短语列表。

 

例如下面的句子:

 

e成科技是是一家AI创新的公司,利用自然语言理解技术,提升人力资本领域内各个任务的智能化程度。

 

典型的切词会把上文中的自然语言理解技术切分为 自然/语言/理解/技术,这种切分方法会对理解文本和进行人岗匹配等过程产生很多不利的影响。

 

我们使用基于BERT的模型识别出上文中自然语言理解是一个名词短语,进而辅助在切词的时候保留其完整性。

 

人力资本领域的专有BERT

 

业界和学术界的经验表明,当基于某个领域内的大量自然语言的进行继续无监督训练之后,BERT的效果会得到进一步的提升,基于此,我们打造了人力资本领域内的专有BERT,使得领域内的各种模型可以继续提升

 

继续无监督训练需要两个关键因素,一是大量的数据,二是充足的算力。得益于e成在人力资本领域内多年的数据积累,以及公司作为AI公司充足的算力,我们的无监督训练得以实现。同时,我们选择近期效果更好的BERT的升级模型-ERNIE,作为我们继续训练的基础。以下,我们称这个模型为cv预训练模型。

 

数据方面,我们基于简历中的工作经历字段的数据进行全词mask预训练。考虑到通过10次随机mask之后的数据会大幅扩增,因此此处采用了大约5G的CV数据进行预训练。算力方面,我们使用8块v100GPU(目前业界算力最强GPU)进行训练,总共训练约一周的时间。

 

CV预训练方法

 

预训练过程包括预处理和预训练两个阶段。数据预处理旨在对原始数据进行掩码并进行句子拼接。在预处理之前,首先需要将原始数据分词,并将数据按行分句,按空行分段。这里我们加入由e成多年积累的各个实体的词典库作为分词的用户字典。预处理时,对属于一个词的字符之间添加“##”标识来区分词和单字。如“幼儿园”经过tokenizer之后会变成“幼##儿 ##园”,若mask策略随机选择了“幼”这个词替换成[MASK],也会同时将“儿”和“园”一起mask。构造下一句预测数据时,若当前文档只有一个句子,或者以50%的随机概率从其他文档随机抽取一个句子拼接到当前句子来作为下一句预测的负样本,另外50%的情况是选择当前文档的下一个句子拼接,作为下一句预测任务的正样本。处理完一组数据后,注意需要将中文连续词前面的‘##’符号去掉防止影响后续的预训练过程。

 

CV预训练模型评估

 

我们选择之前提及实体识别任务,验证我们的cv预训练模型的效果。我们分别对同一组数据进行了四组实验验证。包括:基于BERT模型直接fine-tune,基于CV数据预训练BERT之后的模型进行fine-tune,基于ERNIE模型直接fine-tune,和基于CV数据预训练ERNIE之后的模型进行fine-tune。

 

为评估实体识别的效果,分别从标签数量和实体范围角度进行了评估。例如 “拥有高中教师资格证”对应的标签为 “O O B-Certificate I-CertificateI-Certificate I-Certificate I-Certificate I-Certificate E-Certificate”,按标签数目评估即判断标签是否正确,而按实体范围评估则要求标签能正确区分实体的起始和终止边界,若预测标签为“O O B-CertificateI-Certificate I-Certificate I-Certificate E-Certificate O O”,则按标签数目评估时正确标签有6/9,但按实体范围评估准确率为0/1。

 

表3和表4展示了基于BERT原始模型及用CV数据预训练后的模型在实体识别任务上的对比,其中P、R、F分别代表准确率、召回率和F1-score。可以看出,根据标签数量评估时,CV数据预训练后的模型相比原始BERT在准确率、召回率和F1-score上分别提升了1.35%,1.35%和1.68%。按实体范围评估时,CV预训练后的模型比原始BERT在准确率和F1-score上分别提升了1.69%和2.03%.

 

基于ERNIE的CV数据预处理后相比于基于BERT的CV数据预处理后在标签数目上分别提升了10.29%,2.61%,5.71%,在实体范围评估上提升了3.12%,0.64%和1.13%。由此可以看出,采用领域数据对预训练模型进行进一步的预训练,有助于提升领域下游任务的表现效果。

 

表3 BERT原模型及CV数据预训练后模型在实体识别任务上按标签数量评估的对比

 

表4 BERT原模型及CV数据预训练后模型在实体识别任务上按实体范围评估的对比

 

基于BERT的合理性判别

 

(1)对话中句子的合理性识别

 

为了识别Bot(聊天机器人)对话过程中,用户输入的一句话是否是一个合理的句子,我们应用了BERT对用户输入的query进行合理性的判定,对于识别出用户随意输入的句子,我们在Bot进行了特殊的回复设定,有效的增加了Bot对话过程对用户输入的理解能力。  

 

例如以下两句话:

1.请问公司的地址是什么

2.阿萨尔塔尔哇嘎时高时低

 

BERT模型会基于语言模型的预测结果,对1和2进行困惑度打分,过高的困惑度意味着这不是一个自然语句,进而触发特定的对话逻辑。

 

(2)公司名称的合理性判定

 

从自由文本中准确的识别公司名,是一项难度很大的任务,这其中一个很重要的点就是如何判定某一段文本在句子中是一个公司名,还是碰巧是其他词语,例如如下两句话:

 

我本科毕业后,一直在京东从事算法开发工作。

我们公司位于北京东边的一个商业中心。

 

从这两句话中,我们都可以提取词语‘京东’,而且京东确实一个公司,但是很明显在语句2中,京东所表达的并不是一个公司。此时,我们就可以使用基于BERT的语言模型进行相关的判定,我们将两句话中的京东都替换成百度,发现对第二句话模型预测句子的合理性出现了大幅的降低,可以判定在第二句中提取的京东不是一个真正的公司。我们正在探索使用此类方法,来进一步提升我们实体识别的准确率。

 

 

                                      

                                                                                           总结

 

本文主要阐述了BERT的背景、原理、模型升级和人力资源领域的落地应用,作为一种预训练语言模型,BERT在NLP领域取得了极大的成功,e成作为HR+AI赛道的领跑者,紧跟业界最新的研究前沿,积极探索落地应用并取得了一定的成果。接下来,我们会从模型加速、蒸馏、小规模语言模型等方面,持续的进行相关的探索。

 

 

不管是在文本分类、文本相似度、情感分析、通用实体识别、语言模型、阅读理解等NLP能力方面,还是在语音分析、视频面试等音视频能力、人力资源知识图谱、简历解析、画像推理、BEI访谈等应用能力方面,e成科技将BERT技术应用其中,并基于具体场景做了很多技术优化,如样本优化、性能优化等,并基于人力资源场景语料专门训练了Bert模型。同时,我们把它平台化,把很多其他NLP工具集中在平台里,未来可以做到更强的模型,更加贴合业务。

 

基于以上领先的AI技术和深厚AI能力的积累,e成科技推出HR行业首个AI开放平台,并已实现AI能力中台化,即⽤即取,高效连接算法能力和业务诉求;同时对外开放AI能力,将多年AI能力积累开放给所有HR行业友商,助力人力资本智能化升级。

 

 

作者:e成科技AI算法团队

参考文献:

[1] ACL主席周明:一起拥抱 ACL 和 NLP 的光明未来, https://www.msra.cn/zh-cn/news/features/acl-2019-ming-zhou

[2] 张俊林,从Word Embedding到Bert模型—自然语言处理中的预训练技术发展史, https://zhuanlan.zhihu.com/p/49271699

[5] Vaswani A, ShazeerN, Parmar N, et al. Attention is all you need[C], Advances in neuralinformation processing systems. 2017: 5998-6008.

[6] Devlin J, Chang MW, Lee K, et al. BERT: Pre-training of Deep Bidirectional Transformers forLanguage Understanding[C], NAACL, 2019: 4171-4186.

[16] Sun Y, Wang S, LiY, et al. ERNIE: Enhanced Representation through Knowledge Integration[J].arXiv preprint arXiv:1904.09223, 2019.

[17] Cui Y, Che W, LiuT, et al. Pre-Training with Whole Word Masking for Chinese BERT[J]. arXivpreprint arXiv:1906.08101, 2019.

 

这篇关于深度结合NLP领域最强大模型,赋能人力资本领域算法升级的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/327227

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

康拓展开(hash算法中会用到)

康拓展开是一个全排列到一个自然数的双射(也就是某个全排列与某个自然数一一对应) 公式: X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0! 其中,a[i]为整数,并且0<=a[i]<i,1<=i<=n。(a[i]在不同应用中的含义不同); 典型应用: 计算当前排列在所有由小到大全排列中的顺序,也就是说求当前排列是第

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

【数据结构】——原来排序算法搞懂这些就行,轻松拿捏

前言:快速排序的实现最重要的是找基准值,下面让我们来了解如何实现找基准值 基准值的注释:在快排的过程中,每一次我们要取一个元素作为枢纽值,以这个数字来将序列划分为两部分。 在此我们采用三数取中法,也就是取左端、中间、右端三个数,然后进行排序,将中间数作为枢纽值。 快速排序实现主框架: //快速排序 void QuickSort(int* arr, int left, int rig

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

poj 3974 and hdu 3068 最长回文串的O(n)解法(Manacher算法)

求一段字符串中的最长回文串。 因为数据量比较大,用原来的O(n^2)会爆。 小白上的O(n^2)解法代码:TLE啦~ #include<stdio.h>#include<string.h>const int Maxn = 1000000;char s[Maxn];int main(){char e[] = {"END"};while(scanf("%s", s) != EO

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验