存档

‘Algorithm’ 分类的存档
10月
02

AR算法Mathematica笔记

前阵子自学了一下谱分析的东西,嘛~也就一点皮毛,现在把笔记放上来,Mathematica版本的。。

其实说白了AR就是谱分析里面一个弱到不能再弱的算法了,但是没办法,后面很多新方法,都是以此为基础的,而且。。俺们老板92年发表的一个谱分析的算法也是以此为基础的。。囧。。

谱分析,就是根据一段信号有限时间范围内的采样得到的样本,这个样本既包含噪声,也包含信号,谱分析目的就是为了把原始信号的功率谱给计算出来!

哦,对了,千万千万别问我问什么不用福利叶变换。。。。。

我们这里实验用的是一个衰减的信号,采样频率50Hz,50个点,模型阶数为6,其实这些参数怎么样都好。 阅读全文...

分类: 谱分析 标签: ,
9月
09

Johnson-Trotter算法

要说起来当年为什么会喜欢上编程这个东西的话,一直追根溯源的话,那应该是当时刚学编程没过半个月的时候,大概才一周多一点,刚学会一些简单的基本语法,写函数什么的,然后忘了因为什么原因,反正拿到了网上别人的一份代码,代码实现的是1~n的全排列输出,当时我自己先写过,但是由于对递归还没什么概念,所以基本写不出来,而那份代码显然,使用递归写的,第一次见到递归啊,我当时还傻傻的一步一步自己像电脑一样走了一遍流程,越看越觉得尼马这玩意儿太神奇了【虽然现在自己随手就能写那种程序。。】,简直就是思维高度浓缩出来的结晶。。。。嗯,大概,就是因为那份代码,所以喜欢上变成了吧。。。

好吧,还是扯远了,回到主题,最近又去图书馆随手借了一本以前没看过的算法书,看看有啥好玩的东西,然后就看到了一章将全排列输出的,然后就想到了上面那一段。。。 阅读全文...

分类: 计算机 标签: ,
7月
16

粒子群优化(Particle Swarm Optimization, PSO)

今天突然开始发闲了,因为老板好像出差了,然后今天下午原计划是去另一个校区搞一些比较重要的事情的,但是我问那边老师下午在么?他在1点50分才回我短信说。。。2点之前他会在的。。。然后下午突然就觉得好空虚,没事干了。。

好吧,所以,今天继续上来补一篇比较简单的算法文吧,应该没什么人会看不懂的吧。。。估计。。。

RT所示,叫做粒子群优化,因为我一直管叫PSO,中文名在我脑海中的印象一直是“粒子XX算法”,我今天才突然意识到,原来有优化这两个字的,然后我就在想,这个叫做“优化”的算法都那么简单了,那么那个叫做“粒子算法”的东西是有多简单啊。。。然后查了一下,好吧,没有“粒子算法”这么一说,或者说,“粒子算法”就是“粒子群优化算法”本身。。。

可能有人听过蚁群算法,觉得粒子群算法会不会跟蚁群算法差不多,其实。。不是差得多不多的问题,完全就是两个东西,生态一点的说法,蚁群算法是模拟蚂蚁找回家的路这种最优路径问题,但是粒子群模拟的是鸟类找最适合栖息地的过程,虽说都是找最优解的问题,但是你敢说鸟类的做法可以放到蚂蚁身上?算了,过阵子我有空就再搞一篇蚁群算法的吧。。。这里姑且先开这个坑。。。 阅读全文...

7月
09

傅里叶变换频率计算误差研究

其实这是比较久之前就抱有一点疑问的问题了,除去项目各种相关知识后的问题起源描述是这样子的,有一个正弦波,它只有2~5个周期左右,然后请确定出它的频率来。

不过有两点需要说明一下:

第一点,在实际项目中采回来的数据,不可能是完美的正弦信号,有可能有相位噪声或者幅度噪声什么的,因为我们微波光子学研究的频率是GHz~THz这种数量级的,所以畸变是必然的,但是!!!!我们这里不涉及这方面,讨论的就是完美的正弦信号。

