CNN 回归导致两个不同(不正确)的预测

     2023-03-13     92

关键词:

【中文标题】CNN 回归导致两个不同(不正确)的预测【英文标题】:CNN regression results in two distinct (incorrect) predictions 【发布时间】:2021-03-27 02:13:54 【问题描述】:

我正在尝试使用 Python Keras CNN(Tensorflow 作为主干)解决回归问题,我尝试根据获取的 8 维卫星图像(23x45 像素)预测单个 y 值来自 Google Earth Engine 使用他们的 Python API。我目前有 280 张图像,我使用翻转和随机噪声来扩充以获得 2500 张图像。数据经过标准化和标准化,我已经删除了异常值和只有零的图像。

我已经测试了许多 CNN 架构,例如: (Convolution2D(4,4,3),MaxPooling2D(2,2),dense(50),dropout(0.4),dense(30),dropout(0.4),dense(1)

这会导致一种奇怪的行为,其中预测值主要位于两个不同的组或集群中(每个组的方差很小)。真实值的方差要高得多。见下图。

我选择不发布任何代码 sn-ps,因为我的问题更笼统。什么可能导致这种聚类预测?有什么好的常用技巧来改善结果吗? 我尝试使用来自 SciKit-Learn 的普通神经网络和回归工具来解决这个问题,方法是将图像展平为一个长数组(长度 23x45x8 = 8280)。这不会导致聚类,尽管准确性仍然很低。我认为这是由于数据不足或不适当造成的。

Plotted Truth (x) vs Prediction (y) which shows that the prediction is heavily clustered

【问题讨论】:

【参考方案1】:

您的模型非常简单,它甚至无法正确提取特征,所以我猜它不合适。你的 dropout 在 2 层中是 40%,对于这么小的网络来说这相当高。你也有线性激活,好像是这样。

是的,样本的数量也会对组预测产生影响,大多数是选择样本最多的类。

我还注意到您的一些真值大于 1 且小于 0。您必须正确归一化并使用正确的激活函数。

【讨论】:

感谢您的一些好主意。我修复了标准化,降低了 dropout,并通过一些改进使网络更深。我正在努力获取更多数据,但我想知道是否有关于使用什么损失函数和激活函数的好的指南?到目前为止,我通过所有密集层的 sigmoid 激活和损失函数 mean_squared_logarithmic_error 获得了最好的结果。 深度学习中不使用sigmoid,因为它会导致梯度消失,也没有使用tanh。您必须使用 relu、leaky relu 或不要使用其他激活函数。 我明白了,这很有帮助。

cnn回归预测基于matlab卷积神经网络cnn数据回归预测含matlab源码2003期(代码片段)

一、CNN简介1卷积神经网络(CNN)定义卷积神经网络(convolutionalneuralnetwork,CNN),是一种专门用来处理具有类似网格结构的数据的神经网络。卷积网络是指那些至少在网络的一层中使用卷积运算来替代一般的矩... 查看详情

为不平衡数据加权回归 CNN?

】为不平衡数据加权回归CNN?【英文标题】:WeightingaregressionCNNforimbalanceddata?【发布时间】:2019-12-0809:46:51【问题描述】:我有一个用于回归的CNN,它获取图像并输出0-10的浮点数。我的模型运行良好,但我的数据不平衡存在严重... 查看详情

cnn回归预测基于matlab卷积神经网络cnn数据回归预测含matlab源码2384期

...码方式获取代码方式1:完整代码已上传我的资源:【CNN回归预测】基于matlab卷积神经网络CNN数据回归预测【含Matlab源码2384期】点击上面蓝色字体,直接付费下载,即可。获取代码方式2:付费专栏Matlab智能算法神经网络预测与分... 查看详情

逻辑回归

1.用自己的话描述一下,什么是逻辑回归,与线性回归对比,有什么不同?逻辑回归和线性回归都是通过把一系列数据点预测计算出一条合适的“线”,将新的数据点映射到这条预测的“线”上,继而做出预测。2.自... 查看详情

matlab使用cnn拟合回归模型预测手写数字的旋转角度

✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。 查看详情

回归预测|matlab实现bo-cnn-bilstm贝叶斯优化卷积双向长短期记忆网络数据回归预测(代码片段)

回归预测|MATLAB实现BO-CNN-BiLSTM贝叶斯优化卷积双向长短期记忆网络数据回归预测目录回归预测|MATLAB实现BO-CNN-BiLSTM贝叶斯优化卷积双向长短期记忆网络数据回归预测效果一览基本介绍模型搭建程序设计参考资料效果一览基本介绍... 查看详情

RNN 和 CNN-RNN 不能正确训练,总是预测一类

...测情绪。我有一个相对较小的标记数据集(~7500),有7种不同的情绪作为类。我开发了一个CNN并达到了约63%的准确率,但是当我尝试应用一个使用LST 查看详情

如何防止 CNN 中回归问题的收敛到均值解决方案?

】如何防止CNN中回归问题的收敛到均值解决方案?【英文标题】:HowtopreventconvergetomeansolutionforregressionproblemsinCNN?【发布时间】:2017-09-0606:46:55【问题描述】:我正在训练一个用于预测手部关节的CNN。问题是我的网络总是收敛到... 查看详情

回归预测基于matlab麻雀搜索算法优化cnn回归预测含matlab源码jq002期(代码片段)

一、麻雀算法优化SVM简介1SSA的基本原理SSA算法是一种模拟麻雀觅食行为和反捕食行为的新型群体智能优化算法,其基本原理如下:在SSA中,每只麻雀位置对应其中的一个解。麻雀在觅食过程中有3种行为:①作为... 查看详情

图片无限轮播由于viewpager的预加载机制所导致的问题

分类和回归是分析预测中最古老的话题。支持向量机、逻辑回归、朴素贝叶斯算法、神经网络和深度学习都属于分类和回归技术。本章将重点关注决策树算法和它的扩展随机决策森林算法,这两个算法灵活且应用广泛,即可用于... 查看详情

机器学习实战精读--------回归

回归的目的是预测数值型的目标值神经网络学习机理:分解和整合回归:求回归系数的过程最小二乘法:它的主要思想就是选择未知参数,使得理论值与观测值之差的平方和达到最小欠拟合:模型没有很好地捕捉到数据特征,不... 查看详情

预测房价:人工智能回归问题(代码片段)

...论好坏倾向性判断)多分类问题(将新闻按照主题分类)回归问题(根据房地产数据估算房地产价格)我们解决了前两个问题,今天我们解决第三个问题,回归问题。不管是二分类问题还是多分类问题,归结起来都是分类问题,... 查看详情

