本文简要介绍python语言中 sklearn.cluster.MiniBatchKMeans
的用法。
用法:
class sklearn.cluster.MiniBatchKMeans(n_clusters=8, *, init='k-means++', max_iter=100, batch_size=1024, verbose=0, compute_labels=True, random_state=None, tol=0.0, max_no_improvement=10, init_size=None, n_init=3, reassignment_ratio=0.01)
小批量K-Means 聚类。
在用户指南中阅读更多信息。
- n_clusters:整数,默认=8
要形成的簇数以及要生成的质心数。
- init:{‘k-means++’, ‘random’},可调用或类似数组的形状 (n_clusters, n_features),默认=‘k-means++’
初始化方法:
‘k-means++’:以智能方式为k-mean聚类选择初始聚类中心以加速收敛。有关更多详细信息,请参阅 k_init 中的注释部分。
‘random’:从初始质心的数据中随机选择
n_clusters
观测值(行)。如果传递了一个数组,它的形状应该是 (n_clusters, n_features) 并给出初始中心。
如果传递了一个可调用对象,它应该接受参数 X、n_clusters 和一个随机状态并返回一个初始化。
- max_iter:整数,默认=100
在独立于任何早期停止标准启发式停止之前,对完整数据集的最大迭代次数。
- batch_size:整数,默认=1024
小批量的大小。对于更快的计算,您可以将
batch_size
设置为大于 256 * 内核数以在所有内核上启用并行性。- verbose:整数,默认=0
详细模式。
- compute_labels:布尔,默认=真
一旦小批量优化收敛到合适的位置,计算整个数据集的标签分配和惯性。
- random_state:int、RandomState 实例或无,默认=无
确定质心初始化和随机重新分配的随机数生成。使用int 来确定随机性。请参阅词汇表。
- tol:浮点数,默认=0.0
根据平均中心平方位置变化的平滑 variance-normalized 测量的相对中心变化来控制提前停止。这种早期停止启发式更接近用于算法的批处理变体的启发式,但在惯性启发式上会产生轻微的计算和内存开销。
要禁用基于归一化中心变化的收敛检测,请将 tol 设置为 0.0(默认值)。
- max_no_improvement:整数,默认=10
根据不会对平滑惯量产生改进的小批量的连续数量来控制提前停止。
要禁用基于惯性的收敛检测,请将max_no_improvement 设置为无。
- init_size:整数,默认=无
为加快初始化而随机采样的样本数(有时会牺牲准确性):唯一的算法是通过在数据的随机子集上运行批处理 KMeans 来初始化的。这需要大于 n_clusters。
如果
None
,则启发式为init_size = 3 * batch_size
如果3 * batch_size < n_clusters
,否则为init_size = 3 * n_clusters
。- n_init:整数,默认=3
尝试的随机初始化次数。与 KMeans 相比,该算法仅运行一次,使用按惯性测量的最佳
n_init
初始化。- reassignment_ratio:浮点数,默认=0.01
控制要重新分配的中心的最大计数的分数。较高的值意味着更容易重新分配低计数中心,这意味着模型将需要更长的时间来收敛,但应该收敛到更好的聚类中。但是,过高的值可能会导致收敛问题,尤其是在小批量的情况下。
- cluster_centers_:ndarray 形状(n_clusters,n_features)
聚类中心的坐标。
- labels_:ndarray 形状 (n_samples,)
每个点的标签(如果 compute_labels 设置为 True)。
- inertia_:浮点数
如果 compute_labels 设置为 True,则与所选分区关联的惯性标准的值。如果 compute_labels 设置为 False,则它是基于批量惯性 index 加权平均值的惯性近似值。惯性被定义为样本到其聚类中心的平方距离之和,如果提供,则由样本权重加权。
- n_iter_:int
整个数据集的迭代次数。
- n_steps_:int
处理的小批量数量。
counts_
ndarray 形状 (n_clusters,)已弃用:属性
counts_
在 0.24 中已弃用,并将在 1.1 中删除(重命名为 0.26)。init_size_
int已弃用:属性
init_size_
在 0.24 中已弃用,并将在 1.1 中删除(重命名为 0.26)。- n_features_in_:int
拟合期间看到的特征数。
- feature_names_in_:ndarray 形状(
n_features_in_
,) 拟合期间看到的特征名称。仅当
X
具有全为字符串的函数名称时才定义。
参数:
属性:
注意:
参看https://www.eecs.tufts.edu/~dsculley/papers/fastkmeans.pdf
例子:
>>> from sklearn.cluster import MiniBatchKMeans >>> import numpy as np >>> X = np.array([[1, 2], [1, 4], [1, 0], ... [4, 2], [4, 0], [4, 4], ... [4, 5], [0, 1], [2, 2], ... [3, 2], [5, 5], [1, -1]]) >>> # manually fit on batches >>> kmeans = MiniBatchKMeans(n_clusters=2, ... random_state=0, ... batch_size=6) >>> kmeans = kmeans.partial_fit(X[0:6,:]) >>> kmeans = kmeans.partial_fit(X[6:12,:]) >>> kmeans.cluster_centers_ array([[2. , 1. ], [3.5, 4.5]]) >>> kmeans.predict([[0, 0], [4, 4]]) array([0, 1], dtype=int32) >>> # fit on the whole data >>> kmeans = MiniBatchKMeans(n_clusters=2, ... random_state=0, ... batch_size=6, ... max_iter=10).fit(X) >>> kmeans.cluster_centers_ array([[1.19..., 1.22...], [4.03..., 2.46...]]) >>> kmeans.predict([[0, 0], [4, 4]]) array([0, 1], dtype=int32)
相关用法
- Python sklearn MiniBatchSparsePCA用法及代码示例
- Python sklearn MiniBatchDictionaryLearning用法及代码示例
- Python sklearn MinMaxScaler用法及代码示例
- Python sklearn MinCovDet用法及代码示例
- Python sklearn MissingIndicator用法及代码示例
- Python sklearn MDS用法及代码示例
- Python sklearn MLPClassifier用法及代码示例
- Python sklearn MultiTaskLasso用法及代码示例
- Python sklearn MultiTaskLassoCV用法及代码示例
- Python sklearn MultiTaskLasso.path用法及代码示例
- Python sklearn MultiOutputClassifier用法及代码示例
- Python sklearn MultiTaskElasticNet.path用法及代码示例
- Python sklearn MultiTaskElasticNetCV.path用法及代码示例
- Python sklearn MultiTaskElasticNetCV用法及代码示例
- Python sklearn MLPRegressor用法及代码示例
- Python sklearn MultiLabelBinarizer用法及代码示例
- Python sklearn MultiOutputRegressor用法及代码示例
- Python sklearn MultiTaskLassoCV.path用法及代码示例
- Python sklearn Matern用法及代码示例
- Python sklearn MaxAbsScaler用法及代码示例
- Python sklearn MeanShift用法及代码示例
- Python sklearn MultiTaskElasticNet用法及代码示例
- Python sklearn MultinomialNB用法及代码示例
- Python sklearn jaccard_score用法及代码示例
- Python sklearn WhiteKernel用法及代码示例
注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.cluster.MiniBatchKMeans。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。