第二点,实际上当一个信号只有2~5个周期这种时候,是不应该用傅里叶变换的,因为傅里叶对瞬时信号或者短信号相对之下是比较"无能"的,但是我们还是不管,我们这里分析的就是福利叶变换对完美的短周期数正弦信号的频率定位问题。

首先,我们知道一个正弦信号的傅里叶变换应该如下图所示的,下图是一个频率为100Hz的正弦波在1kHz的采样频率下得到的数字信号及其傅里叶变换。 阅读全文...

6月
09

性别识别专题三——实例应用

好吧,专注填坑30年的我又回来了。。。

这次总算真的可以写一下性别识别这个东西了,因为性别识别是个目的,然后为了完成这个目的,需要多种算法手段来实现,所以这就是前面两个专题里面提到的PCA和线性分类器了。

好吧,不多说,直接开始介绍正题。【哦对了,这篇文章主要是写给对模式识别不怎么熟悉的人看的,所以大牛基本可以不要在这里浪费时间了。。反正就是PCA+LDA嘛,你们懂得~】 阅读全文...

5月
22

性别识别专题二——Fisher分类器

好吧,我又来填坑了。。。为啥呢?因为这周我的任务好像差不多了,硬件客观条件所限,要干活最快也要到周六,想象自己给自己挖了这么多坑,补天于心不安啊!!

说到坑这个东西,大家可能有所不知,在这个BLOG里,外表看上去我挖的坑不多(但也不是没有),但是殊不知我的draft里面躺了一大堆草稿,觉得这个可以写来玩玩,那个又想写来分享什么的,而且有些想法发现像个无底洞,所以就被永久雪藏了,比如之前搞的那个统计信号处理专题,出了1之后就在也没动过了。。。

填坑,是个良心活!!

闲话就说这么多吧。。。


线性判别式分析(Linear Discriminant Analysis, LDA),也叫做Fisher线性判别,也就是数模里面常见的Fisher分类器,之前讲到的那个PCA,经常和LDA一起出现,解决了无数的问题,看成模式识别界最平民化的模范COUPLE,平民化一是因为用的多,二是简单,粗暴,易懂。。 阅读全文...

5月
04

性别识别专题一——PCA

翻了一下之前Algorithm的最后一篇,居然是去年12月写的伪逆法,现在五月4号,也就是说我整整有半年没写关于算法的文章了,看了一下各个Category的数目,也属Algorithm最少,为了平衡这一问题,我决定出个长篇专题,里面涉及几个分布的小算法,最近就把这么几篇补上,这样就显得我不是没在搞算法的!!

好吧,就闲话到这,这次说的是PCA算法,PCA的全称是主成分分析法(Principal Component Analysis),它一般是用于模式识别等算法中的预处理模块,做什么用的呢,一般两个方面,一个是对数据进行降噪处理,另一个就是在模式识别中对数据进行降维。什么意思?比如说吧,我这个专题是性别识别,用的是不同性别的人脸图像,图像的像素数就是原始的信息数据,假设一幅图像时640*480,那么相当于一幅图像的特征向量是640*480=307200维,这个维数显然是很可怕的,所以需要降维,怎么将呢?就是找出这些维数里面可以作为区分的那些维,把他们提取出来,剩下的扔掉就可以了。 阅读全文...

12月
02

伪逆法

分类器,是一切模式识别的基础,不管你想识别多么复杂的东西,待识别对象有多少类,你都必须要用上分类器,而不管分类器多么的复杂,归根结底,都是二分类的分类器,而二分类问题,最基础的就是线性分类器。。

