【机器学习300问】43、回归模型预测效果明明很好,为什么均方根误差很大?

一、案例描述        

        假设我们正在构建一个房地产价格预测模型,目标是预测某个城市各类住宅的售价。模型基于大量房屋的各种特征(如面积、地段、房龄、楼层等)进行训练。 回归模型在大部分情况下对于住宅价格预测非常精准,用户反馈也非常好,模型的实际预测能力在业界得到了认可。但RMSE指标却依旧很高这是为什么?

二、原因分析

        均方根误差(Root Mean Square Error, RMSE)是机器学习中广泛使用的衡量预测模型准确度的标准之一。它通过计算预测值与真实值之间差异的平方平均值的平方根来量化模型预测的平均偏差。通常情况下,较低的RMSE意味着模型有更好的预测性能。下面是他的计算公式:

RMSE = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2}

符号解释
n真实值的总数
y_ii个真实值
\hat{y}_ii个预测值
(y_i - \hat{y}_i)^2i个真实值与预测值之间的误差的平方,用来消除误差的正负号影响
\sum_{i=1}^{n} (y_i - \hat{y}_i)^2所有残差平方的总和

        案例原因:大多数房屋的价格都在一个合理的区间内变动,但如果有少数几个极其昂贵或极其便宜的离群点(例如,异常低价的房源或超级豪宅),模型很可能对这些点的预测误差极大。将这些误差平方后纳入总误差的计算中,会明显增大总的误差平方和,而开平方是在计算完平方和之后才进行的,所以这会显著提高均方根误差。

三、解决方案 

 (1)离群值检测与处理

        可以采用诸如Z-score、IQR(四分位数范围)等方法检测离群值,并根据具体情况选择删除、替换(如使用邻近值填充、插值等方法)离群点或者保留(如果离群值是有意义的真实信息)。

(2)选择更合适的评估指标

        对于存在大量离群点且其重要性不如其他大部分数据的情况,可考虑使用MAPE(平均绝对百分比误差)等对离群值不那么敏感的评价指标。

MAPE = \frac{1}{n} \sum_{i=1}^{n} \left| \frac{y_i - \hat{y}_i}{y_i} \right| \times 100\%

符号解释
n真实值的总数
y_ii个真实值
\hat{y}_ii个预测值
|y_i - \hat{y}_i|i个真实值与预测值之间的误差的绝对值
\left| \frac{y_i - \hat{y}_i}{y_i} \right|计算每个点的百分比误差
\frac{1}{n} \sum计算所有百分比误差的平均值

【注】MAPE 的结果是一个百分比数值,它表示预测误差占实际值的比例平均值。MAPE 越小,说明预测精度越高。然而,需要注意的是,MAPE 对于真实值接近零的情况非常敏感,当有少量实际值接近或等于零时,会导致 MAPE 计算结果异常增大,引入一个小的常数以避免零分母的情况。

(3)分层建模

        根据数据特点,可以考虑为不同类型的房源(如普通住宅和豪华别墅)分别建立模型,或者在同一个模型中引入类别变量来调整对不同类型的响应。

### 回答1: 深度学习的回归模型是用来预测连续值的模型。典型的例子是房价预测。假设我们想要预测一个房子的价格,我们可以收集这个房子的很多信息,比如:房子面积、房子所在城市、房子的年代、房子房间数量等。这些信息就是特征。我们可以用深度学习的回归模型来根据这些特征来预测房子的价格。 举个例子,假设我们有一个数据集,包含了每个房子的价格和这些特征。我们可以训练一个深度学习模型来学习这个数据集,让它学会根据这些特征来预测房子的价格。然后,当我们有一个新的房子的特征时,就可以使用这个模型来预测这个房子的价格了。 ### 回答2: 深度学习回归模型是一种通过训练数据来预测连续输出变量的方法。下面我来举一个例子来说明深度学习回归模型的应用。 以房价预测为例,假设有一个数据集,包含了不同房子的面积、房间数量和位置等等特征,以及对应的房价作为目标变量。我们想通过这些特征来训练一个深度学习回归模型,能够对新的房子给出一个合理的价格预测。 首先,我们将数据集划分为训练集和测试集,训练集用于模型训练,测试集用于评估模型性能。然后,我们构建一个深度神经网络模型,包括输入层、隐藏层和输出层。输入层接受特征数据作为输入,隐藏层包含多个神经元,每个神经元用于学习不同的特征权重和偏置。输出层则用于预测目标变量房价。 接下来,我们使用训练集来训练模型。通过反向传播算法和梯度下降优化器,模型逐渐调整隐藏层中神经元的权重和偏置,使得模型的预测结果与实际房价数据的误差最小化。这个训练过程可以迭代多次,直到模型收敛或达到最大迭代次数。 训练完成后,我们使用测试集来评估模型的性能。通过将测试集中的特征输入到已经训练好的模型中,得到预测的房价。然后,与测试集中的实际房价进行比较,计算模型的预测误差,如均方根误差等指标。 最后,我们可以使用这个已经训练好的模型来预测新的房子的价格。将新房子的特征输入模型中,可以得到相应的预测结果,从而为房主或买家提供一个参考价格。 这就是一个简单的深度学习回归模型的例子,它可以通过训练数据来学习输入特征与输出变量之间的关系,并且能够用于预测新的未知数据。深度学习回归模型在许多领域中有广泛的应用,如金融、医疗、自然语言处理等。 ### 回答3: 深度学习是一种机器学习方法,以多层神经网络为基础。回归模型是深度学习的一种常见应用,旨在预测连续数值输出。下面以房价预测为例,介绍深度学习回归模型的应用。 在房价预测中,我们可以使用深度学习模型来根据房屋的各种特征(如面积、位置、房间数等)来预测房价。 首先,我们收集一批具有房屋特征和已知价格的数据,称为训练集。我们可以将数据进行预处理,如归一化处理,确保各特征在一定范围内,以避免其中的某些特征对结果的影响过大。 接下来,我们可以构建一个深度学习回归模型。模型的输入是房屋的特征向量,输出是预测的房价。模型可以由多个隐藏层组成,每个隐藏层都包含多个神经元,每个神经元与上一层的神经元相连。 为了训练模型,我们需要定义一个损失函数来度量模型的预测与实际值的误差。常见的损失函数可以是均方误差(Mean Squared Error),它对预测值与真实值的差异进行平方,并取平均值。 在训练过程中,我们通过反向传播算法来调整模型中的参数,以最小化损失函数。通过反复迭代优化模型,直到达到预定的训练次数或满足某个停止准则。 训练完成后,我们可以使用模型来预测新房屋的价格。将新房屋的特征输入到模型中,模型根据学习到的参数计算出相应的预测值作为房价的估计。 整个过程可以通过深度学习框架(如TensorFlow、PyTorch等)来实现,这些框架提供了高效的计算以及方便的模型构建和训练接口。 总之,深度学习回归模型可以通过训练数据预测连续数值输出,如房价预测。通过合适的数据处理、模型构建和优化算法,可以有效地应用深度学习回归模型解决实际题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值