如何对加载的数个模型只进行transform呢

问题描述:

由于应用中只需要用到基于训练好的模型进行transform,不需要fit;一开始我直接使用如下方法:

最后一个third_model没有fit函数;运行提示错误,最后一个学习器必须有fit函数;因为最后一个学习器必须要先fit,然后transform: 
(证明fit没有执行,因为fit函数中有打印fit)

 那我就在third_model再加入一个fit函数,

这里用参数(x),或(x,y=None)都可以;函数内部可以使用pass或者return self;
以后对于这种情况,统一使用如下形式:

 然后就ok了;

假如第三个模型的fit函数有真实的训练功能;最后一个学习器可以用None值;

就可以实现所需的模型只用transform函数;

结论:fit函数是将列表中所有学习器除最后一个外都fit和transform,而最后一个仅fit; fit_transform将所有的学习器都fit和transform;transform函数是将所有的学习器除最后一个外都transform,而最后一个要fit然后transform;

猜你喜欢

转载自blog.csdn.net/ningyanggege/article/details/83544151