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

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

相关推荐
新智元5 分钟前
刚刚,苹果大模型团队负责人叛逃 Meta!华人 AI 巨星 + 1,年薪飙至 9 位数
人工智能·openai
Cyltcc20 分钟前
如何安装和使用 Claude Code 教程 - Windows 用户篇
人工智能·claude·visual studio code
吹风看太阳1 小时前
机器学习16-总体架构
人工智能·机器学习
moonsims2 小时前
全国产化行业自主无人机智能处理单元-AI飞控+通信一体化模块SkyCore-I
人工智能·无人机
MUTA️2 小时前
ELMo——Embeddings from Language Models原理速学
人工智能·语言模型·自然语言处理
海豚调度2 小时前
Linux 基金会报告解读:开源 AI 重塑经济格局,有人失业,有人涨薪!
大数据·人工智能·ai·开源
T__TIII2 小时前
Dify 插件非正式打包
人工智能
jerwey2 小时前
大语言模型(LLM)按架构分类
人工智能·语言模型·分类
令狐少侠20112 小时前
ai之RAG本地知识库--基于OCR和文本解析器的新一代RAG引擎:RAGFlow 认识和源码剖析
人工智能·ai
小叮当爱咖啡2 小时前
Seq2seq+Attention 机器翻译
人工智能·自然语言处理·机器翻译