crf

HMM、MEMM、CRF模型比较和标注偏置问题(Label Bias Problem)

北战南征 提交于 2020-08-04 16:24:33
本文转自:http://www.cnblogs.com/syx-1987/p/4077325.html 路径1-1-1-1的概率: 0.4*0.45*0.5=0.09 路径2-2-2-2的概率 : 0.018 路径 1-2-1-2:0.06 路径 1-1-2-2:0.066 由此可得最优路径为 1-1-1-1 而实际上,在上图中,状态 1偏向于转移到状态 2,而状态 2总倾向于停留在状态 2,这就是所谓的标注偏置问题, 由于分支数不同, 概率的分布不均衡,导致状态的转移存在不公平 的情况。 PS:标注偏置问题存在于最大熵马尔可夫模型(MEMM)中,虽然MEMM解决了HMM 输出独立性假设的问题 ,但是只解决了 观察值独立的问题 , 状态之间的假设 则是 标注偏置问题产生的根源,CRF则解决了标注偏置问题,是HMM模型的进一步优化。 HMM模型中存在两个假设: 一是输出观察值之间严格独立,二是状态的转移过程中当前状态只与前一状态有关(一阶马尔可夫模型) 。 MEMM模型克服了观察值之间严格独立产生的问题,但是由于状态之间的假设理论,使得该模型存在标注偏置问题。 CRF模型解决了标注偏置问题,去除了HMM中两个不合理的假设,当然,模型相应得也变复杂了。 这三个模型都可以用来做序列标注模型。但是其各自有自身的特点,HMM模型是对转移概率和表现概率直接建模,统计共现概率

从贝叶斯方法谈到贝叶斯网络

人盡茶涼 提交于 2020-08-04 12:24:31
从贝叶斯方法谈到贝叶斯网络 0 引言 事实上,介绍贝叶斯定理、贝叶斯方法、贝叶斯推断的资料、书籍不少,比如《数理统计学简史》,以及《统计决策论及贝叶斯分析 James O.Berger著》等等,然介绍贝叶斯网络的中文资料则非常少,中文书籍总共也没几本,有的多是英文资料,但初学者一上来就扔给他一堆英文论文,因无基础和语言的障碍而读得异常吃力导致无法继续读下去则是非常可惜的(当然,有了一定的基础后,便可阅读更多的英文资料)。 11月9日上午, 机器学习班 第9次课讲贝叶斯网络,帮助大家提炼了贝叶斯网络的几个关键点:贝叶斯网络的定义、3种结构形式、因子图、以及Summary-Product算法等等,知道了贝叶斯网络是啥,怎么做,目标是啥之后,相信看英文论文也更好看懂了。 故本文结合课程讲义及相关参考资料写就,从贝叶斯方法讲起,重点阐述贝叶斯网络,依然可以定义为一篇读书笔记或学习笔记,有任何问题,欢迎随时不吝指出,thanks。 1 贝叶斯方法 长久以来,人们对一件事情发生或不发生的概率 ,只有固定的0和1,即要么发生,要么不发生,从来不会去考虑某件事情发生的概率有多大,不发生的概率又是多大。而且概率 虽然未知,但最起码是一个确定的值。比如如果问那时的人们一个问题:“有一个袋子,里面装着若干个白球和黑球,请问从袋子中取得白球的概率 是多少?”他们会想都不用想,会立马告诉你,取出白球的概率

人在职场,表达似水

ε祈祈猫儿з 提交于 2020-07-28 20:20:14
最近几天集中在和部门内的小伙伴做1:1Talk。 发现有不少人表达能力真的不是很好,而且水平长期停滞不前。现场与他们分享了一些我的经验,趁热打铁也想在这里分享给大家。 表达能力不好本身就是做技术的人身上的一个常见标签。 如果仅仅是标签也就算了,但表达能力的高低在职场中其实是特别重要的一个技能。 它的作用我认为主要是两点。 「 连接器 」。良好的表达能力可以让你更好地连接其他人,共同完成一件事情。以及,在与上级、下级的沟通上。 「 扩音器 」。你在工作中做成了一件牛逼的事情,但是你在陈述你的工作成果的时候没表达好。明明可以拿100分的,却拿了个50分。你说可不可惜、浪不浪费。 据我的观察,一般表达能力不好的人,特别容易在以下两点上表现出来。 第一,他会将一个事物在他自己脑子里是怎么理解的、思考的,原封不动的陈述出来。简单来说就是自己想到哪说到哪,会让听的人很明显的感觉到有点乱……毕竟,大脑的思路跳跃起来是飞快的,这可比飙车的时候紧跟着前车难得多。 第二,过于面面俱到。这部分小伙伴生怕自己漏讲了什么,会把所有他能想到的相关信息啪啦啪啦全部“倒”给你。的确,沟通很充分,信息量很大。但是站在听者的角度来说,信息的接收和消化就困难了。 看看你自己或者你身边有这样的人吗?如果想要摆脱这个状况,请继续往下看。 表达能力不仅仅是能说会道,它的根本是信息传递的过程中,损耗的多和少 。 据我的观察

