机器学习开发流程

  1. 获取数据
  2. 数据处理
    缺省值
# 首先替换 np.nan
data = data.replace(to_replace="?",value=np.nan)
# 删除缺失值样本
data.dropna(inplace=True)
data.isnull().any()# 不存在缺失值

异常值
目的 特征值x 目标值y
3.划分数据集

from sklearn.model_selection import train_test_split
x_train,x_test,y_train,y_test = train_test_split(x,y)
  1. 特征工程
  • 特征抽取 feature_extraction
    字典特征提取 文本特征提取
  • 特征预处理
    标准化 归一化
# 标准化
from sklearn.preprocessing import StandardScaler
transfer = StandardScaler()
x_train = transfer.fit_transform(x_train)
x_test = transfer.fit_transform(x_test)
  • 特征降维
    PCA
  1. XX算法预估流程
from sklearn.linear_model import LogisticRegression
estimator = LogisticRegression()
estimator.fit(x_train,y_train)
# 逻辑回归的模型参数 回归系数和偏置
estimator.coef_
estimator.intercept_
  1. 模型选择与调参
  2. 模型评估
# 模型评估
# 直接比对真实值和预测值
y_predict = estimator.predict(x_test)
print("y_predict:\n", y_predict)
print("直接比对真实值和预测值:\n", y_test == y_predict)
# 计算准确率
score = estimator.score(x_test, y_test)
print("准确率为:\n", score)
  • 准确率 精确率 召回率
  • ROC曲线 AUC指标

你可能感兴趣的:(机器学习开发流程)