我正在使用scikitlearn的MiniBatchKMeans()函数。好, 在其文档中有:
batch_size :int,optional,默认值:100 迷你批次的大小。
init_size :int,optional,默认值:3 * batch_size 为加速初始化而随机采样的样本数(有时以牺牲精度为代价):通过在数据的随机子集上运行批处理KMeans来初始化唯一的算法。这需要大于n_clusters。
我对此并不了解,因为小批量的最终尺寸似乎是 3 * batch_size ,而不是 batch_size 指定的尺寸参数。
我误解了什么。如果是这样,有人可以解释这两个论点。我是对的,为什么有这两个论点,因为它们似乎是多余的。
感谢!!!
答案 0 :(得分:2)
批量大小由batch_size
,期间定义。此外,您可以定义init_size
,其中初始化过程的样本大小,默认情况下 ,它是3 * batch_size
。您可以简单地设置bath_size=100
和init_size=10
然后使用10个样本来执行初始化(kmeans不是全局收敛的,在初始化阶段有很多技术可以处理它)以及之后批量为100将在算法执行期间使用。