笔记:TensorFlow全连接层函数tf.layers.dense()原理

本文探讨了TensorFlow中全连接层函数tf.layers.dense()的工作原理。通过对比实验,揭示了该函数会自动生成权重矩阵和偏置项,并详细说明了内部计算过程及输出维度。结论指出,对于[m, n]输入,它创建[n, k]权重矩阵和[m, k]偏置项,计算结果为y = input * kernel + bias。" 121579846,11572608,Vue.js中的具名与作用域插槽实战解析,"['Vue.js', '前端框架', '模板语法', '组件通信']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转文章原地址:
https://www.jianshu.com/p/3855908b4c29

最近在用TensorFlow实现CNN网络时用到了全连接层,在网上看了很多有关全连接层实现的代码,发现相当一部分人都还是倾向于自己构造权重矩阵W和偏移矩阵b,利用矩阵乘法实现全连接层。
而TensorFlow中封装了全连接层函数tf.layers.dense(),但是官方文档中并没有解释其详细原理。网上有部分博客对此提及,但也少有涉及到内部实现原理的。于是今天自己动手做了个对比试验,来探究一下tf.layers.dense()函数的详细原理。

先贴结论:tf.layers.dense( input, units=k )会在内部自动生成一个权矩阵kernel和偏移项bias,各变量具体尺寸如下:对于尺寸为[m, n]的二维张量input, tf.layers.dense()会生成:尺寸为[n, k]的权矩阵kernel,和尺寸为[m, k]的偏移项bias。内部的计算过程为y = input * kernel + bias,输出值y的维度为[m, k]。

以下是实验代码。

import tensorflow as tf

# 1. 调用tf.layers.dense计算
input = tf.reshape(tf.constant([[1., 2.], [
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值