李宏毅机器学习笔记:结构学习,HMM,CRF

news2024/9/21 4:27:38

李宏毅机器学习笔记:结构学习,HMM,CRF

  • 1、隐马尔可夫模型HMM
    • 1.1Sequence2Sequence
    • 1.2 HMM
    • 1.3 Viterbi算法
    • 1.3 HMM模型的缺点

1、隐马尔可夫模型HMM

1.1Sequence2Sequence

什么是Seq2Seq问题呢?简单来说,就是输入是一个序列,输出也是一个序列。输入和输出的序列可以相等,也可以不相等。在本文中,可以先假设输入输出序列相等。
在这里插入图片描述

1.2 HMM

这里用了一个通俗易懂的例子来解释HMM模型,POS tagging,词性标注。
在这里插入图片描述
PN表示专有名词Proper Noun
V表示动词
D 定冠词
N名词

通常情况下,我们要生成1个句子,可以分为2个步骤。
一、根据语法设计好一个词性序列
二、根据字典中的词汇填充生成一个句子。
在这里插入图片描述
举例子来说,
在这里插入图片描述
图片表示,开始start后面接的词为PN的概率是0.4,接动词V的概率是0.1,接定冠词D的概率是0.5。依次类推。这样,第一步构思的词性顺序为 PN V D N的概率则为0.40.80.250.950.1。
在这里插入图片描述
类似地,在词性结构已经是PN V D N的第一步的基础上,生成的句子为 John saw the saw的概率为0.20.170.63*0.17。

那怎么计算第2步的概率呢?
在这里插入图片描述
在这里插入图片描述
计算方法如上图所示,其中y表示词性,x表示单词。我们是根据词汇x来求目标词性y,目标词性y是隐含的变量,这也是HMM中隐的由来。
现在问题只在于说如何计算。其实很简单,可以直接根据训练数据将这些概率统计出来。
在这里插入图片描述
在这里插入图片描述
如上图所示,词性 s ′ s' s接在词性 s s s后面的概率为训练数据中词性s后面出现词性 s ′ s' s的次数除以词性s出现的总次数。
词性s的单词为特定单词t的概率则为训练数据中所有单词为t且词性属于s的次数除以词性s出现的总次数。
在这里插入图片描述
通过对训练数据中的相关词汇和词性进行统计,便可计算出相应的概率。

1.3 Viterbi算法

在这里插入图片描述
上述可知,假设有 ∣ S ∣ |S| S个词性,序列长度为L。那么该序列的词性可能存在 ∣ S ∣ L |S|^{L} SL种答案。计算复杂度很高。而Vertibi算法则是专门解决该问题而衍生出的优化算法。
在这里插入图片描述
概括来说,HMM可分为上述3个步骤。

1.3 HMM模型的缺点

在这里插入图片描述
举个例子来说,假如训练数据中, y l − 1 y_{l-1} yl1为名词N,后面接动词V的概率为0.9,接定冠词D的概率为0.1。而在给定词性为动词V的条件下,该单词为单词a的概率为0.5,为单词c的概率为0.5。在给定词性为D的条件下,为单词a的概率为1。
在这里插入图片描述
现在我们假设出现了该种场景,第一个单词为N,后一个单词为a,求后一个单词的词性预测。
这个例子比较简单,可以直接穷举出来。假如该单词词性 y l = D y_{l}=D yl=D,那么概率p=0.11=0.1。
假如该单词词性 y l = V y_{l}=V yl=V,p=0.9
0.5=0.45。因此,答案应该为V。
在这里插入图片描述
这个答案V看上去是没有问题的,但是假设我们的训练数据是上述这种情况,完全满足Transition probability 和Emission probability情况。我们预测的最佳答案是N-V-a。
但是,我们的训练数据中原本就出现了N-D-a这种样本。HMM模型所给的答案是训练数据中从未见过的情况,因为其概率最大。这种情况我们认为HMM预测的更好还是原数据更好呢?
答案显然是原数据中出现的样本最好。由此引申出HMM模型的缺陷问题:可能会预测出训练数据中从未出现过的结果。在训练数据为小样本数据集时其实时有一定好处的,因为这样泛化能力更强。
要想解决HMM的缺陷,有2种解决思路,一是使用更为复杂的模型,而是使用条件随机场CRF。

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

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

相关文章

RTSP/Onvif视频服务器EasyNVR安防视频云服务调用接口录像会被自动删除的问题解决方案

EasyNVR安防视频云服务是基于RTSP/Onvif协议接入的视频平台,可支持将接入的视频流进行全平台、全终端的分发,分发的视频流包括RTSP、RTMP、HTTP-FLV、WS-FLV、HLS、WebRTC等。平台丰富灵活的视频能力,可应用在智慧校园、智慧工厂、智慧水利等…

Python“牵手”京东商品详情数据采集方法,京东API申请步骤说明

京东平台API接口是为开发电商类应用程序而设计的一套完整的、跨浏览器、跨平台的接口规范。 京东API接口是指通过编程的方式,让开发者能够通过HTTP协议直接访问京东平台的数据,包括商品信息、店铺信息、物流信息等,从而实现京东平台的数据开…

自动驾驶合成数据科普一:不做真实数据的“颠覆者”,做“杠杆”

前言: 在7月底的一篇文章中,九章智驾提到,数据闭环能力是自动驾驶下半场的“入场券”,这一观点在行业内引起了广泛共鸣。 在数据闭环体系中,仿真技术无疑是非常关键的一环。仿真的起点是数据,而数据又分为真…