虽然线性分类器在实用中不会被用上,但是许多研究的基础都是从线性分类器开始的,以前说的那个Adaboost,一个分类器可以由n多个线性分类器加权级联起来,SVM即便引进了核函数,通过把低维映射到高维空间使之线性可分,但是其研究基础还是线性分类器【过阵子良心发现了就补一篇SVM的吧。。】,神经网络每个神经元是什么?还是线性分类器。

以前被Adaboost和神经网络的那种思维模式误导了,比如说,在Adaboost算法中寻找来级联的弱线性分类器是怎么找的,扫面整个分类器集合找到目前为止最好用的一个弱分类器。神经网络中的神经元的权值是怎么算的?还不是要训练,修正?以至于我决定的,线性二分类问题找到的一个最简单的分类器必须要迭代训练【这里不是说要找最优分类器】。

最近上课老师提到了一个伪逆法,由于我睡过去了,没听清楚,回来上网查了一下,发现这个东西好像还挺好用的~至少思想值得学习!!

伪逆法思想是基于最小二乘的,假如说我们有一堆数据,数据量为N,每个数据向量为m维的,表示如下: 阅读全文...

11月
21

动态时间规整DTW

好吧,最近耳机坏了,日剧计划暂停一下,好好更新一下学术方面的东西吧。。。

今天介绍的是动态时间规整算法(Dynamic Time Warping),我对这个算法有着非常深的感情,嗯,你知道为什么吗?今年上半年还是大四的我,显然是到了要做毕设的时候了,然后指导老师在2月20才交代给我要做什么,然后我就盲目的乱弄了一个多月,因为是算法设计的类型问题,想不出算法你就别指望可以写得出什么东西来,比起那些只有工作量没有太多思维量的毕设题目,我对我的前景堪忧啊,多少个晚上躺在床上,突然突发奇想想到一个东西,然后就下床开电脑验证一下,再然后,就是失望地回去睡觉了。。直到那一天,我遇到了你,DTW,是你拯救了我!!让我产生了一个神奇的灵感,然后花没几天就把毕设给做完了。。。不仅出了不错的结果,还拿了个校级优秀论文。。

我。。。好像又TM扯远了。。。 阅读全文...

11月
20

颜色恒常性 & Retinex

小时候就觉得人的大脑是个极其之神奇的东西,然后高中学了生物化学那些东西后,觉得脑子居然可以产生思想,感情,宇宙中居然有这样的东西的存在,然后就感慨不已,上了大学,搞了一些算法学术后,意识到一些以前并没有怎么意识到的一些大脑的功能【虽说不管怎么说其神奇程度都不及会产生情感,思想。。】,比如说人大脑的模糊算法,我们看一局棋,可以快速的判断出谁处于优势谁处于劣势,有经验的人瞄一眼天空,就知道是不是要马上下雨了。“大概怎么样”这个概念,对应于属于“模糊”,人的大脑先天就有这种神奇的功能,对于计算机这种连真正的随机数都产生不了的“渣渣”而言,人脑实在过于强大【我一直觉得,计算机之所以会有存在的价值,就在于他可以高速的做一些简单的运算,如果人脑可以快速的在1纳秒内算出根号π精确到小数点后100位的话,那计算机对我们现实的价值可能会少很多。。】。再比如说学习功能,现在多少所谓的机器学习算法其实被发明的起源都是来源于对大脑的研究。

好吧,其实我扯了好远。。真正跟本文有关的事,大脑的知觉恒常性问题【这个问题应该不能归属到模糊逻辑里面去】。什么是知觉恒常性,比如说大小恒常性,一个物体,放在离你很近的地方,或者离你很远的地方,你都可以大概知道这个物体有多大。这个就是我们大脑的大小恒常机制带来的。计算机就完全办不到了,应该。。。办不到吧。。。远处的东西虽然看上去变小了,但是你大脑还是会对得到的图像进行缩放,因为你可以从眼睛得到的图像里面得出物体的深度信息。而计算机图片就是一张二维的照片,没有深度的,即便如此,我们看照片也可以得到深度信息,而计算机却不行。。。吧。。。 阅读全文...