当前位置: 首页 > news >正文

关于网站建设相关文章桂林公司注册

关于网站建设相关文章,桂林公司注册,网站建设吉金手指排名13,时代空间网站1 K-means介绍 1.0 方法介绍 KMeans算法通过尝试将样本分成n个方差相等的组来聚类#xff0c;该算法要求指定群集的数量。它适用于大量样本#xff0c;并已在许多不同领域的广泛应用领域中使用。KMeans算法将一组样本分成不相交的簇#xff0c;每个簇由簇中样本的平均值描…1  K-means介绍 1.0 方法介绍 KMeans算法通过尝试将样本分成n个方差相等的组来聚类该算法要求指定群集的数量。它适用于大量样本并已在许多不同领域的广泛应用领域中使用。KMeans算法将一组样本分成不相交的簇每个簇由簇中样本的平均值描述。这些平均值通常称为簇的“质心” 注意质心通常不是样本点尽管它们存在于相同的空间中。 KMeans算法旨在选择最小化惯性或称为群内平方和标准的质心 1.1 惯性的缺点 惯性可以被认为是衡量簇内部一致性的一种度量。它有各种缺点 惯性假设簇是凸形的和各向同性的但这不总是情况。 它对于拉长的簇或形状不规则的流形反应不佳。惯性不是一个规范化的度量 我们只知道较低的值更好零是最优的。但是在非常高维的空间中欧几里得距离往往会变得膨胀这是所谓的“维数诅咒”的一个实例。——在k均值聚类之前运行一个降维算法如主成分分析PCA可以缓解这个问题并加快计算速度。以下是几个K-means效果不加的例子 clusters的数量不是最优各向异性的cluster分布方差不同各个簇数量不同 1.2 Kmeans算法的步骤 K均值算法通常被称为劳埃德算法Lloyds algorithm)。简单来说该算法有三个步骤 第一步选择初始质心最基本的方法是从数据集中选择样本初始化之后K均值算法由两个步骤的循环组成 第一个步骤是将每个样本分配给最近的质心第二步是通过取分配给每个前一个质心的所有样本的平均值来创建新的质心计算旧质心和新质心之间的差异并重复这最后两个步骤直到这个值小于一个阈值直到质心不再有显著移动为止K均值算法等同于期望最大化算法带有一个小的、全相等的、对角线协方差矩阵 给定足够的时间K均值总会收敛但这可能是到一个局部最小值 这在很大程度上取决于质心的初始化因此计算通常会进行多次质心的初始化也各不相同一个帮助解决这个问题的方法是k-means初始化方案initk-means 这样初始化质心通常会相互远离导致比随机初始化更好的结果 2 sklearn.cluster.KMeans sklearn.cluster.KMeans(n_clusters8, *, initk-means, n_initwarn, max_iter300, tol0.0001, verbose0, random_stateNone, copy_xTrue, algorithmlloyd) 2.1 主要参数 n_clusters簇的数量init {‘k-means’, ‘random’}或形状为(n_clusters, n_features)的数组默认为k-means 初始化方法 ‘k-means’使用基于点对总惯性贡献的经验概率分布的采样来选择初始簇质心。这种技术加快了收敛速度 这里实现的算法是“贪婪k-means”。它与普通的k-means的不同之处在于每个采样步骤进行多次尝试并从中选择最佳质心‘random’从数据中随机选择n_clusters个观测行作为初始质心数组形状应为(n_clusters, n_features)并给出初始中心n_init auto或int默认值为10k-means算法运行的次数每次都使用不同的质心种子最终结果是n_init连续运行中惯性最佳的输出。当n_initauto时运行次数取决于init的值 如果使用initrandom则为10如果使用initk-means或init是类数组的则为1max_iter int默认值为300k-means算法单次运行的最大迭代次数tol两次连续迭代的簇中心的Frobenius范数差异来声明收敛的相对容忍度 2.2 举例 from sklearn.cluster import KMeans import numpy as npX np.array([[1, 2], [1, 4], [1, 0],[10, 2], [10, 4], [10, 0]])kmeansKMeans(n_clusters2,n_initauto).fit(X) 2.2.1 属性 cluster_centers_ 簇中心的坐标 labels_ 每个点的标签 inertia_ 样本到最近簇中心的平方距离之和如果提供了样本权重则按样本权重加权 n_iter_ 运行的迭代次数 2.2.2 fit fit(X, sample_weightNone) sample_weight 是X中每个观测的权重。如果为None则所有观测都被赋予相等的权重 3 sklearn.cluster.kmeans_plusplus 类似于使用k_means来进行 sklearn.cluster.kmeans_plusplus(X, n_clusters, *, sample_weightNone, x_squared_normsNone, random_stateNone, n_local_trialsNone) X 用来选择初始种子的数据 也就是KMeans里面fit的内容 n_cluster要初始化的质心数量sample_weightX中每个观测的权重 3.1 返回值 centers形状为(n_clusters, n_features) k-means的初始中心。 indices形状为(n_clusters,) 在数据数组X中选择的中心的索引位置。对于给定的索引和中心X[index] center 3.2 举例 from sklearn.cluster import kmeans_plusplus import numpy as npX np.array([[1, 2], [1, 4], [1, 0],[10, 2], [10, 4], [10, 0]])kmeans_plusplus(X,n_clusters2)(array([[10, 0],[ 1, 4]]),array([5, 1]))4 Mini Batch K-Means MiniBatchKMeans是KMeans算法的一个变种它使用小批量mini-batches来减少计算时间同时仍然试图优化相同的目标函数 小批量是输入数据的子集在每次训练迭代中随机采样这些小批量大大减少了收敛到局部解所需的计算量与其他减少k-means收敛时间的算法不同mini-batch k-means产生的结果通常只比标准算法稍差该算法在两个主要步骤之间迭代类似于传统的k-means算法 在第一步中从数据集中随机抽取样本形成一个小批量.然后这些样本被分配到最近的质心在第二步中更新质心。与k-means不同这是按样本进行的 对于小批量中的每个样本通过取样本及其之前分配到该质心的所有样本的流式平均值来更新分配的质心。这样做的效果是随着时间的推移减少质心变化的速率。这些步骤执行直到收敛或达到预定的迭代次数为止MiniBatchKMeans比KMeans收敛得更快但结果的质量有所降低 4.1 sklearn.cluster.MiniBatchKMeans class sklearn.cluster.MiniBatchKMeans(n_clusters8, *, initk-means, max_iter100, batch_size1024, verbose0, compute_labelsTrue, random_stateNone, tol0.0, max_no_improvement10, init_sizeNone, n_initwarn, reassignment_ratio0.01) 4.1.1 主要参数 n_clusters簇的数量init {‘k-means’, ‘random’}或形状为(n_clusters, n_features)的数组默认为k-means 初始化方法 ‘k-means’使用基于点对总惯性贡献的经验概率分布的采样来选择初始簇质心。这种技术加快了收敛速度 这里实现的算法是“贪婪k-means”。它与普通的k-means的不同之处在于每个采样步骤进行多次尝试并从中选择最佳质心‘random’从数据中随机选择n_clusters个观测行作为初始质心数组形状应为(n_clusters, n_features)并给出初始中心max_iter int默认值为300k-means算法单次运行的最大迭代次数batch_sizemini batch的大小默认是1024n_init auto或int默认值为3k-means算法运行的次数每次都使用不同的质心种子最终结果是n_init连续运行中惯性最佳的输出。当n_initauto时运行次数取决于init的值 如果使用initrandom则为3如果使用initk-means或init是类数组的则为1 4.1.2 属性 还是那些cluster_centerslabels_inertia_n_iter_n_steps 4.1.3 方法 方法上fittranformpredict这些都有多了一个partial_fit表示使用一个mini-batch的样本 4.2 举例 from sklearn.cluster import MiniBatchKMeans import numpy as npX np.array([[1, 2], [1, 4], [1, 0],[10, 2], [10, 4], [10, 0]])mini_kmeansMiniBatchKMeans(n_clusters2).fit(X)mini_kmeans.cluster_centers_array([[ 1. , 2.57142857],[10. , 2. ]]) mini_kmeans.labels_ #array([0, 0, 0, 1, 1, 1])
http://www.zqtcl.cn/news/377150/

