zoukankan      html  css  js  c++  java
  • 机器学习(二)

    机器学习(二)

    本文只提供机器学习整体框架
    类, 方法与函数的使用请自行查看官方API

    ![](/Users/air/Macro/MegaChen/Study/ProgramOfStudy/MachineLearning/Pictures/Screen Shot 2018-08-02 at 10.01.31.png)

    机器学习的步骤

    数据采样(过采样与下采样)
    • 下采样:

      • 目前不知道有第三方库实现, 自己实现的思路: 通过随机函数生成下标列表, 将下标连接在一起生成新的样本集合
    • 过采样(更常用一些, 因为过采样的数据量比下采样的数据量大):

      • imblearn中有实现: over_sampling模块SMOTE算法对象的构造方法返回下采样对象, 调用下采样对象的fit_sample方法得出过采样样本
    • 如果标签各个值的个数相差不大, 不需要使用下采样或者过采样

    特征提取(从数据集合中提取出b有用的特征)
    • 机器学习中最困难的地方
    缺失值计算
    • data_frame = data_frame[column_name].dropna(), 副作用: 样本数量的减少
    • data_frame = data_frame[column_name].fillna(new_value), 关键在于new_value的选择, 一般有均值, 出现次数最多的值
    特征选取
    • sklearn中有实现: feature_selection模块SelectKBest的构造方法返回SelectionKBest对象, 调用该对象的fit_transform方法
    划分数据集和训练集
    • sklearn中的实现: train_test_split函数实现从原始数据集到一个训练集和一个标签集(一般是一个一维的, 注意: 常见的矩阵是二维的, 调用ravel方法降维)
    • 将训练集进行K折叠交叉验证, sklearn中的实现: KFold和StratifiedKFold, 在sklearn中有许多的算法对象在构造时就内部实现了交叉验证, 此时KFold与Stratified就无需调用了, 如GridSearchCV, cross_val_score
    训练
    • sklearn中的实现
      • 每一个算法对象调用fit方法
      • 每一个算法对象调用score方法, score是对fit的封装, 放回算法的精度
    预测与评估
    • sklearn中实现:
      • predict, predict_proba
      • score
  • 相关阅读:
    LinuxIP乱码
    APP前置代码脚本等基础操作及安装python库
    XP定位(APP元素定位)
    关联函数应用
    命令查看当前运行APP的包名和Activity
    android智能手机如何查看APK包名
    接口代码(requests库安装)
    python不能运行
    语音接口参数转换
    接口图片参数化
  • 原文地址:https://www.cnblogs.com/megachen/p/9555831.html
Copyright © 2011-2022 走看看