摘要: 目标:全局变量先看程序:count = 0def Fuc(count): print count count += 1for i in range(0, 10): Fuc(count)结果是:不是我们想要的结果。解决之道一——全局变量:global aa = 3def Fuc(): global a print a a = a + 1if __name__ == "__main__": global a for i in range(10): Fuc()print 'hello' print a结果: 注意要领: 哪里需... 阅读全文
posted @ 2013-01-05 20:09 jihite 阅读(108112) 评论(0) 推荐(2) 编辑
摘要: 先列几个range()函数的几个用法: 函数原型:range(start, end, scan):参数含义:start:计数从start开始。默认是从0开始。例如range(5)等价于range(0, 5); end:技术到end结束,但不包括end.例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5 scan:每次跳跃的间距,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)坑人的现象:for i in range(5): print i i += 2 print i print '一轮结束'... 阅读全文
posted @ 2013-01-05 11:49 jihite 阅读(68229) 评论(5) 推荐(3) 编辑
摘要: 在c语言中,表示个“整型3行4列”的矩阵,可以这样声明:int a[3][4];在python中一不能声明变量int,二不能列出维数。可以利用列表中夹带列表形式表示。例如:表示矩阵 ,可以这样:count = 1a = []for i in range(0, 3): tmp = [] for j in range(0, 3): tmp.append(count) count += 1 a.append(tmp)print a结果:[[1, 2, 3], [4, 5, 6], [7, 8, 9]]但是注意一点:初始化(赋值全部为0时),下面是错... 阅读全文
posted @ 2013-01-05 11:28 jihite 阅读(42650) 评论(0) 推荐(1) 编辑
摘要: 假定目录text下有如下文件 目录:dir_1、dir_2、dir_3 文件:text_1、text_2遍历目录下所有的文件是目录还是文件if -- if类型:#!bin/shfor file in ./*do if test -f $file then echo $file 是文件 fi if test -d $file then echo $file 是目录 fidoneif --else 类型:#!bin/shfor file in ./*do if test -f $file then e... 阅读全文
posted @ 2012-12-19 19:02 jihite 阅读(211384) 评论(4) 推荐(1) 编辑
摘要: 定义变量 name=value 释义:name是变量,value是变量值 注意:1.变量名智能有数字、字母、下划线组成,并且首字符不可是数字。 eg: a12=123kdlkd 2.变量值(value)中如果有空格,应该加上双引号或单引号。eg: a="hello world" 3.等号(=)左右没有空格,切记。eg:a = 'akdf'错误使用变量: 变量名前加上$。eg: 释义:echo为打印函数 echo a 就是单纯输出a;而echo $a ,因为前面有$,提... 阅读全文
posted @ 2012-12-19 17:06 jihite 阅读(3084) 评论(0) 推荐(0) 编辑
摘要: 隐马尔可夫模型的学习问题:给定一个输出序列O=O1O2...OT,如何调节模型μ=(A,B,π)的参数,使得P(O|M)最大。 最大似然估计是一种解决方法,如果产生的状态序列为Q=q1q2...qT,根据最大似然估计,可以通过以下公式推算: πi‘ = δ(q1,si) aij... 阅读全文
posted @ 2012-12-06 22:18 jihite 阅读(9575) 评论(4) 推荐(1) 编辑
摘要: 重新回顾: 前向变量αt(i):在时刻t,在已知模型μ=(A,B,π)的条件下,状态处于si,输出序列为O102...Ot,前向变量为αt(i) 后向变量βt(i):在时刻t,在已知模型μ=(A,B,π)和状态处于si的条件下,输出序列为Ot+1Ot+2...OT,后向变量为βt(i) 公式推导: 阅读全文
posted @ 2012-12-05 15:17 jihite 阅读(4598) 评论(1) 推荐(1) 编辑
摘要: 给定一个观察序列O=O1O2...OT,和模型μ=(A,B,π),如何快速有效地选择在一定意义下“最优”的状态序列Q=q1q2...qT,使该状态最好地解释观察序列。 一种想法是求出每个状态的概率rt(i)最大(rt(i)=P(qt=si,O|μ)),记q't(i)=argQmax(rt(i)),但 阅读全文
posted @ 2012-12-04 22:13 jihite 阅读(16353) 评论(3) 推荐(3) 编辑
摘要: 对于HMM的评估问题,利用动态规划可以用前向算法,从前到后算出前向变量;也可以采用后向算法,从后到前算出后向变量。先介绍后向变量βt(i):给定模型μ=(A,B,π),并且在时间时刻t状态为si的前提下,输出序列为Ot+1Ot+2...OT的概率,即 βt(i)=P(Ot+1Ot+2...OT|qt... 阅读全文
posted @ 2012-12-03 22:42 jihite 阅读(9250) 评论(11) 推荐(1) 编辑
摘要: 隐马模型的评估问题即,在已知一个观察序列O=O1O2...OT,和模型μ=(A,B,π}的条件下,观察序列O的概率,即P(O|μ} 如果穷尽所有的状态组合,即S1S1...S1, S1S1...S2, S1S1...S3, ..., S3S3...S3。这样的话t1时刻有N个状态,t2时刻有N个状态...tT时刻有N个状态,这样的话一共有N*N*...*N= NT种组合,时间复杂度为O(NT),计算时,就会出现“指数爆炸”,当T很大时,简直无法计算这个值。为解决这一问题,Baum提出了前向算法。 归纳过程 首先引入前向变量αt(i):在时间t时刻,HMM输出序列为O1O2...OT,在第t时. 阅读全文
posted @ 2012-12-01 13:35 jihite 阅读(9328) 评论(4) 推荐(8) 编辑