相关文章:

  • 网站开发辅助工具搜索引擎推广实训
  • 如何用手机制作网站比价网站
  • 商城类网站备案四川全网推网络推广
  • 好设计购物网站wordpress 公网访问不了
  • 局域网网站建设需要什么条件wordpress文章列表高度
  • 长春怎样建网站?学服装设计培训机构
  • 怎么用织梦制作响应式布局网站阳江网红
  • 洛阳网站建站72建站网
  • 网站版权信息修改app开发公司资质
  • 用vs2015做网站教程天津红桥网站建设
  • 触屏网站开发四川住房建设厅网站
  • 百度商桥怎么接网站wordpress电影自动采集主题
  • 丽水做网站公司用vps建网站备案
  • 西安网站制作机构视频网站 备案
  • 北京城乡建设学校网站国内外贸网站建设公司
  • 万峰科技著.asp.net网站开发四酷全书电子工业出版社专业网站制作定制
  • 如何做好一个网站运营建公司网站的详细步骤
  • python开发做网站代理注册公司怎么样
  • 网站开发技术简介深圳市市场监督管理局官网
  • 有那种网站的浏览器wordpress调用当前分类文章
  • 电子商务网站推广论文网站规划思想方法有哪些内容
  • adsl做网站无锡免费网站制作
  • 怎么利用网站开发app免费软件库合集软件资料网站
  • 做变形字的网站工程公司简介模板
  • 网站建设网页怎么排列顺序网站制作 用户登录系统
  • 音乐网站用什么语言做深圳网站排名优化公司
  • h5响应式网站建设方案南京做微网站
  • 建设班级网站首页查注册公司什么网站
  • 中小企业网站建设平台网站开发技术大学教材
  • 有四川建设人才网这个网站吗青岛外贸网站运营哪家好