学术分享丨深度学习在术前手术规划中的应用

我只是一个虾纸丫 提交于 2020-05-09 15:34:00
  随着学会的队伍不断发展壮大,分支机构的发展愈发完善,丰富多彩的分支活动与学术分享也频频呈现。疫情期间,CAAI认知系统与信息处理专委会积极倡导学会“疫情防控不放松,学习充电不间断”的理念,邀请年轻学者结合本专委会自身领域研究精选相关文献进行研究与再解读,与大家分享《深度学习在术前手术规划中的应用》。   外科手术的进步对急性和慢性疾病的管理,延长寿命和不断扩大生存范围都产生了重大影响。如图1所示,这些进步得益于诊断,成像和外科器械的持续技术发展。这些技术中,深度学习对推动术前手术规划尤其重要。手术规划中要根据现有的医疗记录来计划手术程序,而成像对于手术的成功至关重要。在现有的成像方式中,X射线,CT,超声和MRI是实际中最常用的方式。基于医学成像的常规任务包括解剖学分类,检测,分割和配准。      图1:概述了流行的AI技术,以及在术前规划,   术中指导和外科手术机器人学中使用的AI的关键要求,挑战和子区域。 1、分类   分类输出输入的诊断值,该输入是单个或一组医学图像或器官或病变体图像。除了传统的机器学习和图像分析技术,基于深度学习的方法正在兴起[1]。对于后者,用于分类的网络架构由用于从输入层提取信息的卷积层和用于回归诊断值的完全连接层组成。   例如,有人提出了使用GoogleInception和ResNet架构的分类管道来细分肺癌,膀胱癌和乳腺癌的类型[2]

用ffmpeg录制小程序直播开发高清视频并实现直播推流

假装没事ソ 提交于 2020-05-05 11:29:41
导读:用ffmpeg录制 小程序直播开发 高清视频并实现直播推流,本文用ffmpeg和 screen capture recorder工具实现用命令行方式录制小程序直播开发的高清视频,并将实时录制的高清视频推流到各大直播平台。 第一部分:小程序直播开发录屏工具下载安装 工具 Ffmpeg screen capture recorder Ffmpeg+screen-capture-recorder百度云下载: http://www.zhaowucc.cn/xiaochengxu/baike/157.html 1.安装ffmpeg: 下载ffmpeg-20200424-a501947-win64-static.zip 解压ffmpeg-20200424-a501947-win64-static.zip 到D盘 并改名为 ffmpeg(即:D:\ffmpeg) 添加环境变量 在桌面 我的电脑 右键 属性 选高级 找 环境变量 在系统变量 找到path,点编辑 加入 D:\ffmpeg\bin 即可 在命令行下: 运行 cmd 输入 ffmpeg能正常运行就已成功安装好ffmpeg. 2.安装screen capture recorder: 运行 Setup.Screen.Capturer.Recorder.v0.12.10.exe 按默认安装即可。 第二部分

24.时间序列---ARIMA模型

谁说我不能喝 提交于 2020-05-02 10:57:02
(一)Arima模型 时间序列建模基本步骤 获取被观测系统时间序列数据; 对数据绘图,观测是否为平稳时间序列;对于非平稳时间序列要先进行d阶差分运算,化为平稳时间序列; 经过第二步处理,已经得到平稳时间序列。要对平稳时间序列分别求得其自相关系数ACF 和偏自相关系数PACF ,通过对自相关图和偏自相关图的分析,得到最佳的阶层 p 和阶数 q 由以上得到的d、q、p,得到ARIMA模型。然后开始对得到的模型进行模型检验 一、时间序列平稳性 1.判断是否平稳   平稳性就是要求经由样本时间序列所得到的拟合曲线在未来一段时间内仍能顺着现有的形态惯性地延续下去。平稳性要求序列的 均值和方差不发生明显变化 。 严平稳: 严平稳表示的分布不随时间的改变而改变。如白噪声(正太),无论怎么取, 期望都是0,方差为1 。 宽平稳: 期望与相关系数(依赖性)不变。未来某时刻的t的值X t 要依赖于它的过去信息,所以需要依赖性。这种依赖性不能有明显的变化。 三种方法: (1)时序图检验 (2)自相关系数和偏相关系数 (3)单位根检验 如果是不平稳,那就需要将其转成平稳,就要用到差分法。 2.差分法 使用差分法可以使得数据更平稳,常用方法:一阶差分法和二阶差分法 3. 纯随机性检验   纯随机序列,又称白噪声序列,序列的各项数值之间没有任何相关关系,白噪声序列是没有信息可提取的平稳序列

FFmpeg基础使用

