NLP基础知识4【CRF】

目录

基本原理

  • X是输入文本(观测序列)
  • y是输出标签(状态序列)
    特点:
  • 每个状态都可以整个 观测序列决定,与 x 1 , x 2 , . . . . . x n {x_1,x_2,.....x_n} x1,x2,.....xn都相关,实际上一般是上下文10个token就可以了。
  • 对每一个状态y仅与相邻状态 y i − 1 , y i + 1 y_{i-1},y_{i+1} yi−1,yi+1相关
    # 公式
  • 通过公式对条件概率进行建模,对于已知概率的观测序列X,求其发生的情况下,各个序列y的发生概率。
  • t j t_j tj是转移特征函数,主要衡量相邻状态 y之间的影响,同时可以与x相关联
  • s k s_k sk是状态特征函数,主要衡量观测序列 x对状态变量的影响
  • λ \lambda λ和 μ \mu μ是对应特征函数的权重
  • exp用于定义模型中的概率分布函数
  • Z是规范化因子,用于确保式子是一个概率

过程

CRF模型完全由特征函数和权重决定:

  • 训练阶段(编码)用优化算法迭代,调个包就行
  • 预测阶段(解码) 使用维特比算法(动态规划,类似广度优先搜索),寻找概率最高的标签路径
    • 使用暴力搜索不可能,使用贪心算法未必是全局最优


PS

转移矩阵 (Transition Matrix):

  • 这是CRF模型中的一个矩阵,用于表示从一个状态(或标签)转移到另一个状态的概率。对于序列标注任务来说,状态可以是不同的标签(如B(开头)、I(中间)、O(其他)),转移矩阵告诉模型在给定前一个标签后,下一个标签出现的可能性有多大。

发射矩阵 (Emission Matrix):

  • 发射矩阵用于表示观察到某个状态下特定观察值的概率。在序列标注中,观察值通常是输入的词语或特征,而状态则是对应的标签。发射矩阵告诉模型在给定一个标签时,观察到具体词语的概率。

得分矩阵 (Score Matrix):

  • 得分矩阵是指CRF模型为每个可能的标签序列分配的分数。这些分数基于转移矩阵和发射矩阵的组合计算得出,通常利用动态规划算法(如维特比算法)来确定最佳的标签序列。
相关推荐
奔跑中的小象2 小时前
统信UOS + 天数AI卡部署SGLang服务手册
人工智能·uos·sglang·天数智芯
DevSecOps选型指南2 小时前
中国版Mythos,为何是悬镜安全灵脉CodeAI?
人工智能·安全
Shockang2 小时前
LangGraph 状态机实战
人工智能
刹那芳华19922 小时前
循环神经网络的从零开始实现(RNN)
人工智能·rnn·深度学习
阿童木写作2 小时前
跨境图片翻译工具多合一,批量图片视频字幕翻译加智能抠图
人工智能·python·音视频·语音识别
科技之门3 小时前
AI3D从建模到贴图、绑骨和动画的完整流程怎么做?V2Fun完整工作流指南
人工智能·3d·贴图
宇宙第一小趴菜3 小时前
二、机器学习的应用领域和发展史
人工智能·机器学习
前端开发江鸟3 小时前
我写过 MCP Server,却一直以为 MCP 只有 Tool
人工智能
天国梦3 小时前
自习室智能化升级避坑指南:天学网AI智习室方案实测与选型建议
大数据·人工智能
阿里云云原生3 小时前
可用性从 99.9% 跃升至 99.995%:畅捷通如何用 AI 重塑运维底座?
运维·网络·人工智能