
新版Matlab中神经网络训练函数Newff的使用详解文档
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本文档详细解析了在新版Matlab环境下如何运用新版本的`newff`函数进行神经网络模型的构建与训练,旨在帮助读者掌握这一工具包的新特性及优化方法。
新版Matlab中的神经网络训练函数newff详解
一、介绍
在新版的MATLAB中,使用`newff`命令来创建多层前馈神经网络。以下是其语法:
```matlab
net = newff(P, T, sizes, TFs, BTF, BLF, PFs)
```
其中:
- `P`: 输入数据样本矩阵。
- `T`: 目标输出的样本矩阵。
- `sizes`: 每一层神经元的数量,包括输入层和输出层。默认值为 `[ ]` 表示使用隐含层数量作为默认设置。
- `TFs`: 各层传递函数,默认情况下隐藏层采用`tansig`而输出层则用`purelin`。
- `BTF`: 反向传播训练算法,例如常用的有`trainlm`, `traingd`, 等等;
- `BLF`: 权重和偏置的学习规则。可以使用如`slearngdm`,`slearnca`等形式的函数。
- `PFs`: 输入处理及输出处理功能数组。
二、新版newff与旧版newff调用语法对比
例如,假设输入数据为6*1000矩阵(记作input),目标输出是4*1000矩阵。那么在使用新版本的`newff`函数时定义网络如下:
**Example 1**
- 在旧版本中: `net=newff([min(input(:)) max(input(:)); min(output(:)) max(output(:)),[6,4],{tansig,purelin},trainlm);`
- 新版调用方式:`net = newff(minmax([input; output]), [6 4], {tansig purelin}, trainlm);`
**Example 2**
同样地,对于输入数据为6*1000矩阵(记作input),目标输出是4*1000矩阵。旧版定义如下:
- 在旧版本中:`net = newff([min(input(:)) max(input(:)); min(output(:)) max(output(:)),[9,2],{tansig,purelin},trainlm);`
- 新版调用方式: `net = newff(minmax([input; output]), [6 4], {tansig purelin}, traingdx);`
具体细节请参考文档《新版Matlab中神经网络训练函数Newff的使用方法.doc》。
全部评论 (0)


