RandomArrayLayer[dist]
表示没有输入的网络层,根据单变量分布 dist 生成随机数组.
RandomArrayLayer[dfunc]
对每个输入值使用单变量分布 dfunc[input].
RandomArrayLayer
RandomArrayLayer[dist]
表示没有输入的网络层,根据单变量分布 dist 生成随机数组.
RandomArrayLayer[dfunc]
对每个输入值使用单变量分布 dfunc[input].
更多信息和选项
- 在 RandomArrayLayer[dist] 中,分布 dist 可以是以下任意一个单变量分布:NormalDistribution, UniformDistribution, GammaDistribution, ExponentialDistribution, PoissonDistribution, MaxwellDistribution, RayleighDistribution, ChiDistribution, HalfNormalDistribution, WeibullDistribution, NakagamiDistribution, ChiSquareDistribution, ErlangDistribution, LogGammaDistribution, ExpGammaDistribution, InverseGammaDistribution, BernoulliDistribution, BinomialDistribution, NegativeBinomialDistribution 或 DiscreteUniformDistribution.
- RandomArrayLayer[dist][] 会根据输出的形状生成随机数组或标量.
- 在 RandomArrayLayer[dfunc] 中,网络层中输入端口的数目即是函数 dfunc 的自变量的数目.
- 在 RandomArrayLayer[dfunc] 中,输出将是一个由从对应分布中独立抽取的值组成的数组,从输入数组中逐个获取其参数.
- RandomArrayLayer[Function[… #Name1 … #Name2 …], …] 开放名为 "Name1"、"Name2" 等的输入端口.
- 除输入端口外,RandomArrayLayer 还开放以下端口,以便用在 NetGraph 等中:
-
"Output" 数组 - 可以像在 NetGraph 中一样用 RandomArrayLayer[…,"port"shape] 来指定给定端口的形状、编码器或解码器.
- Options[RandomArrayLayer] 给出构建网络层的默认选项的列表. Options[RandomArrayLayer[…]] 给出在一些数据上运行网络层的默认选项列表.
- Information[RandomArrayLayer[…]] 给出关于该网络层的报告.
- Information[RandomArrayLayer[…],prop] 给出 RandomArrayLayer[…] 的属性 prop 的值. 可能的属性与 NetGraph 相同.
范例
打开所有单元 关闭所有单元基本范例 (2)
范围 (3)
Arguments (2)
创建一个从独立的正态分布中抽取实数的网络层,该正态分布的均值和标准偏差由输入确定:
ra = RandomArrayLayer[NormalDistribution[#1, #2]&]ra[{{-10, 0, 10}, {0.01, 1, 100}}]ra = RandomArrayLayer[NormalDistribution[#μ, #σ]&]ra[<|"μ" -> {-10, 0, 10}, "σ" -> {0.01, 1, 100}|>]ra = RandomArrayLayer[DiscreteUniformDistribution[{1, #Max}]&]ra[{10, 100, 1000}]应用 (2)
构建一个网络,求一个数组和一个从高斯分布中抽取的随机向量的和:
noiser = NetGraph[{RandomArrayLayer[NormalDistribution[0, 0.2]], Plus}, {{1, NetPort["Input"]} -> 2}]noiser[(| | | |
| -- | -- | -- |
| 1 | 2 | 3 |
| -1 | -2 | -3 |)]//MatrixFormnoiser[{{1, 2}, {1, 0, -1, -2, -3}}]通过添加一个输入 NetEncoder 和输出 NetDecoder,生成一个将噪声添加到图像中的网络:
imagenoiser = NetReplacePart[noiser, {"Input" -> NetEncoder["Image"], "Output" -> NetDecoder["Image"]}]imagenoiser[[image]]构建一个网络,用特定整数值作为掩模,应用于整数向量,变换一个值的概率为 0.3:
integerpadder = NetGraph[{RandomArrayLayer[BernoulliDistribution[0.3]], ThreadingLayer[If[#1 > 0, 4, #2]&]}, {{1, NetPort["Input"]} -> 2}, "Input" -> {Automatic, Restricted["Integer", 3]}]integerpadder[{{1, 2, 3, 1, 2, 3}, {3, 2, 1, 3, 2, 1, 3, 2, 1, 3, 2, 1}}]相关指南
-
▪
- 神经网络层
文本
Wolfram Research (2020),RandomArrayLayer,Wolfram 语言函数,https://reference.wolfram.com/language/ref/RandomArrayLayer.html.
CMS
Wolfram 语言. 2020. "RandomArrayLayer." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/RandomArrayLayer.html.
APA
Wolfram 语言. (2020). RandomArrayLayer. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/RandomArrayLayer.html 年
BibTeX
@misc{reference.wolfram_2026_randomarraylayer, author="Wolfram Research", title="{RandomArrayLayer}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/RandomArrayLayer.html}", note=[Accessed: 12-July-2026]}
BibLaTeX
@online{reference.wolfram_2026_randomarraylayer, organization={Wolfram Research}, title={RandomArrayLayer}, year={2020}, url={https://reference.wolfram.com/language/ref/RandomArrayLayer.html}, note=[Accessed: 12-July-2026]}