聚类

聚类算法的评估

时光毁灭记忆、已成空白 提交于 2019-12-05 11:26:25
这里只讨论没有外部标签的情况,有标签自然好判别 数据簇的特点 以中心定义的数据簇:通常球形分布,集合中的数据到中心的距离相比到其他簇中心的距离更近 以密度定义的数据簇:当数据簇不规则或互相盘绕,并且有噪声和离群点时,常常使用 以连通定义的数据簇:具有连通关系 以概念定义的数据簇:同一集合内数据具有某一相同性质 聚类可行性 检测数据分布是否存在非随机的簇结构 方法 观察聚类误差是否随着聚类类别数目的增加而单调变化(找不到一个合适的K) 霍普金斯统计量,判断数据在空间上的随机性 首先,在所有样本中随机找n个点,记为 \(p_1, \cdots, p_n\) ,对其中的每一个点,都在样本空间中找到一个离它最近的点就按他们之间的距离 \(x_i\) ,从而得到距离向量 \(x_1, \cdots, x_n\) ;然后,从样本的可能取值范围随机生成n个点,记为 \(q_1, \cdots, q_n\) ,对每个点找到他们最近的样本点计算距离,得到 \(y_1, \cdots, y_n\) 。霍普金斯统计量 \(H\) 表示为 \[H = \frac{\sum \limits_{i=1}^n y_i}{\sum \limits_{i=1}^{n} x_i + \sum \limits_{i=1}^{n} y_i} \] 如果样本随机分布,则H接近0.5。如果有聚类趋势

MNIST | 基于k-means和KNN的0-9数字手写体识别

匆匆过客 提交于 2019-12-05 09:03:48
MNIST | 基于k-means和KNN的0-9数字手写体识别 1 背景说明 2 算法原理 3 代码实现 3.1 文件目录 3.2 核心代码 4 实验与结果分析 5 后记 概要: 本实验是在实验“ kaggle|基于k-means和KNN的语音性别识别 ”、实验“ MNIST|基于朴素贝叶斯分类器的0-9数字手写体识别 ”以及实验“ 算法|k-means聚类 ”的基础上进行的,把k-means聚类和CNN识别应用到数字手写体识别问题中去。有关MINIST数据集和kmeans+KNN的内容可以先看我的上面三篇博文,本实验的代码依然是MATLAB。 关键字: 数字手写体识别; k-means; KNN; MATLAB; 机器学习 1 背景说明    我在我的 上上篇博文 中提到会把kmeans聚类算法用到诸如语音性别识别和0-9数字手写体识别等具体问题中去, 语音性别识别的实验 已经在11月2号完成,现在来填0-9数字手写体识别的坑。由于本篇博客承接了我之前若干篇博客,而MNIST数据集、kmeans以及KNN算法的原理和用法等内容均已在之前提到过,所以这里不再专门说明。 2 算法原理    可以将本次实验思路概括如下:    S1:训练时,将训练集中0-9对应的数据各聚成k类,共计10k个聚类中心;    S2:验证时

32(1).层次聚类---AGNES

て烟熏妆下的殇ゞ 提交于 2019-12-05 09:03:36
层次聚类hierarchical clustering 试图在不同层次上对数据集进行划分,从而形成树形的聚类结构。 AGglomerative NESting:AGNES是一种常用的采用自底向上聚合策略的层次聚类算法。 来源: https://www.cnblogs.com/nxf-rabbit75/p/11917841.html

32(2).层次聚类---BIRCH

僤鯓⒐⒋嵵緔 提交于 2019-12-05 09:03:17
BIRCH:Balanced Iterative Reducing and Clustering Using Hierarchies 算法通过聚类特征树CF Tree:Clustering Feature True来执行层次聚类,适合于样本量较大、聚类类别数较大的场景。 来源: https://www.cnblogs.com/nxf-rabbit75/p/11917863.html

29.聚类---性能度量

杀马特。学长 韩版系。学妹 提交于 2019-12-05 07:05:22
一、性能度量 聚类的性能度量也称作聚类的有效性指标。 聚类的性能度量分两类: 聚类结果与某个参考模型进行比较,称作 外部指标 ; 直接考察聚类结果而不利用任何参考模型,称作 内部指标 。 1. 外部指标 对于数据集$D={x_1,x_2,...,x_N}$,假定通过聚类给出的簇划分为$C={C_1,C_2,...,C_K}$,参考模型给出的簇划分为$C*=\{C_1^*,C_2^*,...,C_K^*\}$,其中$K$和$K'$不一定相等。 令$\lambda,\lambda^*$分别表示$C,C^*$的簇标记向量。定义: 其中|·|表示集合的元素的个数,各集合的意义为: $SS$:包含了同时隶属于$C,C^*$的样本对; $SD$:包含了隶属于$C$,但是不隶属于$C^*$的样本对; $DS$:包含了不隶属于$C$,但是隶属于$C^*$的样本对; $DD$:包含了同时不隶属于$C,C^*$的样本对; 由于每个样本对$(x_i,x_j)$,$i<j$仅能出现在一个集合中,因此有 $a+b+c+d=\frac{N(N-1)}{2}$ 下面性能度量的结果都在[0,1]之间,这些值越大,说明聚类的性能越好。 1.1 Jaccard系数 $JC=\frac{a}{a+b+c}$ 它刻画了所有的同类的样本对(要么在C中属于同类,要么在C*中属于同类)中,同时 1.2 FM指数 1.3

