zoukankan      html  css  js  c++  java
  • 转换器与预估器

    一、转换器

      在之前我们对数据做标准化或者其它的特征工程处理时使用了fit_transform方法,它是输入数据并且对数据进行转换;与之对应的就是fit方法与transform方法,实际上这两个方法相当于一个fit_transform方法。

    In [1]: from sklearn.preprocessing import StandardScaler
    
    In [2]: data = [[1,2,3],[4,5,6]]
    
    In [3]: sd = StandardScaler()
    
    In [4]: sd.fit_transform(data)
    Out[4]:
    array([[-1., -1., -1.],
           [ 1.,  1.,  1.]])

    如果,使用fit和transform来实现这个过程是这样的:

    In [1]: from sklearn.preprocessing import StandardScaler
    
    In [2]: data = [[1,2,3],[4,5,6]]
    
    In [3]: ssd.fit(data)
    Out[3]: StandardScaler(copy=True, with_mean=True, with_std=True)
    
    In [4]: ssd.transform(data)
    Out[4]:
    array([[-1., -1., -1.],
           [ 1.,  1.,  1.]])
    
    In [5]:

    可以看到两个结果是相同的。

    但是需要注意的是fit是做什么的呢?当你将数据通过fit函数进行输入时,是进行标准的指定,比如下面:

    In [12]: ssd.fit([[8,9,0],[6,7,8]])  #制定标准
    Out[12]: StandardScaler(copy=True, with_mean=True, with_std=True)
    
    In [13]: ssd.transform(data)
    Out[13]:
    array([[-6.  , -6.  , -0.25],
           [-3.  , -3.  ,  0.5 ]])
    
    In [14]:

    可以看到fit中传入的数组不是data了,而是其它的数组,那么最后以当前的标准来对data进行标准化,就和以前不一样了。

      所以,我们使用转换器进行特征工程时注意如果使用fit_transform时,不会出现上面的情况,但是如果两个函数分开使用就要注意,第一次fit后,后面进行transform的数据不要重复调用fit函数。从而保持标准的一致性。

    二、预估器

    在sklearn中,估计器(estimator)是一个重要的角色,分类器和回归器都属于estimator,是一类实现了算法的API。

    1、分类估计器

    • sklearn.neighbors k-近邻算法
    • sklearn.naive_bayes 贝叶斯
    • sklearn.linear_model.LogisticRegression 逻辑回归

    2、回归估计器

    • sklearn.linear_model.LinearRegression 线性回归
    • sklearn.linear_model.Ridge 岭回归

    3、工作流程

    (1)数据集分为训练集和测试集

    (2)调用fit方法,将训练集数据进行输入

    (3)输入测试集数据

    (4)测试集数据结果的预测与准确率的预测

  • 相关阅读:
    Bootstrap 模态对话框只加载一次 remote 数据的解决办法
    通过反射查找泛型的属性值
    基于Bootstrap的超酷jQuery开关按钮插件
    解決BufferedReader读取UTF-8文件中文乱码(转)
    Hibernate学习笔记
    freemarker XMLGregorianCalendar 转日期
    Android中手机号、车牌号正则表达式
    Eclipse中启动tomcat报错java.lang.OutOfMemoryError: PermGen space的解决方法
    WPF 引用DLL纯图像资源包类库中的图片
    “ sgen.exe ”已退出,代码为 1
  • 原文地址:https://www.cnblogs.com/shenjianping/p/12952104.html
Copyright © 2011-2022 走看看