Machine learning 为什么pycharm在加载.joblib文件时出错

Machine learning 为什么pycharm在加载.joblib文件时出错,machine-learning,scikit-learn,pycharm,decision-tree,joblib,Machine Learning,Scikit Learn,Pycharm,Decision Tree,Joblib,我有一个经过培训的决策树模型文件music-recommender.joblib。当我使用Jupyter笔记本时,我能够成功加载这个经过训练的模型,并能够进行预测。但是和我在pycharm中使用的代码一样,它显示了错误 在Jupyter笔记本中 如您所见,它基于经过训练的模型进行了正确的预测 魅力四射 有人知道为什么会这样吗?您调用joblib.load方法,但不将输出分配给任何变量。在下一步中,您将尝试使用上面未定义的模型变量,因此会出现错误 您需要执行以下操作: model = joblib

我有一个经过培训的决策树模型文件music-recommender.joblib。当我使用Jupyter笔记本时,我能够成功加载这个经过训练的模型,并能够进行预测。但是和我在pycharm中使用的代码一样,它显示了错误

在Jupyter笔记本中

如您所见,它基于经过训练的模型进行了正确的预测

魅力四射

有人知道为什么会这样吗?

您调用joblib.load方法,但不将输出分配给任何变量。在下一步中,您将尝试使用上面未定义的模型变量,因此会出现错误

您需要执行以下操作:

model = joblib.load(...)

万岁,它起作用了。但我可以知道为什么同样的代码在Jupyter笔记本中工作吗?我最近在学习机器学习,所有的小问题都出现了now@Anu对于给定的代码,它不应该在Jupyter中工作。您确定没有在笔记本的其他地方定义模型变量吗?拿一个新笔记本,然后只尝试上面的代码!在Jupyter笔记本中定义模型变量之前,我有一段代码。但在运行上述代码之前,我已经将其注释掉并重新运行该单元格。所以从技术上讲,这意味着没有分配正确的模型变量?@Anu。通过注释代码,您只是再次抑制了该代码的执行。但它已经执行了一次,并且模型仍然存在于内存中。您可以通过在新单元中执行model来检查这一点。要实际删除该变量,请执行del model code.Yes。你是对的。我想只要对它进行注释并运行该单元,内存就会丢失。将相同的代码粘贴到新工作簿后,出现错误。谢谢你的指导。