Deep Compression

試著忘記壹切 提交于 2019-12-05 02:26:01
本文为Deep compression的论文笔记,相应的ppt及文字讲解 原论文《 Deep Compression: Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffman coding 》https://arxiv.org/abs/1510.00149 相关论文 深鉴科技FPGA2017最佳论文ESE Efficient speech recognition engine with sparse LSTM on FPGA论文详解 PipeCNN论文详解:用OpenCL实现FPGA上的大型卷积网络加速 韩松EIE:Efficient Inference Engine on Compressed Deep Neural Network论文详解 韩松博士毕业论文Efficient methods and hardware for deep learning论文详解 目录 一、摘要 意义 方法 作用 二、方法 2.1 剪枝 稀疏矩阵的存储 2.2 权值量化与共享 聚类方法 权值更新方法Fine-tune 意义 压缩率 量化没有降低数据精度 2.3 初始化权重的值 2.4 哈夫曼编码 可压缩性 哈夫曼编码 三、实验 四、结论 Deep compression是一篇关于模型压缩的论文

K均值聚类算法

独自空忆成欢 提交于 2019-12-05 02:19:48
k均值聚类算法(k-means clustering algorithm)是一种迭代求解的聚类分析算法,其步骤是随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。 定义 聚类是一个将数据集中在某些方面相似的数据成员进行分类组织的过程,聚类就是一种发现这种内在结构的技术,聚类技术经常被称为无监督学习。 k均值聚类是最著名的划分聚类算法,由于简洁和效率使得他成为所有聚类算法中最广泛使用的。给定一个数据点集合和需要的聚类数目k,k由用户指定,k均值算法根据某个距离函数反复把数据分入k个聚类中。 算法 先随机选取K个对象作为初始的聚类中心。然后计算每个对象与各个初始聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。一旦全部对象都被分配了,每个聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是以下任何一个:   1)没有(或最小数目)对象被重新分配给不同的聚类

数据挖掘面试

早过忘川 提交于 2019-12-05 01:49:05
问题一: 你简历中上过的数据挖掘、机器学习等课程,是学校的研究生课程还是自己单独学习的;回答道:研究生课程有学习,自己单独私下也有学习 1、监督学习和无监督学习的区别?分类回归一般属于哪种?聚类属于哪种?请举例你知道的相关有监督学习和无监督学习算法 1:监督学习和无监督学习的区别在于:监督学习数据样本是带有标签的,而无监督学习的数据样本是没有标签的;分类回归一般属于监督学习,聚类是无监督学习;无监督学习大致又有层次聚类、核密度聚类等(本人对无监督研究并不是很深入,大致答了)常见的监督学习:KNN、决策树(后面陆续问到决策树有几种,区别是什么)、SVM(后续问到常用的核函数有哪些)、随机森林、xgboost、朴素贝叶斯、逻辑回归、神经网络;无监督学习主要有:K-means,基于密度聚类、基于谱聚类、ISO-Forest接触的等等 2、生成式模型和判别式模型的区别 2:判别式模型建模过程主要是依靠代价准则函数,通过代价准则函数,拟合出一个最优判别方程,进行判别,而生成式模型主要是依靠挖掘数据的内在规则(因此数据量要求也高),生成一个概率估计;例如逻辑回归和朴素贝叶斯,前者是判别模型,后者是生成模型 3、你对集成算法有了解吗?为什么集成要求的是弱分类器,弱分类器的定义是什么?而不能是强分类器?GBDT和xgboost的区别是什么? 3:对集成学习有一定的了解;弱分类器

100天搞定机器学习

萝らか妹 提交于 2019-12-05 01:47:38
100天搞定机器学习 大家好,100天搞定机器学习前54天是对Avik-Jain开源项目100-Days-Of-ML-Code的翻译+自己的理解 https://github.com/Avik-Jain/100-Days-Of-ML-Code 但是这个项目到54天就鸽掉了,十分可惜。 从第55天开始,我将续写这个栏目。 由于之前的文章太多参考Avik-Jain,我也将不定期对之前的章节进行重置。欢迎star, 另:欢迎关注我的微信公众号:机器学习算法与Python实战 这个专栏将首发至公众号,也欢迎添加我的私人微信,一起交流,也可合作将这个项目进行到底! 添加好友麻烦备注:github 100天搞定机器学习|Day1数据预处理 100天搞定机器学习|Day2简单线性回归分析 100天搞定机器学习|Day3多元线性回归 100天搞定机器学习|Day4-6 逻辑回归 100天搞定机器学习|Day7 K-NN 100天搞定机器学习|Day8 逻辑回归的数学原理 100天搞定机器学习|Day9-12 支持向量机 100天搞定机器学习|Day11 实现KNN 100天搞定机器学习|Day13-14 SVM的实现 100天搞定机器学习|Day15 朴素贝叶斯 100天搞定机器学习|Day16 通过内核技巧实现SVM 100天搞定机器学习|Day17-18 神奇的逻辑回归 100天搞定机器学习