机器学习——特征工程和评价指标

0、前言:

  • 首先学习特征工程这部分知识之前,要对机器学习的算法用过使用。

1、特征工程:

  • 就机器学习的数据而言,特征就是数据的列名,有多少列,就有多少个维度的特征。就定义而言,特征是指数据中抽取出来对结果预测有用的信息。
  • 特征工程就是使用一些技巧来处理数据,使数据特征能在机器学习算法中发挥更好的作用
  • 本质而言,特征工程其实就是数据预处理

2、机器学习常见评价指标:

  • 1、AUC是二分类模型的一个评价指标,与AUC相关的就是ROC曲线,AUC的值是ROC曲线下的面积,AUC越接近1,说明模型越好,越接近0,说明模型越差,AUC的值在0.7以上就算比较好了。ROC曲线绘制原理如下:

  • 2、Precision(精确率/查准率)、Recall(召回率/查全率)、F-measure、Accuracy(准确率)


3、绘制ROC曲线:

  • 通过下面的示例,主要了解sklearn.metrics第三方库是用于评价机器学习模型的库,并且知道其中的auc和roc_curve两个评价指标的调用方式。
python 复制代码
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
data, target = load_iris(return_X_y=True)
data.shape # (150, 4)
# AUC是二分类问题才能计算的
c = target<2
a = [0,1]
data2 = data[c].copy()
target2 = target[c].copy()
data2.shape,target2.shape
from sklearn.metrics import auc,roc_curve
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
x_train,x_test,y_train,y_test = train_test_split(data2,target2,test_size=0.2)
x_train.shape,y_train.shape
lr = LogisticRegression()
lr.fit(x_train,y_train)
y_pred = lr.predict(x_test)
y_pred
# ROC曲线
# 参数1:y_true(真实结果),y_score(预测结果)
fpr,tpr,_ = roc_curve(y_true=y_test,y_score=y_pred) # (array([0., 0., 1.]), array([0., 1., 1.]), array([inf,  1.,  0.]))

# ROC曲线横轴是FPR,纵轴是TPR
plt.plot(fpr,tpr,ls='--')
plt.title('ROC')
# AUC是ROC曲线下的面积,不好计算时,可以通过函数获取auc(fpr,tpr)
AUC = auc(fpr,tpr)
AUC

相关推荐
confiself2 分钟前
AndroidWorld+mobileRL
人工智能·深度学习
aneasystone本尊10 分钟前
学习 Chat2Graph 的任务分解与执行
人工智能
嘀咕博客12 分钟前
10Web-AI网站生成器
人工智能·ai工具
西柚小萌新18 分钟前
【从零开始的大模型原理与实践教程】--第一章:NLP基础概念
人工智能·自然语言处理
嘀咕博客23 分钟前
SafeEar:浙大和清华联合推出的AI音频伪造检测框架,错误率低至2.02%
人工智能·音视频·ai工具
Hello123网站24 分钟前
FinChat-金融领域的ChatGPT
人工智能·chatgpt·金融·ai工具
嘀咕博客29 分钟前
PixVerse -免费在线AI视频生成工具
人工智能·音视频·ai工具
mit6.82442 分钟前
[rStar] 解决方案节点 | `BaseNode` | `MCTSNode`
人工智能·python·算法
普蓝机器人1 小时前
AutoTrack-IR-DR200底盘仿真详解:为教育领域打造的高效机器人学习实验平台
人工智能·学习·计算机视觉·机器人·移动机器人·三维仿真导航
赴3351 小时前
opencv 银行卡号识别案例
人工智能·opencv·计算机视觉·银行卡号识别