python - 当问题是回归问题时,如何计算准确性?
问题描述
当问题是回归问题时,如何计算准确性?
我正在研究一个回归问题来预测每个用户每天使用多少电量,我使用 keras 构建了一个 LSTM 模型来做这个时间序列预测。一开始,我使用“准确度”作为指标,并在运行时
model.fit(...,verbose=2,...)
val_acc
在每个 epoch 之后都有一个值。在我的结果中,值没有改变,它始终是相同的值。
然后我意识到回归问题是没有准确性的概念,然后我开始怀疑,这个准确性是如何计算的?
我猜想,当回归问题中的指标是“准确度”时,准确度的计算方式也与分类问题类似:预测值的数量等于真实值除以总样本量。
我对吗?
解决方案
在回归中,您使用衡量您的预测与实际值相差多远的指标,例如平方误差、均方误差等。请参阅如何确定回归的准确性?应该使用哪种措施?
在构建 keras LSTM 模型时,通常会先构建“骨架”,然后编译、拟合,最后进行预测。在编译步骤中,您需要定义损失函数(请参阅Keras 文档中的顺序模型)和指标,因此您可以执行例如
model.compile(loss='mean_squared_error', optimizer='sgd', metrics=['mean_squared_error'])
(请参阅有关度量的 Keras 文档)。因此,如果您将accuracy
作为指标放在回归设置中,您将不会得到合理的结果,因为该指标仅适用于分类任务。
推荐阅读
- python - Python Pandas - 如何查找列值与两个数据框不同的行
- android - 在 Kotlin 中动态添加视图的问题
- selenium-chromedriver - Chrome 无法在 GitHub Actions 中启动
- excel - 使用来自 excel 表的用户输入过滤数据透视表中的行
- c++ - 在 C++ 中实现卡尔曼滤波器
- ansible - 剧本中的 Ansible 模块 yedit
- python-3.x - 用 Geopandas 绘制以日本为中心的世界地图
- hbase - janusgraph 无法连接到 /hbase/hbaseid 的 zk fo get
- arrays - Perl:你可以在 map 函数中使用两个以上的数组吗?
- spring - 为什么 Spring boot 项目部署在 ECS 中时要搜索 application.yml 文件。但是我有 application-{env}.properties?