主修课程:
机器学习,自然语言处理,深度学习
(1)正则化方法
L1、L2 范数,提前终止,数据集增强,多任务学习,Dropout, label smoothing 等方法
(2)优化方法
随机梯度下降法,动量方法,Nwsterov 动量方法,自适应学习率方法(AdaGrad,RMSProp,Adam)
(3)编程语言
熟练使用熟悉 Python,pytorch,paddle
有5年自然语言处理方面的工作经验,做过机器翻译,实体识别,合同关系抽取,以及其他与深度学习模型相关的工作。
1.实体抽取
问题描述:
数据:人工标注的新闻相关方面的语料,约 15 万条。
标签:公司名称,组织名称,产品名称,人名,地点,职位,时间。
模型:bert-base 模型上添加一层全连接
测试结果: 验证集指标 85.7%,由于公司名和组织名存在交叉,指标似乎不高,但实际测试基本上找不到问题。
2.合同实体关系抽取
问题描述:
(1)识别合同中相关实体,包括:合同编号,签约地点,签约时间,合同有效开始日期,合同有效结 束日期,
合同有效期限,争议解决。
(2)识别合同中相关参与方的关系,例如:
甲方(借款人):宋元东 身份证号:19285419930712489X
乙方(出借人):北京银行 统一社会信用代码:45344358701
甲、乙双方就下列事宜达成一致意见,签订本合同。
对于本例:希望抽取如下的关系链:
宋元东--->甲方--->借款人
北京银行--->乙方--->出借人
实现:涉及的关系类型只有一种,而实体类型较多,且在【一般实体抽取】工作中已有实体抽取模型,考虑 到快速实现,
这里直接采用把关系抽取建模成实体抽取的形式,上例中的关系可转化为下面的形式:
{{k-role-right_1:甲方}}({{k-role:借款人}}):{{v-role-left_2:宋元东}} 身份证号:19285419930712489X
{{k-role-right_1:乙方}}({{k-role:出借人}}):{{v-role-left_2:北京银行}} 统一社会信用代码:45344358701
甲、乙双方就下列事宜达成一致意见,签订本合同。
模型:bert-base 模型上添加一层全连接
数据:对约 1200 篇合同进行人工标注校对,生成约 12000 条数据。
数据增强:
· 对包含 3 级的 role 数据,随机交换顺序;
· 对合同参与方前面有冒号时,以 p=0.5 随机删除冒号或替换为空格;
· 对于标签以 v-role 开始的,以 p=0.3 随机多次重复,重复次数在 2-4 之间随机;
· 从 2 级的 role 数据构造生成 3 级的 role 数据;
· 对于非标签字符, 以 p=0.03 随机插入或删除;
· 对篇章级正例数据按 p=[0.5-不添加, 0.25-头部添加, 0.25-尾部添加]随机添加负例。
数据修复:
标注过程中存在少量的错标、漏标的情况,需要进行修复,所以使用在现有数据上训练的模型对训练 语料进行预测,使用
混淆矩阵的形式,将模型预测结果与原始语料进行对照,,并按概率大小排序, 最后对错标和漏标概率大的进行修复。
测试结果:
验证集上宏平均 F1 约 90%,实际测试中错误率很小。
3.使用模版工具生成训练数据
例如:
【文本】: 租赁期间,房屋、水、电、气、暖、通信、有线电视、物业管理由【甲】【乙】承担。
【对应的模版是】: QIJIAN DOU MONEY_NAME{2,5}/objectOrdinary_<r1:a2>_pay YOU ROLE_CHOICE_LIST_R_PAY
PAY_COVER/pay[[chengdan]] [1]
在训练过程中,随机提取一部分模版生成的数据加入到训练数据中,可以提升模型的效果。
4.表格 title 检测
任务描述: 给定表格的文本描述信息,检测某一单元格内容是 title/value。
例如:[(1,1), (1,2), '金额', 'index'],[(2,1), (2,2), '50$', 'value'],说明,一行前两个单元格为 title, 二行前两个单元格为
1.实体抽取 问题描述: 数据:人工标注的新闻相关方面的语料。 标签:公司名称,组织名称,产品名称,人名,地点,职位,时间。
合同实体关系抽取 问题描述: (1)识别合同中相关实体,包括:合同编号,签约地点,签约时间,合同有效开始日期,合同有效结 束日期, 合同有效期限,争议解决。 (2)识别合同中相关参与方及其属性,金钱关系信息等
合同实体关系抽取 问题描述: (1)识别合同中相关实体,包括:合同编号,签约地点,签约时间,合同有效开始日期,合同有效结 束日期, 合同有效期限,争议解决。 (2)识别合同中相关参与方及其属性,金钱关系信息等