📄 使用说明.txt
字号:
1.关于程序的功能
通过RBF神经网络完成数据的分类,训练样本,测试样本来自“/Data/2_5-1train.txt”和“Data/2_5-1test.txt”
2.关于数据样本
训练样本(2_5-1train.txt),前四个数据是输入数据,后两位为分类编码(分三类 00,01,10),供120组;即通过程序完成对120组三类数据的学习,最终完成对测试数据的分类测试。
测试样本(2_5-1test.txt),前四个数据是输入数据,后两位为理想分类编码(分三类 00,01,10),共30组;
最终分类结果(final_RBF.txt),此文件由程序产生,为对最终测试的结果的输出,前四个数据为测试样本的输入数据,然后两位,为测试样本的理想输出,最后两位为程序计算的分类结果,即实际输出(大于0.5的算为1,小于0.5的算为0)。
权值输出(weighefile_RBF.txt),记录学习好后的隐含层各结点样本中心值,方差(所有隐含层结点共用),隐含层到输出层的权值。
3.关于网络结构
此网络为四输入,隐含层三结点(可以根据样本的不同自己定,自己定的是三个),输出层两个输出节点
4.关于算法
此程序分 初始化(1),学习 (1)(2),测试 三部分
初始化时,选取了训练样本中的一组数据作为隐含层中心值的初始数据,选的这三组数在每类中是最靠近中心值的。
学习(1)完成隐含层中心值的设定--我用的是K-均值聚类法,学习(2)对隐含层到输出层的权值用有监督的学习算法进行修改。
测试就没的说了。
5.数据结构及数据说明
double Train[TrainSize][InputLayerSize+OutputLayerSize];//每组训练输入值为4个输入+2个理想输出
double Text[TextSize][InputLayerSize+OutputLayerSize];//每组测试输入值为4个输入+2个理想输出
用这两个二维数组存放从文件读取的训练数据和测试数据
别的在程序里说明的应该很清楚了!
6.程序的执行
编译,链接,运行
RBF rbf_nn;
rbf_nn.InputFileData(trainfile,Train); //(1.1)从文件中读取训练数据
rbf_nn.InputFileData(textfile,Text); //(1.1)从文件中读取测试数据
rbf_nn.Init(); //(1.2)数据初始化,初始化中心值,计算方差值,层间赋权值、各输出结点赋阈值
rbf_nn.Study(); //(2)网络学习
rbf_nn.DataText(); //(3)网路测试
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -