分类 算法 下的文章

转自:http://blog.csdn.net/hguisu/article/details/7880288

1、Bit Map算法简介
来自于《编程珠玑》。所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素。由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省。

2、Bit Map的基本思想
我们先来看一个具体的例子,假设我们要对0-7内的5个元素(4,7,2,5,3)排序(这里假设这些元素没有重复)。那么我们就可以采用Bit-map的方法来达到排序的目的。要表示8个数,我们就只需要8个Bit(1Bytes),首先我们开辟1Byte的空间,将这些空间的所有Bit位都置为0,如下图:
1.jpg

- 阅读剩余部分 -

图像处理中经常用到快速傅里叶变换(FFT),使用Matlab命令fftfft2很容易实现快速傅里叶变换,由于Matlab/C++混合编程接口性能太差,实际项目中使用C++实现具有更高的性能。

网上有不少关于快速傅里叶变换的C++实现方式,要么实验结果和Matlab运算结果不一样(我们通常使用Matlab做实验,验证算法可行性),要么算法不完整,却少逆变换或者频率对齐函数(fftshift)。本文程序实现了所有程序,包括正变换、逆变换,以及频率对齐函数。

1、正变换(FFT
void ImgFFT2D(unsigned char* imgBuf, int width, int height,unsigned char *imgBufOut,ComplexNumber *m_pFFTBuf)
形参解释
(1)unsigned char* imgBuf:图像输入矩阵,二维转成一维后显示;
(2)int width:图像宽度;
(3)int height:图像高度;
(4)unsigned char *imgBufOut:傅里叶变换后频谱图像输出;
(5)ComplexNumber *m_pFFTBuf:傅里叶变换后系数;
ComplexNumber:复数类型

struct ComplexNumber
{
    float imag;  //虚部
    float real;  //实部
};

通常图像在傅里叶域处理就是对傅里叶变换系数进行处理,再进行逆变换得到处理后的结果。

- 阅读剩余部分 -

引用出处:傅里叶变换(1)傅里叶变换(2)

你眼中看似落叶纷飞变化无常的世界,实际只是躺在上帝怀中一份早已谱好的乐章。
抱歉,这不是一句鸡汤文,而是黑板上确凿的公式:傅里叶同学告诉我们,任何周期函数,都可以看作是不同振幅,不同相位正弦波的叠加。在第一个例子里我们可以理解为,利用对不同琴键不同力度,不同时间点的敲击,可以组合出任何一首乐曲。

而贯穿时域与频域的方法之一,就是传中说的傅里叶分析。傅里叶分析可分为傅里叶级数(Fourier Serie)和傅里叶变换(Fourier Transformation) ······
7cc829d3gw1egu4n4y81kj20go0cujt0.jpg

国际权威的学术组织the IEEE International Conference on Data Mining(ICDM)2006年12月评选出了数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM,PageRank,AdaBoost, kNN, Naive Bayes, and CART.

不仅仅是选中的十大算法,其实参加评选的18种算法,实际上随便拿出一种来都可以称得上是经典算法,它们在数据挖掘领域都产生了极为深远的影响。

1. C4.5
C4.5算法是机器学习算法中的一种分类决策树算法,其核心算法是ID3算法. C4.5算法继承了ID3算法的优点,并在以下几方面对ID3算法进行了改进:
1) 用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足;
2) 在树构造过程中进行剪枝;
3) 能够完成对连续属性的离散化处理;
4) 能够对不完整数据进行处理。
C4.5算法有如下优点:产生的分类规则易于理解,准确率较高。其缺点是:在构造树的过程中,需要对数据集进行多次的顺序扫描和排序,因而导致算法的低效。

- 阅读剩余部分 -

在数论,对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。此函数以其首名 研究者欧拉命名,它又称为Euler's totient function、φ函数、欧拉商数等。例如φ(8)=4,因为1,3,5,7均和8互质。从欧拉函数引伸出来在环论方面的事实和拉格朗日定理构成了欧拉定理的证明。

简介

  φ函数的值
  φ(1)=1(唯一和1互质的数就是1本身)。
  若n是质数p的k次幂,φ(n)=p^k-p^(k-1)=(p-1)p^(k-1),因为除了p的倍数外,其他数都跟n互质。
  欧拉函数是积性函数——若m,n互质,φ(mn)=φ(m)φ(n)。
  特殊性质:当n为奇数时,φ(2n)=φ(n), 证明于上述类似。

- 阅读剩余部分 -