CNN+LSTM OCR 模型无法正确预测“是”

】CNN+LSTMOCR模型无法正确预测“是”【英文标题】:CNN+LSTMOCRmodelnotpredicting"is"correctly【发布时间】:2018-10-2319:23:52【问题描述】:我在tensorflow中制作了一个模型,其OCR结构如下。我在一个非常大的数据集(250K图像)上对... 查看详情

在 keras 中使用 CNN 对图像进行二值分类时正确预测的总数

】在keras中使用CNN对图像进行二值分类时正确预测的总数【英文标题】:TotalofcorrectlypredictedinbinaryclassificationofimageswithCNNinkeras【发布时间】:2018-02-1501:42:09【问题描述】:我已经成功地使用Keras为CNN中的图像构建了二进制分类模... 查看详情

机器学习:6.逻辑归回

1.用自己的话描述一下,什么是逻辑回归,与线性回归对比,有什么不同?①逻辑回归:是一种广义的线性回归分析模型。逻辑回归就是一个分类的算法,常见用在二分类当中,就是把我们的输入值在线性回归中转化为预测值,... 查看详情

逻辑回归输出中只有两个不同的概率值

】逻辑回归输出中只有两个不同的概率值【英文标题】:OnlytwodistinctvaluesofprobabilitiesinLogisticregressionoutput【发布时间】:2018-09-2412:31:43【问题描述】:我正在R中运行逻辑回归,并使用提取大约15,000行测试数据的预测概率predict(mode... 查看详情

Tensorflow 上带有回归输出的 CNN 图像识别

】Tensorflow上带有回归输出的CNN图像识别【英文标题】:CNNImageRecognitionwithRegressionOutputonTensorflow【发布时间】:2018-01-1315:51:01【问题描述】:我想使用CNN根据图像预测估计的等待时间。所以我想这将使用CNN使用RMSE的损失函数输出... 查看详情

多层多输入的cnn-lstm时间序列回归预测(卷积神经网络-长短期记忆网络)——附代码

...:本文使用CNN-LSTM混合神经网络对时间序列数据进行回归预测。本模型的输入数据个数可以自行选择,可以为多输入、也可以为单输入,使用Matlab自带的数据集进行训练,可以轻松的更换数据集以实现自己的功能... 查看详情