kmeanscluster, knn 以及em

前面用kmeanscluster做过聚簇分析,聚簇分析是一种非监督的学习,根据样本之间的距离把样本分成k个类,返回k个类的中心向量。在opencv中kmeanscluster在core.hpp中定义,实现在matrix.cpp中,是比较早提供的一个函数。距离度量函数是欧式距离de平方。opencv不提供修改距离公式的接口。

knn法也是根据欧式距离求出最近的k个样本。opencv中knn有个train方法。貌似就是把样本矩阵的头部转换成一个向量树,主要的工作还是在find-nearest函数中。

不是很明白kmeansculster和knn有啥区别。

 

em的原理则比较复杂一些。

你可能感兴趣的:(工作)