IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 1. 学习单步的RNN:RNNCell -> 正文阅读

[人工智能]1. 学习单步的RNN:RNNCell

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

  1. 学习单步的RNN:RNNCell

提示:以下是本篇文章正文内容,下面案例可供参考

1.任务描述

本关任务:学习 RNN 循环神经网络的基本概念,并构建单个 RNNCell 。

2.相关知识

为了完成本关任务,你需要掌握:

  1. RNNCell 的基本原理和功能;
  2. BasicRNNCell 类的常用属性和方法。

RNNCell是什么

如果要学习 TensorFlow 中的 RNN ,第一站应该就是去了解“ RNNCell ”,它是 TensorFlow 中实现 RNN 的基本单元,每个 RNNCell 都有一个 call 方法,使用方式是: (output, next_state) = call(input, state)
有关时间序列的经验的传递,再结合当前的输入,就可以构成具有“循环”结构的 RNN (循环神经网络)

单个RNNCell的构建

方法 tf.nn.rnn_cell.BasicRNNCell() 可以构造一个 BasicRNNCell 类的实例即一个最基本的 RNNCell ,这个方法有一个参数 num_units 我们需要设置一下,它代表了隐含层的大小,比如,构造一个拥有 5 个神经元的 BasicRNNCell 可以这样实现:

cell=tf.nn.rnn_cell.BasicRNNCell(num_units=5)

RNNCell能做什么

既然我们已经有了一个 RNNCell ,当然想要试着给一个输入,看看这个网络能给我们什么样的输出,这就需要一个我们之前提到的 call 方法,不过 BasicRNNCell 类里的这一调用方法叫做 call() ,下面就展示一下,给定一个输入, RNNCell 会输出给我们什么吧:)

cell=tf.nn.rnn_cell.BasicRNNCell(num_units=5)

新建一个输入值 x1。

x1=tf.placeholder(tf.float32,[batch_size,n_inputs])

batch_size 代表批量输入值的大小, n_inputs 代表单个输入值的维度

构建 BasicRNNCell,含有 n_units 个神经元

cell=tf.nn.rnn_cell.BasicRNNCell(num_units=n_units)

将初始状态初始化为全零

h0=cell.zero_state(batch_size=batch_size,dtype=tf.float32)
output , h1 分别代表了这个 RNNCell 的输出和当前状态。

output,h1=cell.__call__(x1,h0)

打印当前状态

print(h1)

3.编程要求

根据提示,在右侧编辑器的 begin-end 间补充代码,创建一个包含 a 个神经元,可以接受一个 shape=[ b , c ] ,类型为 float32 的张量作为输入的 BasicRNNCell,并打印一次输入后该 BasicRNNCell 的输出。

4.笔者答案

#-*- coding: utf-8 -*-
import tensorflow as tf

#参数 a 是 BasicRNNCell所含的神经元数, 参数 b 是 batch_size, 参数 c 是单个 input 的维数,shape = [ b , c ]
def creatRNNCell(a,b):
   # 请在此添加代码 完成本关任务
   # ********** Begin *********#
   #构建 BasicRNNCell,含有 a 个神经元
   cell=tf.nn.rnn_cell.BasicRNNCell(num_units=a)
   c=3
   #新建一个输入值 x1
   x1=tf.placeholder(tf.float32,[b,c])
   #将初始状态初始化为全零
   h0=cell.zero_state(batch_size=b,dtype=tf.float32)
   #output , h1 分别代表了这个 RNNCell 的输出和当前状态。
   output,h1=cell.__call__(x1,h0)
   #打印一次输入后该 BasicRNNCell 的输出
   print(output)
   # ********** End **********#

通过截图

在这里插入图片描述

总结

  1. 学习单步的RNN:RNNCell
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-01-29 23:05:20  更:2022-01-29 23:06:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 22:31:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码