CRF

随机场:由若干个子集组成的一个整体,而每个子集都按照某个分布随机赋予一个值,这个场就叫随机场。

马尔科夫随机场:随机场中某^{h_{1}}一位置的赋值仅与其相邻位置的赋值有关,和与其不相邻位置的赋值无关。

CRF是马尔科夫随机场的特例,它假设马尔科夫随机场中只有X和Y两种变量,X一般是给定的,而Y一般是在给定X的条件下的输出。

BiLSTM-CRF在NER上的实践总结

使用基于字的BILSTM-CRF,可以用如Bakeoff-3评测采用的BIO表注集

常用的网络结构是双向LSTM后接一个softmax层,输出各个label的概率,然后再接一个CRF层。

  • 句子中的每一个单元都代表着字或词嵌入构成的向量,在输入模型训练之前,设置Dropout缓解过拟合
  • 字或词向量作为BILSTM-CRF模型的输入,双向LSTM层用来自动提取句子特征。
  • 双向LSTM接受句子的每个字的embedding序列作为输入,将正向LSTM的隐层输出^{h_{1}}和反向LSTM输出的隐层输出^{h_{2}}进行拼接^{h_{t}}=[^{h_{1}};^{h_{2}}],得到完整的隐状态序列;在经过设置的Dropout后,再介入一个线性层,将隐状态映射为k维(k是标签集的标签数)。线性层的输出R{^{n*k}}为提取的句子特征,可以理解为将字^{x_{i}}分类到第j个标签的打分值
  • 如果在线性层后接一层softmax层,就变成了对各个字进行k分类了。但是这样没有考虑连续字标注的合理性(无法利用前面标注过的信息),所以需要CRF层来进行标注。
  • CRF层用来进行句子级的序列标注。CRF层的参数是一个(k+2) *(k+2)的矩阵A,Aij表示的是从第i个标签到第j个标签的转移得分,所以在一个位置进行标注的时候就可以利用前面标注过的标签。加2 是因为要为句子首部添加一个起始状态以及为句子尾部添加一个终止状态。如果一个长度等于句子长度的标签序列y=(y1,y2,y2,.......yn),模型对于句子x的标签打分等于y的打分公式:score\left ( x, \right y)= \m\sum_{i=1}^{n} P_{i,yi}\dotplus \sum_{i=1}^{n+1}A_{yi-1,yi}
  • 可以看出整个序列的打分等于各位置的打分之和,而且每个位置的打分由两部分得到:LSTM输出的^{P_{i}}以及CRF的转移矩阵A决定。

softmax层的输出是相互独立的,虽然BiLSTM学习到了上下文的信息,但是输出信息互不影响,没有CRF的话只是在每一步挑选一个最大概率的label输出。这样会有问题:虽然每次的输出都是最大概率的label,但我们并不能保证每次预测都是正确的。而CRF中有转移特征,它会考虑输出label的顺序性。或者更准确的说,CRF层可以为最后预测的标签添加一些约束来保证预测的标签是合法的。在训练的过程中,这些约束可以通过CRF层自动学习到。

公式化表示条件随机场

在给定的观测序列X时,某个待定标记序列Y的概率可以定义为:

^{t_{j}}(^{y_{i-1}},^{y_{i}},x,i)是转移概率,S_{k}(^{y_{i}},x,i)是状态概率,表示观测序列在位置i的标记概率

 

算法理论参考

CRF中的约束就是CRF的特征函数。特征函数接收四个参数:

  • 句子(标注词性的句子)
  • 句子s中的第i个单词
  • 序列标注给第i个单词标注的词性
  • 序列标注给第i-1个单词标注的词性

特征函数的输出是0或1,0表示评分不符合这个特征,1表示要评分的标注序列符合这个特征

为了构建一个条件随机场,首先要定义一个特征函数集。每个特征函数都以整个句子s,当前位置i,位置i-1的标签作为输入,然后为每一个特征函数赋予一个权重,然后针对每一个标注序列,对这些特征函数加权求和。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/350980.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

crc(crc是什么职业)

CRC的特点是什么? 在诸多检错手段中,CRC是最著名的一种,其特点是:检错能力极强,开销小,易于用编码器及检测电路实现 CRC的特点有哪些呢? CRC的全称是循环冗余校验,其特点是:检错能力极强&#x…

CRC16

