在对输入数据进行规范化处理后,如何对神经网络预测进行反规范化处理?

2024-04-25 21:56:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我们正在进行的项目是“使用反向传播算法的软件工作量估计”。你知道吗

在本计画中,使用反向传播演算法训练神经网路。我们使用一个以虹膜数据集为样本的代码来训练神经网络。我们使用的激活函数是切线(tanh)函数,其范围为[-1,1]。你知道吗

虹膜数据集有4个输入和1个输出(输入所属的物种)。4个输入是萼片长度、萼片宽度、花瓣长度和花瓣宽度。根据这些值,这些变量被分为3个物种(刚毛目、花色和维罗尼卡)。在数据集中,这些物种分别用二进制表示为(1,0,0),(0,1,0),(0,0,1)。所有输出值都在0到1的范围内。你知道吗

我们的项目是软件工作量估算,所以我们用COCOMO81数据集替换了数据集。输入和输出变量的数量更大,多达2000个。在代码中,规范化用于规范化这些值,使它们在-1到1的范围内(使用切线激活函数)。这对于训练神经网络很有效,但是由于这种归一化,我们无法知道输出值的原始值,因为它也是归一化形式。你知道吗

需要将原始值与COCOMO2模型的输出值进行比较,以证明我们的模型是更好的。为此,我们认为需要对输出值进行反规范化,但是,我们不确定如何处理输出值。你知道吗


Tags: 数据项目函数代码模型宽度软件物种