机器学习—sklearn数据处理杂谈

目录

    • 数据处理
      • 数据缺失
      • 数据非数字
    • 机器学习
      • 框架
        • Scikit-learn
      • 模型
        • 定义
          • 决策树
          • 随机森林
          • XGBoost
        • 特征
      • 适应
      • 预测
      • 评估
        • 评估参数
          • Mean Absolute Error (MAE) 绝对平均差
        • 辅助评估
          • 数据随机分割
      • 优化
          • 过拟合,欠拟合

数据处理

数据缺失

  1. 直接删除:对于一个条目下数据大部分缺损可以直接删除。
  2. 插值 :使用估算值填充缺失的部分,前提缺失不能太多。
    插值扩展:插值后增加加一列条目说明填充位置。

插值需加载模块:

# 默认平均插值
from sklearn.impute import SimpleImputer

(实例)

数据非数字

  1. Drop Categorical Variables:直删
  2. Label Encoding:用数字标记不同数据
    需加载模块:
from sklearn.preprocessing import LabelEncoder
  1. One-hot encoding:设置不同标签,每个标签只有0 1 二值。
    需加载模块:
from sklearn.preprocessing import OneHotEncoder

(实例)

机器学习

框架

Scikit-learn

基本功能:
主要被分为六大部分:分类,回归,聚类,数据降维,模型选择和数据预处理。

模型

定义

  1. 随机性: 许多机器学习模型在模型训练中允许一些随机性。较好做法是使用random_state指定一个数字可以确保在每次运行时得到相同的结果。
决策树

掌握难度:⭐
需加载模块:

from sklearn.tree import DecisionTreeRegressor

教程:
(官方手册)
https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeRegressor.html
(实例)
墨尔本房价预测⭐
泰坦尼克号数据分析⭐

随机森林

掌握难度:⭐
需加载模块:

from sklearn.ensemble import RandomForestRegressor

优点:

  1. 预测精度高于决策树

教程:
(官方手册)
https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html#sklearn.ensemble.RandomForestClassifier
(实例)
墨尔本房价预测⭐

XGBoost

终于有人说清楚了–XGBoost算法

特征

适应

预测

评估

评估参数

Mean Absolute Error (MAE) 绝对平均差

公式:
error = actual − predicted
需加载模块:

from sklearn.metrics import mean_absolute_error

辅助评估

数据随机分割

目的:将数据分割成训练数据和验证数据,使用参数评估来验证数据(validation data),用以排除无关特征。
需加载模块:

from sklearn.model_selection import train_test_split

优化

过拟合,欠拟合

简谈:拟合指训练数据和模型的匹配程度。过拟合指匹配程度极高确在使用新数据预测时不理想。欠拟合指模型和训练数据不匹配。
检测:

  • 方法一
    调整模型参数,进行参数评估。不断重复,直到评估结果满意。

你可能感兴趣的:(机器学习,机器学习,python,算法)