NetStateObject
NetStateObject[net]
创建一个从 net 中导出的对象,表示具有额外存储状态信息的神经网络,当网络应用于数据时会对该状态信息进行更新.
NetStateObject[net,seed]
创建一个对象,用 seed 初始化其中额外的存储状态信息.
更多信息
- NetStateObject[…][data] 对 NetStateObject 中存储的状态信息进行更新.
- 状态信息与循环神经网络的状态端口(如 LongShortTermMemoryLayer)相关联.
- NetStateObject 将不会存储其状态端口的初始化是来自 NetGraph 中的其他层的层的状态.
- 没有提供种子的情况下,循环状态的初值将由零数组组成.
- 存储状态的当前值由 NetExtract[NetStateObject[…],"States"] 给定.
范例
打开所有单元关闭所有单元基本范例 (3)
应用 (1)
培训英文字符级语言模型. 首先,从两部小说中创建 30 万个训练实例,每个实例由 25 个字符组成:
数据以分类问题的形式给定:给定字符序列,预测下一个字符. 来看一个数据的样本:
训练该网络. 在 CPU 上可能要花费一个小时;如果有 GPU 可用,建议将选项 TargetDevice 设为 "GPU":
属性和关系 (3)
如果一个循环层的状态的初始值是由 NetGraph 中的连接提供的,那么这个状态将不会被 NetStateObject 储存.
创建一个使用连接来提供 BasicRecurrentLayer 状态初始值的图:
不能在 NetStateObject 中使用该图,因为其中没有要保存的状态:
可以使用 NetExtract 来获取保存状态的当前值.
先创建一个 NetStateObject:
对于循环网络,使用 NetStateObject 等同于通过 NetPort[All,"States"] 手动跟踪循环状态.
文本
Wolfram Research (2018),NetStateObject,Wolfram 语言函数,https://reference.wolfram.com/language/ref/NetStateObject.html.
CMS
Wolfram 语言. 2018. "NetStateObject." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/NetStateObject.html.
APA
Wolfram 语言. (2018). NetStateObject. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/NetStateObject.html 年