学习目标
- 线性回归模型:
- 线性回归对于特征的要求;
- 处理长尾分布;
- 理解线性回归模型;
- 模型性能验证:
- 评价函数与目标函数;
- 交叉验证方法;
- 留一验证方法;
- 针对时间序列问题的验证;
- 绘制学习率曲线;
- 绘制验证曲线;
- 嵌入式特征选择:
- Lasso回归;
- Ridge回归;
- 决策树;
- 模型对比:
- 常用线性模型;
- 常用非线性模型;
- 模型调参:
- 贪心调参方法;
- 网格调参方法;
- 贝叶斯调参方法;
代码示例
读取数据
1 | import pandas as pd |
1 | # reduce_mem_usage 函数通过调整数据类型,帮助我们减少数据在内存中占用的空间 |
1 | sample_feature = reduce_mem_usage(pd.read_csv('data_for_tree.csv')) |
1 | continuous_feature_names = [x for x in sample_feature.columns if x not in ['price','brand','model','brand']] |
线性回归 & 五折交叉验证 & 模拟真实业务情况
1 | sample_feature = sample_feature.dropna().replace('-', 0).reset_index(drop=True) |
简单建模
1 | from sklearn.linear_model import LinearRegression |
1 | # 查看训练的线性回归模型的截距(intercept)与权重(coef) |
1 | from matplotlib import pyplot as plt |
1 | # 绘制特征v_9的值与标签的散点图 |
1 | # 通过作图我们发现数据的标签(price)呈现长尾分布,不利于我们的建模预测。 |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment