IE盒子

搜索
查看: 117|回复: 6

MATLAB中多层网络的net.lw{i,j}和net.b{k}的含义

[复制链接]

2

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2022-9-24 02:08:34 | 显示全部楼层 |阅读模式
网上有很多解释,但都是基于三层网络而言,这些解释看matlab帮助就能知道,但对多层网络并没什么说明,现在说一下多层下的权重矩阵和偏置。
先假设神经网络结构,{ 9  [80 50 20]  1 };9为输入层,[80 50 20]为隐层,1为输出层。

  • net.iw{1,1}  表示   输入层       到  第1层隐层  的权重,为80*9的矩阵;
  • net.lw{2,1}  表示   第1层隐层  到  第2层隐层  的权重,为50*80的矩阵;
  • net.lw{3,2}  表示   第2层隐层  到  第3层隐层  的权重,为20*50的矩阵;
  • net.lw{4,3}  表示   第3层隐层  到  输出层       的权重,为1*20的矩阵;
  • net.b{1}      表示   第1层隐层  的偏置,为80*1的矩阵;
  • net.b{2}      表示   第2层隐层 的偏置,为50*1的矩阵;
  • net.b{3}      表示   第3层隐层 的偏置,为20*1的矩阵;
  • net.b{4}      表示   输出层       的偏置,为1*1的矩阵;
可以以此类推。
        所以net.iw{1,1},模式也是固定的,仅表示输入层到第1层隐层的权重,之后就net.lw的事情了。net.lw{i,j} 表示 第j层隐层 第i层隐层 的权重。net.b{k} 表示 第k层隐层 的偏置或者说阈值,结构都为列向量。可以看出,这里假设的隐含层只有3层[80 50 20],但net中将最后一层输出层也当隐含层用了,所以 i k 可以取到4。
知道权重和偏置的位置,可以用算法优化,如遗传算法等。
回复

使用道具 举报

6

主题

11

帖子

23

积分

新手上路

Rank: 1

积分
23
发表于 2022-9-24 02:09:30 | 显示全部楼层
感谢  大佬  有例子脑子清楚多了
回复

使用道具 举报

2

主题

6

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2022-9-24 02:09:44 | 显示全部楼层
大佬,为什么我试的iw{1,1}维度比输入少1,对不上呀
回复

使用道具 举报

3

主题

8

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2022-9-24 02:10:29 | 显示全部楼层
感谢解答,获益匪浅
回复

使用道具 举报

3

主题

10

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2022-9-24 02:10:52 | 显示全部楼层
大佬知道怎么调出创建的神经网络的关系函数吗?
回复

使用道具 举报

3

主题

11

帖子

17

积分

新手上路

Rank: 1

积分
17
发表于 2022-9-24 02:11:36 | 显示全部楼层
感谢大佬,瞬间通透了
回复

使用道具 举报

0

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2022-9-24 02:12:06 | 显示全部楼层
请问一下,各层初始的权重和阈值我们知道吗?还是程序自行设置的啊?我看上面的程序就像是只体现了层与层之间的关系,但并没有看出阈值和权重一开始是怎么设定的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表