MATLAB从入门到精通:搭建一个 简单的Bp神经网络(附代码)

Posted 文宇肃然

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB从入门到精通:搭建一个 简单的Bp神经网络(附代码)相关的知识,希望对你有一定的参考价值。

01 | 构建数据集

构造一个1行1000列的一维矩阵,这1000个数全部都在(0,1)这个区间内。规定当某一列的数字大于等于0.5时,输出为1,否则输出-1。构造数据集的代码如下。

%% 构造数据集
inputDim=1;                                     %输入数据维数
inputNum=1000;                                  %输入数据个数 
P=rand(inputDim,inputNum);                      %输入数据
T=zeros(1,inputNum);                            %输出数据
for i=1:inputNum
    %如果大于等于0.5,即输出1,反之输出-1
    if P(i)>=0.5
        T(i)=1;
    else
        T(i)=-1;
    end
end

02 | 划分数据集

然后博主从这1000个数随机挑900进行训练,剩余的100个数用来测试训练结果的准确性。

%%  划分数据集
temp = randperm(inputNum);
P_train=P(:,temp(1:0.9*inputNum));
T_train=T(:,temp(1:0.9*inputNum));
P_test=P(:,temp(0.9*inputNum+1:end));
T_test=T(:,temp(0.9*inputNum+1:end));

03 | 数据归一化

在构建Bp神经网络之前

以上是关于MATLAB从入门到精通:搭建一个 简单的Bp神经网络(附代码)的主要内容,如果未能解决你的问题,请参考以下文章

机器学习从入门到精通系列之BP神经网络理论知识详解

深度学习核心技术精讲100篇(六十)-深度学习分类算法之神经网络

详细MATLAB 中BP神经网络算法的实现

TensorFlow 从入门到精通(10)—— GPU模型训练和卷积神经网络与应用

matlab中 BP神经网络怎么构建多个隐层

运用matlab解决bp神经网络多个输入一个输出的问题