删除回忆录丶 提交于 2020-04-30 11:42:03
欢迎大家访问我的博客: blog.54newpower.top 1.下载安装配置过程省略 windows平台直接下载,添加环境变量即可;Linux平台根据官网说明,结合使用的发行版本自行安装;manjaro Linux自带ffmpeg,免除安装 2.编码转换-编码\音频转换 ffmpeg -i input.mov output.mp4 ffmpeg -codecs 查看编解码器 视频封装方案: mp4封装:h264视频编码+aac音频编码 最常见,最成熟 webM封装:vp8视频编码+vorbis音频编码 谷歌的方案,YouTube使用 ogg封装:theora视频编码+vorbis音频编码 完全开源 ffmpeg -i in.flac -acodec libmp3lame -ar 44100 -ab 320k -ac 2 output.mp3 -acodec 指定音频编解码器;不指定,会根据输出文件的拓展名自动匹配 -ar 指定音频采样率;比较常见的有44100kHz和48000kHz;不输入默认使用原音频的采样率 -ab 指定音频的比特率;不输入默认128kbps -ac 设置音频的声道数量;1单声道,2立体声默认与原音频一致 3.编码转换-视频压制 ffmpeg -i input.webm -s 1920x1080 -pix_fmt yuv420p -vcodec

调试seanbell/intrinsic遇到的坑

最后都变了- 提交于 2020-04-29 04:08:37
那些遗忘过去的人注定要重蹈覆辙。——乔治•桑塔亚纳 Authorized error 刚开始按作者 GitHub 上的指示,当运行环境配置好,并且 make 之后,因为生成的 decompose.py 是可执行文件,直接运行 bell2014/decompose.py ../../original.png 就出现了这样的错误 import : not authorized `pd ' @ error/constitute.c/WriteImage/1028 看到有相关问题的解答中提到 这是python脚本,不应该把它当成shell脚本运行,当然会报错 突然反应过来,我们通常在终端直接运行的可执行文件一般由 /usr/bin/sh 来作为默认执行器 而 .py 脚本需要显式指出 python 解释器,这样就有了解决方案,直接用 python 来运行就可以了啊 python3 bell2014/decompose.py ../../original.png namespacepath error AttributeError: ' _NamespacePath ' object has no attribute ' sort ' 该错误好像与 pip 有关,可以使用以下命令解决 sudo pip3 install --upgrade setuptools numpy error

自注意力机制(Self-attention Mechanism)——自然语言处理(NLP)

a 夏天 提交于 2020-04-27 18:01:50
近年来,注意力(Attention)机制被广泛应用到基于深度学习的自然语言处理(NLP)各个任务中。随着注意力机制的深入研究,各式各样的attention被研究者们提出。在2017年6月google机器翻译团队在arXiv上放出的《Attention is all you need》论文受到了大家广泛关注,自注意力(self-attention)机制开始成为神经网络attention的研究热点,在各个任务上也取得了不错的效果。对这篇论文中的self-attention以及一些相关工作进行了学习总结(其中也参考借鉴了张俊林博士的博客"深度学习中的注意力机制(2017版)"和苏剑林的"《Attention is All You Need》浅读(简介+代码)"),和大家一起分享。 1 背景知识 Attention机制最早是在视觉图像领域提出来的,应该是在九几年思想就提出来了,但是真正火起来应该算是2014年google mind团队的这篇论文《Recurrent Models of Visual Attention》,他们在RNN模型上使用了attention机制来进行图像分类。随后,Bahdanau等人在论文《Neural Machine Translation by Jointly Learning to Align and Translate》中

PyTorch 1.0 中文官方教程:序列模型和LSTM网络

≯℡__Kan透↙ 提交于 2020-04-27 07:05:52
译者: ETCartman 之前我们已经学过了许多的前馈网络. 所谓前馈网络, 就是网络中不会保存状态. 然而有时 这并不是我们想要的效果. 在自然语言处理 (NLP, Natural Language Processing) 中, 序列模型是一个核心的概念. 所谓序列模型, 即输入依赖于时间信息的模型. 一个典型的序列模型是隐马尔科夫模型 (HMM, Hidden Markov Model). 另一个序列模型的例子是条件随机场 (CRF, Conditional Random Field). 循环神经网络是指可以保存某种状态的神经网络. 比如说, 网络上个时刻的输出可以作为下个 时刻的输入, 这样信息就可以通过序列在网络中一直往后传递. 对于LSTM (Long-Short Term Memory) 来说, 序列中的每个元素都有一个相应的隐状态 $h_t$, 该隐状态 原则上可以包含序列当前结点之前的任一节点的信息. 我们可以使用隐藏状态来预测语言模型 中的单词, 词性标签以及其他各种各样的东西. Pytorch中的LSTM 在正式学习之前,有几个点要说明一下,Pytorch中LSTM的输入形式是一个3D的Tensor,每一个维度都有固定的意义,第一个维度就是序列本身,第二个维度是mini-batch中实例的索引,第三个维度是输入元素的索引,我们之前没有接触过mini