BasicLSTMCell
来源:互联网 发布:商务电脑双肩包 知乎 编辑:程序博客网 时间:2024/06/05 19:31
class BasicLSTMCell(RNNCell):
基本的LSTM循环网络单元
实现基于http://arxiv.org/abs/1409.2329
我们添加 forget_bias (默认值为1)到遗忘门的偏置,为了减少在开始训练时遗忘的规模。
它不允许单元有一个剪裁,映射层,不允许有peep-hole 连接:这是基准。
对于更高级的模型,请使用 full LSTMCell
def __init__(self, num_units, forget_bias=1.0, input_size=None):
初始化基本LSTM 单元
参数:
- num_units: int, 在LSTM cell中unit 的数目
- forget_bias: float, 添加到遗忘门中的偏置
- input_size: int, 输入到LSTM cell 中输入的维度。默认等于 num_units
class DropoutWrapper(RNNCell):
在给定的cell 上的输入和输出添加 dropout 操作。
def __init__(self, cell, input_keep_prob=1.0, output_keep_prob=1.0, seed=None)
创建一个输入或(且)输出上有dropout 操作的cell
state 上不应用dropout
参数:
- cell: 一个RNNCell,添加一个到output_size 的映射
- input_keep_prob: unit Tensor 或0到1之间的一个float 值,保留输入的概率;如果是float 类型的1,表示输入上不添加dropout 操作。
- output_keep_prob: unit Tensor 或0到1之间的一个float值,保留输出的概率;如果是float类型的1,表示输出上不添加dropout 操作。
- seed: 可选 integer,随机种子
def __call__(self, inputs, state, scope=None):
class MultiRNNCell(RNNCell):
RNN cell 有多个简单的cell 循序组成。(按照序列组成)
def __init__(self, cells):
创建一个由大量的RNNCell 循序组成的一个RNN cell
参数:
- cells: RNNCell 的列表,将按照这个顺序组成
cells[i+1].input_size==cells[i].output_size
def __call__(self, inputs, state, scope=None):
def get_variable(self, name, shape=None, dtype=dtypes.float32, initializer=None, regularizer=None, reuse=None, trainable=True, collection=None, caching_device=None):
用这些参数得到一个已存在的变量或创建一个新的变量。
如果给定名字的变量已存在,则返回一个已存在的变量。否则,创建一个新的变量。
设置'reuse' 为 ‘True’,当你仅仅想要重用已经存在的变量。
设置'reuse'为‘False’,当你仅仅想要创建一个新的变量。
如果'reuse' 为 'None'(默认),会返回一个新的变量和一个已经存在的变量。
如果初始化器是'None'(默认),使用构造器中传入的初始化器。如果构造函数中的初始化器也是'None‘,我使用一个新的'UniformUnitScalingInitializer’。如果初始化器是一个Tensor,我们使用它作为一个值,并从初始化器中获得shape.
参数:
- name: 新的或已存在的变量的名字。
- shape: 新的或已存在的变量的shape
0 0
- BasicLSTMCell
- 【tensorflow学习】BasicLSTMCell 源码分析
- tensorflow教程:LSTMCell和BasicLSTMCell
- tf.nn.rnn_cell.BasicLSTMCell函数用法
- tf.contrib.rnn.BasicLSTMCell, tf.contrib.rnn.MultiRNNCell深度解析
- ValueError: Variable RNN/MultiRNNCell/Cell0/BasicLSTMCell/Linear/Matrix does not exist, disallowed.
- 工具类数组转换List
- 异常
- c蓝桥杯高效实现十六进制转八进制
- 【编程开发】非对称加密算法
- mysqldump的一些使用技巧
- BasicLSTMCell
- 在点击tableviewcell之上的东西时获取当前点击的cell的section和row(通过当前点击的坐标点获取)
- 工具类数组转换List
- HashMap深度原理解析
- Android系统中Parcelable和Serializable的区别
- Linux中安装jdk和tomcat+xshell的结合
- 块级元素与行内元素的区别
- usaco ★Bessie Come Home 回家
- linux之c语言开发的一些知识点