美文网首页web程序员@IT·互联网
TensorFlow预测二手车价格

TensorFlow预测二手车价格

作者: 彭金虎 | 来源:发表于2017-08-13 21:51 被阅读188次

    目录

    • 背景
    • 数据处理流程
    • 数据清洗
    • 数据预测
    • 预测误差值对比
    • 源码

    背景

    此次来源于公司的竞赛项目,举办方给予了40天的二手车、每天1G左右的数据,希望通过这40G左右的数据找出一些洞见,根据数据的分析,我主要集中在对二手车的出售价格的预估。本次采用python处理所有任务。

    数据处理流程

    具体流程可参考jupeter/pridict_step_by_step.ipynb,这是一个anaconda jupyter网页编码。如下图:

    数据清洗

    对于这么一个量级的数据清洗,考虑性能,内存占用等因素,通过python多进程,生成器来实现多个数据文件的读取和清洗。在Mac book pro基本上可以达到每3秒可清洗一个文件。可以在后续源代码部分clean/training_set.py找到这部分的代码。包括处理异常数据,去重等,清洗后可以得到如下图数据表:

    数据预测

    如果需要有一辆二手车需要出售,我希望通过预测程序,能够给一个初步的估价。下面我们来看看如何预测:

    (1) 计算数据的相关性

    通过pearson算法(数据约接近+/-1相关性越高,越接近0相关性越低)对数据进行相关性计算,我们可以得到如下列表:

    从表中我们可以看出,一辆车的损耗率(出售价/新车价格)与使用年限和表里程有较高的相关性。
    如果但就使用年限和损耗率的关系,我可以通过线性回归得到如下图:

    从图中我们可以看出,使用年限越长,车子的损耗越高,车子的出售价也就月底,当然这跟我们感官理解比较接近,但实际情况是,我们一辆洗车可能在第一年的损耗率较高,可能达20%, 后面2,3,4年可能会有一个较平稳的损耗率(可能在10%左右),当然出现这个差别来源于很多方面,比如说汽车的品牌,汽车瑕疵的部位等等因素。

    如果但考虑某一品牌,如benz,可得到下图:

    (2) TensorFlow 计算影响二手车价格各因素权重

    在通过TensorFlow计算权重之前,进行了归一化处理,以便能够清晰的看出各权重的影响,另外我们在做权重计算时,并没有加入品牌的因素,目前没有对品牌的值进行训练。通过logistic回归计算,可以得到如下图:

    (3) 预测二手车价格

    如果给予一批二手车进行预测,我们可以得到如下一个预测误差百分比:

    从图中可以看出只有半的二手车估计误差在20%范围内,由此我们看出品牌的引入,可能会提高我们的准确性。

    源码

    https://github.com/pjhu/used-car.git

    相关文章

      网友评论

        本文标题:TensorFlow预测二手车价格

        本文链接:https://www.haomeiwen.com/subject/iaaerxtx.html