【课程笔记】python建模

来源:互联网 发布:淘宝刷单 php源码 编辑:程序博客网 时间:2024/04/28 16:03
  1. 数据读取
    • 使用pandas读取结构化数据:pandas.read_csv(filepath_or_buffer, sep=', ', header='infer', names=None)
  2. 探索数据

了解数据类型  df.dtypes

了解数值型变量的分布 df.describe()

了解分类变量的分布  Series.value_counts()

可以通过绘图探索数据

  1. 数据处理
    • Missing value

发现missingvalue    isnull

替换    fillna

删除   dropna

  • 分类变量

One-hot-encode           get_dummies

  1. 数据转换
    • 数据平滑

数据量纲需要保证一致

标准化

归一化

  • 简单转换
  • 特征选择

分类模型使用  chi2  (数据不能有负数)

回归模型使用   f_regression

  1. 数据建模
    • 模型选择:logistic回归
    • 传递参数:df=Logistic Regression(,,)
    • 训练模型:clf.fit(xtrain.ytrain)
    • 预测数据:clf.predict(xtest)
  2. 参数指定-交叉验证

class sklearn.grid_search.GridSearchCV(estimator, param_grid,scoring=None, fit_params=None, n_jobs=1, iid=True, refit=True, cv=None,verbose=0, pre_dispatch='2*n_jobs', error_score='raise')

  1. 输入模型
  2. 输入可能的全部参数以及对应的值,使用字典的形式
  3. 设置交叉验证的折数
  4. 设置评价指标
  1. 小结
    • 特征工程是最为核心的,特征决定了你的准确率上线,而不同的模型只是无限逼近与这个上限
    • Scikit-learn所有模型的接口都是一致的. Fit – predict – score – evaluate
    • 集成算法是当前最火的模型,原因就是准确率高
    • 涉及到距离计算或者梯度下降算法的模型都需要对数据进行归一化或者标准化
  2. 学习建议
    • 学好python的pandas,numpy等常用工具包
    • Scikit-learn官网是最好的机器学习教材
    • 参加kaggle或者天池这样的比赛,增加实践经验
    • Coursera课程推荐        
    • 吴恩达《机器学习》

    • 台湾大学《机器学习》

0 0