知识图谱实战(BILSTM+CRF)【第五章】

一、BiLSTM+CRF模型介绍

  • BILSTM是双向的LSTM,本身是做信息捕获的,需要在上面加一层线性层进行输出标签的概率分布
  • 只用BILSTM可以做NER任务,可以用发射分数最高的作为标签,但是效果可能不是最佳的,因为他只考虑词的局部最高概率,不会考虑考虑整个语义.
  • CRF模型负责生成转移分数,我们训练CRF也是为了获取转移分数矩阵
  • Decoding Process 通过相加发射分数和转移分数,获取最佳的路径.
  • CRF输出的是转移分数矩阵

二、线性链条件随机场

线性链:输入序列x和输出标签序列y都是线性序列

条件随机:给定x的条件下,输出y的条件概率分布,需要满足马尔可夫性质

场:用图结构来描述概率依赖关系

马尔科夫性质:生成的标签只和前一个标签和后一个标签有关系,与其他标签或者序列无关。

线性链条件随机场图示:

三、发射分数和转移分数

3.1发射分数

发射分数由BILSTM+线性层产生,主要用于生成标签权重。

执行流程:

用户输入序列进来,首先进行向量化,然后经过BILSTM的隐藏状态处理,因为BILSTM是双向的LSTM,所以得到的维度要乘以2,最后经过一个线性层把维度转换为标签数即可。

3.2转移分数

转移分数越高,转移的概率越大

转移矩阵是线性CRF生成的

转移分数矩阵:

转移矩阵是可以学习的矩阵,可以通过训练得到准确的结果

四、CRF最优序列计算方式

发射分数根据标签的位置选择:

比如B-Person位置是(0,1),那么他的发射分数是E00

转移分数则是根据标签的上下文来选择:

比如B-Person的下一个是I-Person,那么就在第二个矩阵中选择0.93.

五、Viterbi解码

CRF输出的是转移分数矩阵,需要使用viterbi解码的方式获取最终的最优路径

  • 原始结算最短路径的方法:分别计算每条路径的长度,然后比较大小

Viterbi算法解决最短路径的

先计算第一列所有的节点和第二列B1的和,然后得到一个最小的,只保留这一条,然后B3

计算的方法类似

然后计算

最后选出最短的即可

相关推荐
Lumistory4 分钟前
从OPPO长安研发中心看头部科技企业的照明运维选择
大数据·运维·人工智能·光照贴图
kolyle6 分钟前
企业大模型私有化部署:从硬件选型到模型服务化的完整路径
人工智能
Dawson Zhu15 分钟前
从理论到工程化:构建可靠Agent系统的六大核心工件与实战指南
人工智能·语言模型·架构·aigc·agi
Blockchina20 分钟前
用 AI 把 30 张照片变成 8 页成长纪念册:一套普通人也能落地的轻量服务流程
人工智能
她的男孩22 分钟前
接口加密做成框架级能力有多难?我扒了 3600 行源码:从 RSA 握手到落库密文迁移
人工智能·后端·架构
老周聊架构35 分钟前
Ontology:Palantir 架构真正的核心,不是数据库也不是知识图谱
数据库·架构·知识图谱
天衍四九-38 分钟前
第一章:从 LLM 到 Agent —— DeepSeek Harness 入门
网络·数据库·人工智能·python
RAOY的AI笔记40 分钟前
ChatGPT怎么用得更专业?Prompt工程、API调用与AI Agent工作流实战
人工智能·chatgpt·prompt
ocean21031 小时前
2025-2026年AI提效与实践大厂面试高频问题
人工智能·面试·职场和发展·提示词工程·ai提效