分类算法——sklearn转换器和估计器(一)

转换器(特征工程的父类)

  • 实例化(实例化的是一个转换器类(Transformer))
  • 调用fit_transform(对于文档建立分类词频矩阵,不能同时调用)

把特征工程的接口称之为转换器,其中转换器调用有这么几种形式:

标准化:(X- mean) / std

  • fit_transform( )
  • fit()------计算每一列的平均值、标准差
  • transform()------(X- mean) /std进行最终的转换
bash 复制代码
In [1] : from sklearn.preprocessing import StandardScaler
In [2] : std1=StandardScaler()
In [3] : a=[[1,2,3],[4,5,6]]
In [4] : std1.ft_transform( a)
out [4] :
array ([[-1.,-1.,-1.],
	   [1.,1.,1.]])
	   
In [5] : std2=StandardScaler()
In [6] : std2.fit(a)
out[6] : StandardScaler(copy=True,with_mean=True,with_std=True)

In [7] : std2.transform(a)
out[7] :
array([[-1.,-1.,-1.],
	  [1.,1.,1.]])

从中可以看出,fit_transform的作用相当于transform加上fit。

bash 复制代码
In [8] : b=[[7,8,9],[10,11,12]]
In [9] : std2.transform(b)
out [9] :
array([[3.,3.,3.],
	  [5., 5.,5.]])
	  
In [10] : std2.fit_transform(b)
out [10] :
array([[-1.,-1.,-1.],
	  [1.,1.,1.]])

估计器(sklearn机器学习算法的实现)

在sklearn中,估计器(estimator)是一个重要的角色,是一类实现了算法的API

  • 1用于分类的估计器:
    • sklearn.neighbors k-近邻算法
    • sklearn.naive_bayes 贝叶斯
    • sklearn.linear_model.LogisticRegression 逻辑回归
    • sklearn.tree 决策树与随机森林
  • 2用于回归的估计器:
    • sklearn.linear_model.LinearRegression 线性回归
    • sklearn.linear_model.Ridge 岭回归
  • 3用于无监督学习的估计器:
    • sklearn.cluster.KMeans 聚类

估计器工作流程

  • 实例化一个estimator
  • estimator.fit(x train, y train) 计算
    一调用完毕,模型生成
  • 3模型评估:
    • ①直接比对真实值和预测值
      y_predict = estimator. predict(x_test)
      y_test == y_predict
    • ②计算准确率
      accuracy = estimator.score(x_test, y_test)
相关推荐
江畔柳前堤2 小时前
信号的本质——从模拟波形到AI中的数据张量
人工智能·深度学习·机器学习·计算机视觉·数据挖掘·语音识别
江畔柳前堤4 小时前
系统的本质——从LTI系统到神经网络
人工智能·深度学习·神经网络·机器学习·计算机视觉·数据挖掘·语音识别
维克兜率天12 小时前
【维克】回归诊断:如何知道你的模型是不是“坏了“?
人工智能·数据挖掘·回归
西西弗Sisyphus16 小时前
部署模型的优化:图像标准化预处理从三步到一步乘加(2)
人工智能·机器学习·分类·训练·推理·imagenet
BioRunYiXue1 天前
技术干货 | LiP-MS全流程解析:从实验设计到数据分析
大数据·前端·javascript·人工智能·算法·数据挖掘·数据分析
hai3152475431 天前
十种编程语言的概率统计视角分析:统计对象分类与统计编程
人工智能·分类·数据挖掘
半兽先生1 天前
意图分类模型,使用ber分类和LLM分类有哪些优缺点?
人工智能·分类·bert
数智化管理手记1 天前
指标管理数据更新滞后严重?指标管理平台如何实现指标实时更新监控?
大数据·网络·数据库·人工智能·数据挖掘
数安3000天2 天前
全行“手机号“字段有20多个名字——字段命名不统一,数据分类分级怎么做?
大数据·数据库·分类
hqyjzsb2 天前
AI应用人才需求爆发:区分AI研发与AI应用,普通人学习路线清晰指南
人工智能·学习·金融·数据挖掘·数据分析·创业创新·业界资讯