如何在Amazon SageMaker环境中升级sklearn库至1.0.0及以上版本
问题原因与升级方案
操作存在的问题
- 包名使用错误:
sklearn是PyPI上的空占位包,本身版本固定为0.0,仅用于依赖牵引安装真实的scikit-learn包,你升级sklearn永远不会触发scikit-learn的版本更新。 - 内核版本不兼容:你使用的
amazonei_mxnet_p36内核为Python 3.6版本,而scikit-learn从1.0.0版本开始就不再支持Python 3.6,因此在该环境下无法安装1.0.0及以上版本的scikit-learn。
另外你观察到的版本显示差异是正常现象:pip freeze输出的sklearn==0.0是空占位包的版本,没有实际参考价值,Python中执行print(sklearn.__version__)输出的0.24.1才是当前环境真实生效的scikit-learn版本。
正确升级步骤
- 更换SageMaker notebook内核:选择支持Python 3.7及以上版本的内核,比如「Python 3 (Data Science)」「Data Science 3.0」等,这类内核的Python版本满足scikit-learn 1.0+的运行要求。
- 确认当前内核对应Python路径,避免装错环境:在notebook的cell中执行如下代码,获取当前运行环境的Python可执行文件路径:
import sys print(sys.executable)
- 执行升级命令,直接升级真实的scikit-learn包:使用变量代入执行,避免手动输入路径出错:
!{sys.executable} -m pip install --upgrade scikit-learn
- 升级完成后验证版本:执行如下代码确认生效的版本符合要求:
import sklearn print(sklearn.__version__)
内容的提问来源于stack exchange,提问作者Atlantis
相关产品推荐
相关产品推荐

