当前位置: 首页 > 面试题库 >

在sklearn中保存MinMaxScaler模型

潘秦斩
2023-03-14
问题内容

我正在MinMaxScalersklearn中使用模型来规范模型的功能。

training_set = np.random.rand(4,4)*10
training_set

       [[ 6.01144787,  0.59753007,  2.0014852 ,  3.45433657],
       [ 6.03041646,  5.15589559,  6.64992437,  2.63440202],
       [ 2.27733136,  9.29927394,  0.03718093,  7.7679183 ],
       [ 9.86934288,  7.59003904,  6.02363739,  2.78294206]]


scaler = MinMaxScaler()
scaler.fit(training_set)    
scaler.transform(training_set)


   [[ 0.49184811,  0.        ,  0.29704831,  0.15972182],
   [ 0.4943466 ,  0.52384506,  1.        ,  0.        ],
   [ 0.        ,  1.        ,  0.        ,  1.        ],
   [ 1.        ,  0.80357559,  0.9052909 ,  0.02893534]]

现在,我想使用相同的缩放器来标准化测试集:

   [[ 8.31263467,  7.99782295,  0.02031658,  9.43249727],
   [ 1.03761228,  9.53173021,  5.99539478,  4.81456067],
   [ 0.19715961,  5.97702519,  0.53347403,  5.58747666],
   [ 9.67505429,  2.76225253,  7.39944931,  8.46746594]]

但我不想一直scaler.fit()将训练数据与结合使用。有没有一种方法可以保存缩放器并稍后从其他文件中加载它?


问题答案:

所以我实际上不是这方面的专家,但是通过一些研究和一些有用的链接,我认为pickle并将sklearn.externals.joblib成为您的朋友。

该软件包pickle使您可以将模型或“转储”模型保存到文件中。

我认为此链接也有帮助。它讨论了创建持久性模型。您将要尝试的是:

# could use: import pickle... however let's do something else
from sklearn.externals import joblib

# this is more efficient than pickle for things like large numpy arrays
# ... which sklearn models often have.

# then just 'dump' your file
joblib.dump(clf, 'my_dope_model.pkl')

在这里,您可以了解有关sklearn外部组件的更多信息。

让我知道这是否无济于事,或者我对您的模型不了解。

注意:sklearn.externals.joblib已弃用。安装并使用纯joblib代替



 类似资料:
  • 问题内容: 因此,我对此有疑问,一直在寻找答案。所以问题是我何时使用 这之后,我将训练和测试模型(,作为特征,如标签),并得到一些准确度得分。现在我的疑问是,当我必须预测新数据集的标签时会发生什么。说, 因为当我规范化列时,和的值将根据新数据而不是将在其上训练模型的数据来更改。因此,现在将是下面的数据准备步骤之后的数据。 的价值和将关于改变和价值。的数据准备是关于的。 有关不同数字的数据准备如何有

  • 在pySpark MLlib中,似乎没有办法保存和加载回归模型,例如LogisticRegressionModel、SVModel、NaiveBayesModel和DecisionTreeModel。通过JavaSavable和JavaLoader mixins对推荐模型MatrixFactorizationModel进行加载和保存,但回归模型不是这样做的。 有没有一种方法,我可以通过提供我自己的

  •   MinMaxScaler转换由向量行组成的数据集,将每个特征调整到一个特定的范围(通常是[0,1])。它有下面两个参数: min:默认是0。转换的下界,被所有的特征共享。 max:默认是1。转换的上界,被所有特征共享。   MinMaxScaler计算数据集上的概要统计数据,产生一个MinMaxScalerModel。然后就可以用这个模型单独的转换每个特征到特定的范围。 特征E被转换后的值可以

  • 问题内容: 我想通过models.py方法获取当前登录的用户。我想检查用户的角色,并查看它是否可以根据其角色执行某些操作。 models.py: 在这里,该模型被用作内联模型。我想检查当前登录用户的角色,并根据用户角色更新另一个模型。在这里,我需要检查当前用户的角色。我没有使用任何形式或模板,而是完全利用了。是否有任何方法可以进入该方法或检查并更新中另一个模型中的值? 问题答案: 你可以从另一个角

  • 问题内容: Laravel中是否有回调,例如: 我搜索了但什么也没找到。如果没有这样的东西-实施它的最佳方法是什么? 谢谢! 问题答案: 实际上,Laravel在保存|更新|创建某些模型之前具有真实的回调。检查一下: https://github.com/laravel/laravel/blob/3.0/laravel/database/eloquent/model.php#L362 像保存和保存

  • 问题内容: 我有一个Scrapy项目,正在尝试将输出项保存为Django模型定义中的对象(我不使用DjangoItem)。 我正在按此处指定的方式导入Django设置。 在我的Scrapy项目中,我有一个管道类,该类最终处理所有项目并将其保存到数据库中: 但是,发生了一些奇怪的事情,对于第一个项目,我得到了一个错误(请参阅下文)。对于其余项目,一切都很好。假设我要保存7个项目,因此我在第一个保存错