TF-tf.nn.dropout介绍

官方的接口是这样的

tf.nn.dropout(x, keep_prob, noise_shape=None, seed=None, name=None)

根据给出的keep_prob参数,将输入tensor x按比例输出。

默认情况下, 每个元素保存或丢弃都是独立的。后面这段没太懂,以后懂了再补上: If noise_shape is specified, it must be broadcastable to the shape of x, and only dimensions with noise_shape[i] == shape(x)[i] will make independent decisions. For example, if shape(x) = [k, l, m, n] and noise_shape = [k, 1, 1, n], each batch and channel component will be kept independently and each row and column will be kept or not kept together.

x                 :  输入tensor
keep_prob    :  float类型,每个元素被保留下来的概率
noise_shape  : 一个1维的int32张量,代表了随机产生“保留/丢弃”标志的shape。
seed             : 整形变量,随机数种子。
name            : 名字,没啥用。

时间: 2024-10-10 00:37:59

TF-tf.nn.dropout介绍的相关文章

tf.nn.dropout()介绍

1.Dropout原理简述: Dropout就是在不同的训练过程中随机扔掉一部分神经元.也就是让某个神经元的激活值以一定的概率p,让其停止工作,这次训练过程中不更新权值,也不参加神经网络的计算.但是它的权重得保留下来(只是暂时不更新而已),因为下次样本输入时它可能又得工作了.示意图如下: 但在测试及验证中:每个神经元都要参加运算,但其输出要乘以概率p. 2.tf.nn.dropout(x,keep_prob,noise_shape=None,seed=None,name=None)函数说明 上面

TensorFlow之tf.nn.dropout():防止模型训练过程中的过拟合问题

一:适用范围: tf.nn.dropout是TensorFlow里面为了防止或减轻过拟合而使用的函数,它一般用在全连接层 二:原理: dropout就是在不同的训练过程中随机扔掉一部分神经元.也就是让某个神经元的激活值以一定的概率p,让其停止工作,这次训练过程中不更新权值,也不参加神经网络的计算.但是它的权重得保留下来(只是暂时不更新而已),因为下次样本输入时它可能又得工作了 三:函数介绍: tf.nn.drop(x,  keep_prob, noise_shape=None, seed=Non

tf.nn.dropout

tf.nn.dropout(x, keep_prob, noise_shape=None, seed=None, name=None) 此函数是为了防止在训练中过拟合的操作,将训练输出按一定规则进行变换. 参数: x:输入 keep_prob:保留比例,取值 (0,1] .每一个参数都将按这个比例随机变更. noise_shape:干扰形状.此字段默认是None,表示第一个元素的操作都是独立,但是也不一定.比例:数据的形状是shape(x)=[k, l, m, n],而noise_shape=[

[tf] tensorflow中dropout小坑记录

tensorflow中dropout小坑记录 几天看别人写的代码,有几行总觉得没什么用,自己写了小程序测试了下,果然. 虽然平时这么写的人不多,但是还是记录下吧. 对tensorflow使用时要转变下思维,和平时写的C++不太一样,只是建立了一个静态图. 在list中进行for循环,内部操作是局部变量操作,与原list无关. tf.nn.dropout操作,在随机舍掉部分节点的同时为了保证输出值的平稳会将保留下的节点数据除以keep_prob进行扩大. 赋值操作即使赋值给原数据,也是两个op节点

TF-卷积函数 tf.nn.conv2d 介绍

转自 http://www.cnblogs.com/welhzh/p/6607581.html 下面是这位博主自己的翻译加上测试心得 tf.nn.conv2d是TensorFlow里面实现卷积的函数,参考文档对它的介绍并不是很详细,实际上这是搭建卷积神经网络比较核心的一个方法,非常重要 tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, name=None) 除去name参数用以指定该操作的name,与方法有关

TF-激活函数 tf.nn.relu 介绍

tf.nn.relu(features, name = None) 这个函数的作用是计算激活函数 relu,即 max(features, 0).即将矩阵中每行的非最大值置0. import tensorflow as tf a = tf.constant([-1.0, 2.0]) with tf.Session() as sess: b = tf.nn.relu(a) print sess.run(b) 以上程序输出的结果是:[0. 2.] 原文地址:https://www.cnblogs.c

tf.contrib.slim的介绍

本文主要参考博客:博客连接 前言基础: 验证本地的tf.contrib.slim模块是否有效: 1 python -c "import tensorflow.contrib.slim as slim;eval=slim.evaluation.evaluate_once" 下载models模块: 下载连接.下载后解压到你设定的文件夹,笔者解压到"E:\TENSORFLOW\models" 找到并且打开文件夹"E:\TENSORFLOW\models\rese

tf.nn的conv2d卷积与max_pool池化

tf.nn.conv2d(value,filter,strides,[...]) 对于图片来说 value :   形状通常是np.array()类型的4维数组也称tensor(张量),  (batch,height,width,channels) 可以理解为(图片样本的个数,高,宽,图片的颜色通道数) value是待卷积的数据 filter: 卷积核 -4元素元组[height,width,in_channels,out_channels],前面的3个参数和value的后面3个参数一一对应.但

深度学习原理与框架-CNN在文本分类的应用 1.tf.nn.embedding_lookup(根据索引数据从数据中取出数据) 2.saver.restore(加载sess参数)

1. tf.nn.embedding_lookup(W, X) W的维度为[len(vocabulary_list), 128], X的维度为[?, 8],组合后的维度为[?, 8, 128] 代码说明一下:即根据每一行X中的一个数,从W中取出对应行的128个数据,比如X[1, 3]个数据是3062,即从W中的第3062行取出128个数据 import numpy as np import tensorflow as tf data = np.array([[2, 1], [3, 4], [5,