回归预测 | MATLAB实现WOA-RBF鲸鱼优化算法优化径向基函数神经网络多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现WOA-RBF鲸鱼优化算法优化径向基函数神经网络多输入单输出回归预测(多指标,多图) 目录 回归预测 | MATLAB实现WOA-RBF鲸鱼优化算法优化径向基函数神经网络多输入单输出回归预测(多指标,多图&#…

短视频seo源码矩阵系统开源---代码php分享

前言:短视频seo源码 短视频seo矩阵系统源码私有化部署 短视频seo源码 短视频seo矩阵系统源码私有化怎么部署? 首先我们来给大家普及一下什么是短视频seo矩阵系统?视频矩阵分为多平台矩阵与一个平台多账号矩阵,加上seo排名优化&…

EasyPOI 实战总结

EasyPOI实战总结 简介 easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员 就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板 语言(熟悉的表达式语法),完成以前复杂的写法 使用EasyPOI 环境搭建 # 1.引入相关依…

R包开发一:R与Git版本控制

目录 1.安装Git 2-配置Git(只需配置一次) 3-用SSH连接GitHub(只需配置一次) 4-创建Github远程仓库 5-克隆仓库到本地 目标:创建的R包,包含Git版本控制,并且能在远程Github仓库同步,相当于发布在Github。…

基于Spring Boot的游泳馆管理系统的设计与实现(Java+spring boot+MySQL)

获取源码或者论文请私信博主 演示视频: 基于Spring Boot的游泳馆管理系统的设计与实现(Javaspring bootMySQL) 使用技术: 前端:html css javascript jQuery ajax thymeleaf 微信小程序 后端:Java spring…

R语言机器学习方法在生态经济学领域

近年来,人工智能领域已经取得突破性进展,对经济社会各个领域都产生了重大影响,结合了统计学、数据科学和计算机科学的机器学习是人工智能的主流方向之一,目前也在飞快的融入计量经济学研究。表面上机器学习通常使用大数据&#xf…

HarmonyOS学习路之方舟开发框架—学习ArkTS语言(状态管理 四)

Observed装饰器和ObjectLink装饰器:嵌套类对象属性变化 上文所述的装饰器仅能观察到第一层的变化,但是在实际应用开发中,应用会根据开发需要,封装自己的数据模型。对于多层嵌套的情况,比如二维数组,或者数…

pycharm远程连接docker容器

pycharm远程连接docker容器 1.根据镜像创建容器2.进入容器3.修改容器的root密码4. 容器安装openssh-server和openssh-client5.修改SSH配置文件6.重启ssh服务7. 退出测试8.配置pycharm并连接docker容器9. 选择docker环境 1.根据镜像创建容器 sudo docker run -itd --nameconn_t…

【目标检测】“复制-粘贴 copy-paste” 数据增强实现

文章目录 前言1. 效果展示代码说明3. 参考文档4. 不合适点 前言 本文来源论文《Simple Copy-Paste is a Strong Data Augmentation Method for Instance Segmentation》(CVPR2020),对其数据增强方式进行实现。 论文地址:https:/…

uniapp国际化npm install vue-i18n报错

npm install vue-i18n //npmyarn add vue-i18n //yarn在vue2环境下,默认安装 npm install vue-i18n 的版本是 vue-i18n9.1.9,所以报错。 npm view vue-i18n versions --json 用以上命令查看版本: vue2建议5.0版本 npm install vue-i1…

认识Junit

1. 前言 2. Junit注解 2.1. 常用的注解 2.1.1. Test 表示当前方法是一个测试方法(不需要main来执行) Test void Test01() throws InterruptedException {System.out.println("测试用例1");WebDriver webDriver new ChromeDriver();webDriver.get("https:/…

【从零开始的rust web开发之路 二】axum中间件和共享状态使用

系列文章目录 第一章 axum学习使用 第二章 axum中间件使用 文章目录 系列文章目录前言一、中间件是什么二、中间件使用常用中间件使用中间件使用TraceLayer中间件实现请求日志打印自定义中间件 共享状态 前言 上篇文件讲了路由和参数相应相关的。axum还有个关键的地方是中间件…

ceph集群的扩容缩容

文章目录 集群扩容添加osd使用ceph-deploy工具手动添加 添加节点新节点前期准备新节点安装ceph,出现版本冲突 ceph-deploy增加节点 集群缩容删除osd删除节点 添加monitor节点删除monitor节点使用ceph-deploy卸载集群 实验所用虚拟机均为Centos 7.6系统,8…

sql2008 开启端口1433,进行远程连接SQL服务器

设置完成后,接着重启SQL服务器 注意本机测试的话,必须要关闭防火墙,如果是腾讯云或阿里云的话,必须开启1433端口。否则无法远程连接到SQL服务器的。 但是这里我们对于外网的项目,基本不会在客户端上直接用 这种模式去…

flutter get 命令行工具

mac终端执行: flutter pub global activate get_cli这个安装完以后会提示英文提示你要把一个 目录添加到mac环境变量中,下面的目录是你安装完以后提示你放到环境变量里的目录 export PATH"$PATH":"$HOME/.pub-cache/bin"mac13系统以后环境变量的2个文件如…

在思科(Cisco)设备上配置 DHCP 服务器

DHCP广泛用于LAN环境中,从集中式服务器动态分配主机IP地址,从而显着减少IP地址管理的开销。DHCP 还有助于节省有限的 IP 地址空间,因为不再需要将 IP 地址永久分配给主机,只有连接到网络的主机才会使用 IP 地址。DHCP 服务器将路由…

DataWindowHTTP在linux环境的安装和测试

DataWindowHTTP在linux环境的安装和测试 *此非必要文档,如果在window环境使用,则无需参考。对于linux os,apache,php安装熟悉的朋友,也无需参考此文档的安装部分,只需要参考配置部分即可。 *最后修改日期…