CRC选择 当数据帧长度在8bits-128bits范围内时,推荐CRC-8(CRC-8能够减少额外比特的开销,且有更好的性能表现) 当数据帧长度在128bits-2048bits范围内时,推荐CRC-12,CRC-16,CRC-CCITT(CRC-12额外比特的开销更小&#x…

linux中ls -l出的crw brw lrw代表什么?

原文链接:https://www.cnblogs.com/victorywr/p/15725170.html 每次使用ls -al 查看文件信息,都只看rw-rw-rw- (权限为666),忽略最前面的c/b/l,今天了解一下: linux中c表示字符设备文件&#xf…

一款红队批量脆弱点搜集工具

功能 指纹识别:调用“三米前有香蕉皮“前辈工具,他的工具比finger好用 寻找资产中404,403,以及网页中存在的其他薄弱点,以及需要特定路径访问的资产 后续会把nuclei加进来 目前只有windows可以用 使用 第一次使用脚本请运行p…

【机器学习】正则化详解和过拟合的解决

https://blog.csdn.net/weixin_45434953/article/details/130970273 上一篇文章的例子中,如果使用一个四次多项式去拟合房价函数,会导致过拟合问题 而正则化是解决过拟合的一个方法。右图过拟合是因为其三次方项和四次方项的影响,我们再回顾…

改进YOLOv8 | 主干网络篇 | YOLOv8 更换骨干网络之 GhostNet | 从廉价操作中获取更多特征

论文地址:https://arxiv.org/abs/1911.11907 代码地址:https://github.com/huawei-noah/ghostnet 由于内存和计算资源有限,在嵌入式设备上部署卷积神经网络(CNN)很困难。特征图中的冗余是那些成功的神经网络的重要特征,但在神经架构设计中很少研究。本文提出了一种新的G…

【测试入门】测试用例经典设计方法 —— 因果图法

01、因果图设计测试用例的步骤 1、分析需求 阅读需求文档,如果User Case很复杂,尽量将它分解成若干个简单的部分。这样做的好处是,不必在一次处理过程中考虑所有的原因。没有固定的流程说明究竟分解到何种程度才算简单,需要测试…

妙啊!真实模拟面试 — 面试官究竟会怎么问 数据库索引呢?

什么是索引? 面试官:我看你项目中有做过 SQL 优化,那我们今天就来聊聊索引吧。 (索引能问些啥,无非是索引的概念、索引的使用规则、索引的分类、索引的原理。嘻嘻~我早有准备) 我:数据库中的…

一道面试题:餐馆模拟

前阵子遇到一个面试题,当时没有做出来,后来断断续续的用了一周的时间做了出来,但感觉也不完全对,先来看看题目,稍后再讨论。 问题 模拟一个餐馆,三个厨师,二个服务员,厨师单独做菜…

AI模拟面试官项目实战 | 项目概述

🎯摘要 看完本文,你可能有如下收获: 了解该项目的预览效果、了解技术栈、系统设计以及教程食用指南 ⭐️⭐️该收获仅供参考,真实收获以实物为准😇😇 ☀️系统概述 【AI模拟面试官】是一个模拟线上面试的…

软件测试面试题【2021模拟面试整理版(含答案)】

点击上方蓝色“程序员一凡”,选择“设为星标” 主页点击“领取资料”获取整理好的学习资源 一、问题预测 \1. 让简单介绍下自己(每次面试开场) \2. 让说下自己会的内容 \3. 看了哪些书籍(有问到) \4. 了解过哪些技…

Java程序员模拟面试,解析面试困扰和建议

模拟面试,相信大多数程序员都没有经历过,甚至还有从来没听说针对面试的辅导或者模拟面试啥的,所有的面试经验都来源于网上写的一些文章,然后再在面试的时候通过各种碰壁去揣测面试官在想啥。 前言 前几天组织了一次模拟面试直播&…

模拟面试题一

一、选择题 1、python不支持的数据类型有 A、charB、intC、floatD、list 1 参考答案:A 参考答案 2、打印输出结果:x "foo"y 2print(x y)A.foo B.foofoo C.foo2 D.2 E.An exception is thrown 1 D :一个是字符串&#…

前端面试题总结:模拟面试

1,问:请先自我介绍? 答:略 二,技术知识题 1,问:看你简历有项目经历,那在你之前的项目中,用到的技术栈有哪些? 答:主要使用过vue和微信小程序&…

模拟面试题回顾

模拟面试题回顾 1.servlet里面有哪些关键的方法? 讲到它的方法,就不可避免地去了解servlet的运行过程(也可以说是生命周期),如下图所示: 它的四个过程: ​ (1).当客户端第一次发送请求后,由容器&#xf…

java-模拟面试

讲一下快速排序算法 通过一次排序将数列分为两部分,一部分比另一部分数字都小 时间复杂度O(nlogn) 空间复杂度O(1) 先确定一个中间比较值,确定一个左指针(从头开始),右指针(从尾部开始) while循…

如何模拟面试?

我是艾木: 1.从学生到职场 当初毕业找工资的场景,至今还记忆犹新。 当时的自己还是学生的身份,正处于找工作的浪潮中,当时的校园招聘如火如荼,工作岗位也琳琅满目。一时间仿佛置身于百货商场之中,每个人都在…

微信小程序 | 基于ChatGPT实现模拟面试小程序

Pre:效果预览 ① 选择职位进行面试 ② 根据岗位职责进行回答 一、需求背景 这两年IT互联网行业进入寒冬期,降本增效、互联网毕业、暂停校招岗位的招聘,各类裁员、缩招的情况层出不穷!对于这个市场来说,在经历了互联网资本的疯狂时代,现在各大需要的时候更多能实实在在挣…

ChatGPT专业应用:模拟求职面试

正文共 663 字,阅读大约需要 3分钟 应届毕业生求职面试必备,您将在3分钟后获得以下超能力: 1.专属面试导师 2.掌握高频面试题回答要点 Beezy评级:B级 *经过简单的寻找, 大部分人能立刻掌握。主要节省时间。 推荐人 …

Python入门教程+项目实战-13.2节-集合的操作方法

目录 13.2.1 集合的常用操作方法 13.2.2 集合的查找 13.2.3 集合的添加 13.2.4 集合的删除 13.2.4 集合运算 13.2.5 知识要点 13.2.6 系统学习python 13.2.1 集合的常用操作方法 集合类型是一种抽象数据类型,抽象数据类型定义了数据类型的操作方法&#xff…