scikit-learn 中的 minibatch kmeans 是不是通过使用部分拟合进行增量学习?

Posted

技术标签:

【中文标题】scikit-learn 中的 minibatch kmeans 是不是通过使用部分拟合进行增量学习?【英文标题】:Is minibatch kmeans in scikit-learn having an incremental learning by using partial fit?scikit-learn 中的 minibatch kmeans 是否通过使用部分拟合进行增量学习? 【发布时间】:2017-04-19 22:37:06 【问题描述】:

我即将使用小批量 kmeans,因为我有一个庞大的数据集,我每次输入数据集时都使用 partial_fit 对吗?我正在使用它,假设每 100 个数据集是在学习累积的集群中心还是覆盖旧的集群中心?我对部分拟合有点困惑

【问题讨论】:

您确定您的进程受处理器限制而不是 I/O 限制吗? 25% 的 CPU 使用率表示单个内核的使用率。如果您最大化一个核心,您会看到 100% 的使用率。 【参考方案1】:

25% 表示它只使用一个核心 25% ?因此,您甚至一开始都没有使用单核。因此,在这种情况下,您应该调查您的进程可能受到其他东西(例如磁盘 I/O)的约束,并尝试对其进行优化。

说到使用所有核心(多核),我认为在python中没有什么像'真正的多线程',你受到GIL(全局解释器锁)的限制,所以python不能使用多核那种感觉。您可以通过在 python 中敲击一些外部程序(支持真正的多线程)在 python 中使用多核。

您也可以考虑使用 go instad 的 python。 go vs python

【讨论】:

以上是关于scikit-learn 中的 minibatch kmeans 是不是通过使用部分拟合进行增量学习?的主要内容,如果未能解决你的问题,请参考以下文章

r-cnn学习:minibatch

GraphSAGE 代码解析 - minibatch.py

Flink SQL 功能解密系列 解决热点问题的大杀器 MiniBatch

Torch 中的 setNumInputDims 应该做啥?

faster-rcnn 之 基于roidb get_minibatch(数据准备操作)

torch_geometric笔记:数据集 ENZYMES &Minibatches