二手车价格回归
- 目标
- 项目简述
- 文件描述和字段字典
- 文件描述
- 字段字典
- 项目开始
- 分割线
- 导入第三方库
- 读取数据
- 构建模型
- 总结
- 数据来源:
- 数据处理:
- 模型构建:
- 模型评估:
- 结果应用:
- 写在最后
目标
二手车价格预测项目的目标是构建一个能够准确预测二手车市场价格的模型。这有助于消费者、经销商和金融机构在交易过程中做出更明智的决策。
项目简述
本次项目主要是针对二手车在不同品牌、不同年份、不同工况、出事故的程度以及二手车的最终成色来对相类似的车辆进行预测。本次评估的方法主要是使用均方根误差进行评分,因为本次任务属于回归任务,并非分类任务,所以不能使用AUC和ROC来进行评估。
均方误差(Mean Squared Error, MSE)是衡量模型预测值与真实值之间差异的一种常用方法。它计算了预测误差的平方的平均值,因此,MSE的值越小,表示模型的预测越准确。定义
假设我们有一组真实值和对应的模型预测值,则均方误差MSE定义为:
其中,n 是样本数量,yi是第 i 个样本的真实值,y^是第 i 个样本的预测值。
推导
均方误差的推导其实并不复杂,因为它直接基于误差的平方和的平均值。但我们可以从更一般的角度去理解它,即它是损失函数的一种形式,用于量化模型预测的不准确性。
误差计算:首先,对于每一个样本,我们计算其预测值与真实值之间的误差.
误差平方:由于误差可能是正也可能是负,直接求和可能会相互抵消,从而无法准确反映预测的整体偏差。因此,我们计算误差的平方.这样做可以确保所有的偏差都被视为正值,从而能够累加。
平均误差平方:最后,为了得到一个能够代表整个数据集预测准确性的单一数值,我们将所有误差的平方求和后除以样本数量 n。
这个过程就是均方误差的推导过程。均方误差作为损失函数,在机器学习和统计建模中被广泛使用,因为它对较大的误差给予了更高的惩罚,这有助于模型在训练过程中更加关注那些预测偏差较大的样本。
文件描述和字段字典
本次比赛(训练和测试)的数据集是根据在 Used Car Price Prediction 数据集上训练的深度学习模型生成的。特征分布与原始分布接近,但不完全相同。在本次竞赛中,您可以随意使用原始数据集,既可以探索差异,也可以了解在训练中加入原始数据集是否能提高模型性能。
文件描述
train.csv - 训练数据集; 是连续目标price
test.csv - 测试数据集;您的目标是预测 for each row 的值price
sample_submission.csv - 正确格式的样本提交文件
字段字典
‘brand’ - 品牌
‘model’ - 型号
‘model_year’ - 车型年份
‘milageage’ - 里程数(注意原字段可能有拼写错误,应为’mileage’)
‘fuel_type’ - 燃料类型
‘engine’ - 发动机
‘transmission’ - 变速器
‘ext_col’ - 外部颜色
‘int_col’ - 内部颜色
‘accident’ - 事故情况
‘clean_title’ - 清晰产权(通常指车辆没有未解决的事故或法律问题)
‘price’ - 价格
项目开始
导入一些必要的库,以便于后续能够正常使用他们,建议使用Jupyter Notebook,可能会存在部分的库没有,请按照下列的方式,打开命令符进行安装,因为使用清华源的库安装的速度更快。
optuna 库:
lightgbm 库:
catboost 库:
xgboost库: