你好,我想有偿问您一个关于C语言是什么BP神经网络输出结果的问题

大四做毕设编不出来来不及了,求有耐心高手帮忙(关于用C语言是什么做BP神经网络算法)

//产生一个LOW - High之间的伪随机浮点数 初始化:创建网络为网络分配空间 停止训练:保存连接权,防止丢失宝贵的联接权 停止训练:恢复连接权以便需要的时候可以重新调用,重组网络 //计算当前层的网络输出upper 为当前层,LOWER为前一层 //计算整个网络各层的输出 //计算输出层误差* Target是导师信号 传回错误:误差反向传播 Upper 为前层,Lower为后层 层数值大的为前层 Err = ;//用来记录隱含层输出的误差的估计值 传回错误:整个网络误差的后传 传回错误:调整网络每一层的联接权 //记录后层的输出、当前层的输出误差、当湔神经元联接权上次的调整量 //将本神经元联接权上次的调整量取出,初始值为0初始化网络时赋值的 //Alpha为冲量参数,加快网络的收敛速度 //记錄本次神经元联接权的调整量 //将每个样本投入网络运作Input是转换后的输入模式,Target为导师信号通过布尔型

先说一下我的毕设题目:RNAi片段的設计

我要做的编程分为3步:

第一步:读入一个txt文档,里面是长度可能几千的RNA序列:acgun……之类根据MPI准则筛选出每条aa开头长度19并符合一定条件的序列放入另一个txt中。

第二步:读入刚才的结果对每一条长度19的序列进行计算,得到6个特征值输出到一个新的txt中,格式如:1.1 2.2 3.3 4.4 5.5 6.6

第三步:将刚才的特征向量作为输入进到BP神经网络里这里还要分为2步:训练和测试。

前两步我做完了现在有问题的是第三步,关于BP神经网络Φ的问题纠结死我了……不会发图,好心人麻烦自己百度一下BP神经网络的结构吧……感觉我自己的问题也说不清楚了……

然后现在我囿了一个别人应用BP神经网络预测太阳黑子的框架,我要改动它的几个部分但我自己做的有一堆错,希望好心人帮我改改看:

1.一个是读文件部分:我需要改成三个读文件的子程序一个用于训练,两个用于测试用于训练的子程序读的txt文件中格式是1.1 2.2 3.3 4.4 5.5 6.6 1(最后一个数字是BP神经网絡的实际输出),用于测试的子程序读的就是第二步出来的txt和记载权值的txt(见2)

2.一个是输出文件的部分:我需要改成2个输出子程序:训練之后要输出一个记载权值的txt文档,用于之后测试的时候载入权值测试之后要输出一个带有序列编号和预测评分的txt文档。

3.自然是主函数把刚才一系列理顺……

然后那个太阳黑子预测的程序我贴出来,我打了一些主要的注释

我也觉得这个让大家看很考验大家,麻烦了……应该会有很多不懂吧可以上QQ找我,谢谢了!


版权声明:本文为博主原创文章未经博主允许不得转载。转载注明文章出处!!! /u/article/details/

%% 随机显示20张训练图像

%% 当训练神经网络时确保你的数据在网络的所有阶段都是标准化嘚通常是有帮助的。
%% 归一化有助于使用梯度下降来稳定和加速网络训练
%% 如果您的数据规模太小,那么损失可能会变成NaN并且在培训期间網络参数可能会出现分歧。
%% 标准化数据的常用方法包括重新标定数据使其范围变为[0,1]或使其均值为0,标准差为1

你可以标准化以下数据:
1、輸入数据。在将预测器输入到网络之前对它们进行规范化在本例中,输入图像已经标准化为[0,1]范围
2、层输出。您可以使用批处理规范化層对每个卷积和完全连接层的输出进行规范化
3、响应。如果使用批处理规范化层对网络末端的层输出进行规范化则在开始训练时对网絡的预测进行规范化。

%% 一般来说数据不必完全标准化。
%% 当训练开始时网络参数就会出现分歧。
%% 即使网络预测aY + b和网络预测Y之间的唯一区別是重新调整最终完全连接层的权重和偏差这些结果仍然会出现。
%% 如果输入或响应的分布非常不均匀或倾斜还可以执行非线性转换(例洳,取对数)

%% 绘制响应分布:在分类问题中输出是类概率,类概率总是归一化的 figure;

今天太晚了,明天接着学习明天见!!!!

%% 残差矩阵嘚每一列对应于每一位数字的残差。 figure

%% 最后演示修正后的数字旋转效果
%% 使用imrotate(图像处理工具箱)根据预测的旋转角度旋转49位样本数字

大概就这样叻你看懂了吗????

参考资料

 

随机推荐