我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: [原创/不要转载]写个关于HMM隐式马尔科夫模型的东西~有兴趣的蝈蝈讨论一下~ 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

zc1984





性别: 帅哥 状态: 该用户目前不在线
头衔: 上帝模式
等级: 荣誉会员
家族: 战略研究所
发贴: 10096
威望: 5
浮云: 0
在线等级:
注册时间: 2004-08-24
最后登陆: 2017-06-08

5come5帮你背单词 [ enough /i'nΛf/ a. & ad. 充足的(地),足够的(地),足够 ]


[原创/不要转载]写个关于HMM隐式马尔科夫模型的东西~有兴趣的蝈蝈讨论一下~

最近做毕业设计其中一部分需要进行中英文词语的切分,所以鄙人采用一下方法进行处理:
同时使用下面两种大方法:
1、基于HMM的中英文分词
2、基于词库的中英文分词

原因:
1、HMM之类的模型有比较高的智能性,但是速度较慢和复杂性较高
2、词库方法实现相对简单,但是对新词汇等的适应能力先天不足

so,整合在一起使用~简单一点说就是主体采用HMM进行分词,然后对其中变成“单字”的部分进行词库分词~

下面对HMM进行简单的描述和论证~


[ 此贴被zc1984在2007-04-22 10:13重新编辑 ]
本帖最近评分记录:
  • 浮云:30 (by 独飞の孤心) | 理由: 写完了给你加精,哎,下个月就走了,回来就看不到你了
  • 顶端 Posted: 2007-04-22 10:05 | [楼 主]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ he /hi:/ pron. 他 ]


    Quote:
    引用第6楼zc1984于04-22-2007 13:49发表的:
    接着~~~
    前面我们说了一下forward算法的东西,下面继续~~

    怎么得到t>1时刻的局部概率呢?这是一个问题~~
    回想我们关于局部概率的定义:


    P.S.貌似有个蝈蝈问我这个计算量会很大,估计你是使用的穷举吧~~来试试Forward算法?
    .......



    这些都是很简单的............

    也没有啥穷举,只不过是解析解.......

    而且只是概率的推导而已............

    I just say so easy.............
    远程图片:aa.jpg 远程图片:bb.jpg
    本帖最近评分记录:
  • 浮云:15 (by zc1984) | 理由: 积极讨论,包括后面的
  • 顶端 Posted: 2007-04-22 18:12 | [1 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ afford /ə'fo:d/ vt. 担负得起,买得起,抽得出(时间等),提供 ]


    Quote:
    引用第12楼zc1984于04-22-2007 18:22发表的:


    那么蝈蝈说的很消耗时间的问题是什么?
    使用具体的代码跑过测试了么?
    我这里根据HMM做出来的分词速度还是可以的哈~~
    .......



    HMM理论上比较成功了........

    实现是另外一个问题

    向刚开始用MLE来初始化观测概率就比较费时间

    我现在的想法是可不可以先建一个这个的库,然后在读入

    forward只是用来检验HMM训练的,根据设定阀值的大小不知要计算多少次

    另外数据平滑中Katz也比较费时间........这里也有2个参数需要估计

    //-------------------------------------------------------------
    目前这些还没有搞定
    ..................估计还需要很长时间


    网上所谓的分词,即使说是基于HMM的,那也是伪的,包括
    AdvancedChineseAnalyze 的Lucene.Net.Analysis.China.dll
    这里面的MLE估计是事先整好的
    ..........................
    顶端 Posted: 2007-04-22 18:32 | [2 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ small /smo:l/ a. 小的,少的 ]


    还有一个问题就是

    最终用Viterbi算法分出来的,可能不是全局最优解

    尽管有些书上说是全局最有的,但是他大大简化了HMM

    A*算法似乎效果要好点,这都要时间!
    顶端 Posted: 2007-04-22 18:35 | [3 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ ad /æd/ n. 广告 ]


    Quote:
    引用第15楼zc1984于04-22-2007 18:45发表的:


    各种训练之后的值我们可以认为是保持了稳定的~~
    这是源于我们的语言环境在一段比较长的历史时期里面其实是不会有太大的变化的(这是一个与现实生活紧密相关的问题,因此需要注意我们的使用环境,而不是一味的为算法而算法~~),
    因此就可以采用建立一个你说的库的方法,而不需要每次都去计算这些值~
    .......



    嘎嘎........

    看来你也赞成偶的想法嘎?呵呵.........

    的却要建库,语料库其实也可以暂时省略

    只要把那个观察概率B整的稍微准确就可以,初始状态概率和转移概率的初始值对HMM的训练影响不大

    要建这个库也是个不小的工作量呵

    关键是准确度,因为他只是个局部最优

    如果在刚开始就偏离方向了,后面的viterbi的正确率更不敢想象了

    ...............

    继续学习........
    顶端 Posted: 2007-04-22 18:51 | [4 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ wise /waiz/ a. 聪明的,明智的 ]


    Re:[原创/不要转载]写个关于HMM隐式马尔科夫模型的东西~有兴趣的蝈蝈讨论一下~

    Quote:
    引用第16楼zc1984于04-22-2007 18:50发表的:


    viterbi会根据输入的观察序列,“自左向右”的根据上下文给出最优的理解。由于viterbi会在给出最终选择前考虑所有的观察序列因素,这样就避免了由于突然的噪声使得决策原理正确答案。这种情况在真实的数据中经常出现。
    我们可以从数学形式上证明这种方法的最优性~~~

    .......


    为了计算viterbi[i,j],这个算法假设是:“动态规划守恒”
    为了计算viterbi[i,j],这个算法假设是:“动态规划守恒”

    这是一个简化但并不正确的假定,这种假定认为,如果对于全部的观察序列,最终的最佳路径恰好经过了状态q,那么这条路径必是在此之前包括状态q在内的所有路径中的最佳路径。这并不意味着在任何时刻t的最佳路径就是所有序列中的最佳路径。一条路径在开始可能并不太好,但是后来可能变为最佳路径。
    比如对于某些类别的语法,(包括三元语法),Viterbi的假设就回失败。所以现在很多语音识别用了栈解码算法或A*算法。


    aa.jpg

    aaa.jpg
    Viterbi的假定是为了使我们能用一种简单的方法来分解路径,对t-1时刻进行扩充

    Daniel的 Speechand language processing有详细的论证
    顶端 Posted: 2007-04-22 19:02 | [5 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ officer /'ofisə/ n. 官员,办事员,军官 ]


    Quote:
    引用第19楼zc1984于04-22-2007 19:12发表的:


    问题就在于你的观察概率如何得出啦~~~
    毕竟要“观察”啊~~~
    所以语料库还是要的~~~
    .......


    偶意思是实现通过语料库
    建立观察概率的库.........

    初始概率和转移概率就用均匀分布.........

    一切还在规划中,等做出来再说吧
    顶端 Posted: 2007-04-22 19:19 | [6 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ indignation /indig'neiən/ n. 义愤,愤慨 ]


    Quote:
    引用第21楼zc1984于04-22-2007 19:26发表的:


    你上面贴出来的图片是什么地方的哦?


    Viterbi算法
    and
    自己做的图解
    顶端 Posted: 2007-04-22 19:32 | [7 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ circumstance /'sə:kəmstəns/ n. (pl.)环境,情况,条件 ]


    Quote:
    引用第21楼zc1984于04-22-2007 19:26发表的:


    你上面贴出来的图片是什么地方的哦?



    莫非有误??

    追根是语音识别里面的一个东西........

    他那个和这还有不小区别
    顶端 Posted: 2007-04-22 19:34 | [8 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ barrier /'bæriə/ n. 障碍(物),栅栏 ]


    Quote:
    引用第24楼zc1984于04-22-2007 19:46发表的:


    语音识别和分词的区别还是比较大的~~~
    是非特定人连续语音识别还是其他啊?
    语音识别算法+专用DSP芯片~~~哇咔咔,爽翻了~~
    .......

    专用DSP芯片??

    其实说白了就是NLP的升级版,语音库嘎.......

    不晓得这个芯片咋回事?

    上次校软件大赛有个研究生队伍就做了这个语音适别......

    效果很差,还是用matlab来采样的,也用了啥芯片,

    仅仅训练了3个词

    并且有个老师去实验的时候,说了个四川话的“山东”给说死机了
    笑死偶了

    ps:养QQ宠物去了,呵呵。zc赶快把viterbi 还有训练补上吧,呵呵
    顶端 Posted: 2007-04-22 19:52 | [9 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ activity /æk'tiviti/ n. (pl.)活动,所做的事情,活动性,活跃 ]


    Quote:
    引用第26楼zc1984于04-22-2007 19:58发表的:
    特殊的DSP芯片在处理某些数据的时候比CPU快得多~~~
    可以有上数量级的提升~~~

    如果只是语音波形之间的比较~~那么真的很无趣~~~(貌似上次某个博士团队就是这样的,录音“打开Word”,然后用户对着麦克风说“打开Word”,进行单纯的Wave的比较~~太XX了~~~简直对我们学校的博士失去很大的一坨信心~~哇咔咔)

    今天写累了,该看会儿书了,貌似你都把viterbi的东西贴出来了~~~
    .......




    录音“打开Word”,然后用户对着麦克风说“打开Word”,进行单纯的Wave的比较~~太XX了~

    不知道效果怎么样,如果能对非特定人群,还是不错的。

    ps:多谢+了15FY嘎.....呵呵,以后多多交流
    顶端 Posted: 2007-04-22 22:36 | [10 楼]
    jiju84



    性别: 帅哥 状态: 该用户目前不在线
    头衔: 【做人要低调!!】
    等级: 前途无量
    家族: J&S
    发贴: 6455
    威望: 0
    浮云: 1253
    在线等级:
    注册时间: 2005-03-07
    最后登陆: 2010-03-18

    5come5帮你背单词 [ maid /meid/ n. 女仆,未婚少女 ]


    Quote:
    引用第8楼zc1984于04-22-2007 13:49发表的:
    p.s.对于Viterbi算法来说,我们只是得到了一个路径,如果我们需要N-Best呢?配合Stack解码算法进行(A*也是可以的哈~~)~~这样就可以得到多个候选~~
    .......



    这倒是个很好的注意,赞一个
    ..........................

    或许可以用来识别未登录词
    ..............................
    顶端 Posted: 2007-04-24 16:30 | [11 楼]
    我来我网·5come5 Forum » 程序员之家

    Total 0.019329(s) query 6, Time now is:10-14 15:53, Gzip enabled
    Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号