TensorFlow 添加全连接层

简介: TensorFlow 添加全连接层

Tensorflow中提供了tf.layers.dense()tf.contrib.layers.fully_connected用于添加全连接层,两者功能一样,后者在前者基础上封装实现。

1. tf.layers.dense()

tf.layers.dense(
    inputs,
    units,
    activation=None,
    use_bias=True,
    kernel_initializer=None,
    bias_initializer=tf.zeros_initializer(),
    kernel_regularizer=None,
    bias_regularizer=None,
    activity_regularizer=None,
    kernel_constraint=None,
    bias_constraint=None,
    trainable=True,
    name=None,
    reuse=None
)
  • inputs:该层的输入。
  • units: 输出的大小(维数),整数或long。
  • activation: 使用什么激活函数(神经网络的非线性层),默认为None,不使用激活函数。
  • use_bias: 使用bias为True(默认使用),不用bias改成False即可。
  • kernel_initializer:权重矩阵的初始化函数。 如果为None(默认值),则使用tf.get_variable使用的默认初始化程序初始化权重。
  • bias_initializer:bias的初始化函数。
  • kernel_regularizer:权重矩阵的正则函数。
  • bias_regularizer:bias的的正则函数。
  • activity_regularizer:输出的的正则函数。
  • kernel_constraint:由优化器更新后应用于内核的可选投影函数(例如,用于实现层权重的范数约束或值约束)。 该函数必须将未投影的变量作为输入,并且必须返回投影变量(必须具有相同的形状)。 在进行异步分布式训练时,使用约束是不安全的。
  • bias_constraint:由优化器更新后应用于偏差的可选投影函数。
  • trainable:Boolean,如果为True,还将变量添加到图集- collectionGraphKeys.TRAINABLE_VARIABLES(参见tf.Variable)。
  • name:名字
  • reuse:Boolean,是否以同一名称重用前一层的权重。

2. tf.contrib.layers.fully_connected

tf.contrib.layers.fully_connected(
    inputs,
    num_outputs,
    activation_fn=tf.nn.relu,
    normalizer_fn=None,
    normalizer_params=None,
    weights_initializer=initializers.xavier_initializer(),
    weights_regularizer=None,
    biases_initializer=tf.zeros_initializer(),
    biases_regularizer=None,
    reuse=None,
    variables_collections=None,
    outputs_collections=None,
    trainable=True,
    scope=None
)
  • inputs:至少等级2的张量和最后一个维度的静态值; 即[batch_size, depth],[None, None, None, channels]。
  • num_outputs:整数或长整数,图层中的输出单位数。
  • activation_fn:激活功能。默认值是ReLU功能。将其明确设置为“无”以跳过它并保持线性激活。
  • normalizer_fn:使用标准化功能代替biases。如果 normalizer_fn提供biases_initializer,biases_regularizer则忽略并且biases不创建也不添加。没有规范化器功能,默认设置为“无”
  • normalizer_params:规范化函数参数。
  • weights_initializer:权重的初始化程序。
  • weights_regularizer:可选的权重正则化器。
  • biases_initializer:偏置的初始化程序。如果没有跳过偏置。
  • biases_regularizer:偏置的可选正则化器。
  • reuse:是否应重用图层及其变量。必须给出能够重用层范围的能力。
  • variables_collections:所有变量的集合的可选列表或包含每个变量的不同集合列表的字典。
  • outputs_collections:用于添加输出的集合。
  • trainable:如果True还将变量添加到图表集合中 GraphKeys.TRAINABLE_VARIABLES(请参阅tf.Variable)。
  • scope:variable_scope的可选范围。
相关文章
【推荐】排序模型的评价指标nDCG
nDCG(Normalized Discounted Cumulative Gain)归一化折损累计增益是一种用于评估排序模型性能的指标,它考虑了两个方面:排序的正确性和相关性的程度。
2952 0
Idea 项目结构不显示解决方案
Idea 项目结构不显示解决方案
981 0
Idea 项目结构不显示解决方案
|
8月前
|
机器学习/深度学习 数据采集 自然语言处理
HuggingFace Transformers 库深度应用指南
本文首先介绍HuggingFace Tra环境配置与依赖安装,确保读者具备Python编程、机器学习和深度学习基础知识。接着深入探讨Transformers的核心组件,并通过实战案例展示其应用。随后讲解模型加载优化、批处理优化等实用技巧。在核心API部分,详细解析Tokenizers、Models、Configuration和Dataset的使用方法。文本生成章节则涵盖基础概念、GPT2生成示例及高级生成技术。最后,针对模型训练与优化,介绍预训练模型微调、超参数优化和推理加速等内容。通过这些内容,帮助读者掌握HuggingFace Transformers的深度使用,开发高效智能的NLP应用。
1189 22
|
机器学习/深度学习 TensorFlow 算法框架/工具
TensorFlow 1.x 深度学习秘籍:1~5(1)
TensorFlow 1.x 深度学习秘籍:1~5
202 0
|
TensorFlow 算法框架/工具 Python
【Tensorflow 2】解决'Tensor' object has no attribute 'numpy'
解决'Tensor' object has no attribute 'numpy'
279 3
|
机器学习/深度学习 算法 搜索推荐
通过元学习优化增益模型的性能:基础到高级应用总结
在当今数据驱动的决策过程中,因果推断和增益模型扮演了至关重要的角色。因果推断帮助我们理解不同变量间的因果关系,而增益模型则专注于评估干预措施对个体的影响,从而优化策略和行动。然而,要提高这些模型的精确度和适应性,引入元学习器成为了一个创新的解决方案。元学习器通过将估计任务分解并应用不同的机器学习技术,能够有效增强模型的表现。接下来,我们将详细探讨如何利用元学习优化增益模型的性能,特别是通过S-Learner、T-Learner和X-Learner这几种估计器。
277 1
|
机器学习/深度学习 存储 搜索推荐
连续迁移学习跨域推荐排序模型在淘宝推荐系统的应用
本文探讨了如何在工业界的连续学习的框架下实现跨域推荐模型,提出了连续迁移学习这一新的跨域推荐范式,利用连续预训练的源域模型的中间层表征结果作为目标域模型的额外知识,设计了一个轻量级的Adapter模块实现跨域知识的迁移,并在有好货推荐排序上取得了显著业务效果。
1183 0
连续迁移学习跨域推荐排序模型在淘宝推荐系统的应用
|
机器学习/深度学习 Web App开发 数据挖掘
经典神经网络论文超详细解读(七)——SENet(注意力机制)学习笔记(翻译+精读+代码复现)
经典神经网络论文超详细解读(七)——SENet(注意力机制)学习笔记(翻译+精读+代码复现)
4082 1
经典神经网络论文超详细解读(七)——SENet(注意力机制)学习笔记(翻译+精读+代码复现)
|
存储 安全 数据可视化
ONLYOFFICE 8.0版本深度测评:革新之作还是失望之作?
ONLYOFFICE 8.0版本深度测评:革新之作还是失望之作?
679 0
|
机器学习/深度学习 算法 TensorFlow
TensorFlow 深度学习实战指南:1~5 全(4)
TensorFlow 深度学习实战指南:1~5 全
162 0