聚类——KFCM
聚类——认识KFCM算法
作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/
一、KFCM概述
KFCM:基于核的改进的模糊c均值聚类算法。它是通过核函数将原始空间中的点映射到特征空间中,考虑到原始空间中的点无法用一个线性函数进行划分,于是将其变换到一个更高维度的空间中,可以在这个高维空间中找到一个线性函数,容易对原始数据进行划分。这个高维空间就叫特征空间。从低维到高维空间的映射函数的内积就叫核函数。将核函数引入机器学习的一个重要原因是:当特征空间维数很高而核函数计算量较之特征空间内的内积运算计算量相对很小时,这样做可以提高计算效率。
基于目标函数的FCM聚类算法存在两大缺陷:一方面,隶属度和为1的约束条件易造成它对对孤立点和噪声敏感;另一方面它本身是一种迭代下降的算法,使得它初始聚类中心敏感且不易收敛于全局最优。KFCM算法提高了聚类性能,使算法对噪声和孤立点具有较好的鲁棒性。
核函数的定义如下:
通过核函数改变模糊c均值聚类算法中的距离函数,定义如下目标函数:
利用拉格朗日的极值必要条件,推出U ,V的迭代式如下:
二、算法的步骤
这种方法通过核函数形成一种映射关系,将原始空间中的点转换到特征空间进行计算与分析,最后得到原始空间的最优划分。将上述基于核的模糊C均值聚类算法记为KFCM。
聚类——KFCM的更多相关文章
- 聚类——KFCM的matlab程序
聚类——KFCM的matlab程序 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在聚类——KFCM文章中已介绍了KFCM-F算法的理论知识,现在用m ...
- KFCM算法的matlab程序(用FCM初始化聚类中心)
KFCM算法的matlab程序(用FCM初始化聚类中心) 在“聚类——KFCM”这篇文章中已经介绍了KFCM算法,现在用matlab程序对iris数据库进行实现,用FCM初始化聚类中心,并求其准确度与 ...
- 聚类——GAKFCM
聚类——GAKFCM 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 参考文献:黄白梅. 基于GA优化的核模糊C均值聚类算法的研究[D]. 武汉科技大学 ...
- KFCM算法的matlab程序
KFCM算法的matlab程序 在“聚类——KFCM”这篇文章中已经介绍了KFCM算法,现在用matlab程序对iris数据库进行简单的实现,并求其准确度. 作者:凯鲁嘎吉 - 博客园 http:// ...
- 基于核方法的模糊C均值聚类
摘要: 本文主要针对于FCM算法在很大程度上局限于处理球星星团数据的不足,引入了核方法对算法进行优化. 与许多聚类算法一样,FCM选择欧氏距离作为样本点与相应聚类中心之间的非相似性指标,致使算法趋向 ...
- 聚类——GAKFCM的matlab程序
聚类——GAKFCM的matlab程序 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在聚类——GAKFCM文章中已介绍了GAKFCM算法的理论知识, ...
- 聚类——WKFCM的matlab程序
聚类——WKFCM的matlab程序 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在聚类——WKFCM文章中已介绍了WKFCM算法的理论知识,现在用 ...
- 聚类——WKFCM
聚类——认识WKFCM算法 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 参考文献:Shen H, Yang J, Wang S, et al. At ...
- 用scikit-learn学习谱聚类
在谱聚类(spectral clustering)原理总结中,我们对谱聚类的原理做了总结.这里我们就对scikit-learn中谱聚类的使用做一个总结. 1. scikit-learn谱聚类概述 在s ...
随机推荐
- vim之添加多行和删除多行
1.复制单行和多行. 1)单行复制 在命令模式下,将光标移到将要复制的行处,按“yy”进行复制,按“p”进行粘贴. 2)多行复制 在命令模式下,将光标移到将要复制的行处,按“nyy”进行复制(n代表行 ...
- μC/OS-II 中的任务管理
1. 任务的状态及其转换 睡眠状态: 任务在没有被配备任务控制块或被剥夺了任务控制块时的状态叫做任务的睡眠状态. 等待状态: 正在运行的任务,需要等待一段时间或需要等待一个事件发生再运行时,该任务就会 ...
- MySQL系列详解九:MySQL级联复制演示-技术流ken
前言 级联复制就是master服务器,只给后端一台slave服务器同步数据,然后这个slave服务器在向后端的所有slave服务器同步数据,这样就可以降低master服务器的写压力,和复制数据的网络I ...
- Apollo 8 — ConfigService 异步轮询接口的实现
源码 Apollo 长轮询的实现,是通过客户端轮询 /notifications/v2 接口实现的.具体代码在 com.ctrip.framework.apollo.configservice.con ...
- npm install 失败
总结列表: 1. There is already an open DataReader associated with this Connection which must be closed fi ...
- [转]php hash_pbkdf2 和 node.js crypto.pbkdf2
http://php.net/manual/en/function.hash-pbkdf2.php https://nodejs.org/api/crypto.html#crypto_crypto_p ...
- JBoss应用服务器清理缓存
旭日Follow_24 的CSDN 博客 ,全文地址请点击: https://blog.csdn.net/xuri24/article/details/82220081 jboss跟tomcat一样, ...
- JavaScript for/in 语句 遍历数组内容
for-in遍历 for-in是为遍历对象而设计的,不适用于遍历数组. 遍历数组的缺点:数组的下标index值是数字,for-in遍历的index值"0","1" ...
- html/css的学习之路(2)
今天我跟大家说一下html,html里面其实什么东西都可以放进去的.首先创建一个文本,改变他的后缀名为html.这时有个最重要的一点不管是html还是css都不可以用中文和符号命名. 这是html中的 ...
- cf1136E. Nastya Hasn't Written a Legend(二分 线段树)
题意 题目链接 Sol yy出了一个暴躁线段树的做法. 因为题目保证了 \(a_i + k_i <= a_{i+1}\) 那么我们每次修改时只需要考虑取max就行了. 显然从一个位置开始能影响到 ...