You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Word2Vec生成词嵌入后做KMeans聚类遇警告的解决咨询

解决KMeans聚类的两个警告问题

1. 处理n_init参数的FutureWarning

这个警告提示n_init的默认值将在scikit-learn 1.4版本从10改为'auto',只需显式指定n_init参数值就能消除警告:

  • 若想沿用当前默认的10次初始化:
from sklearn.cluster import KMeans

# 显式设置n_init=10
kmeans = KMeans(n_clusters=你的聚类数, n_init=10, random_state=42)
kmeans.fit(你的词嵌入数据)
  • 若想提前适配新版本的默认行为,可设置n_init='auto':
kmeans = KMeans(n_clusters=你的聚类数, n_init='auto', random_state=42)

2. 处理Windows MKL的内存泄漏警告

这个警告说明Windows环境下使用MKL时,KMeans存在潜在内存泄漏问题,解决方式是设置环境变量OMP_NUM_THREADS=1,有两种实现方式:

方式一:在Notebook内临时设置

在导入任何sklearn模块之前执行以下代码:

import os
os.environ['OMP_NUM_THREADS'] = '1'

# 之后再导入KMeans
from sklearn.cluster import KMeans

方式二:系统层面永久设置

  1. 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
  2. 在「系统变量」区域点击「新建」,输入:
    • 变量名:OMP_NUM_THREADS
    • 变量值:1
  3. 点击确定保存,重启Jupyter Notebook后生效

内容的提问来源于stack exchange,提问作者Mrunmay Mete

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 15:06:05