/// <summary>入力ノードの値を更新</summary> /// <param name="input_node">更新対象の入力ノード</param> /// <remarks>入力ノードのテンソルは割り当て済みである必要がある</remarks> public OutputNode Update(InputNode input_node) { if (input_node.Tensor == null) { throw new ArgumentException("Input node tensor needs to be assigned."); } return(new OutputNode(this, input_node.Tensor, input_node.Name)); }
/// <summary>正規乱数を生成(XorShift, Box-Muller Method)</summary> public static InputNode NormalRandom(Shape shape, Random random) { Tensor y = new Tensor(shape); InputNode inputnode = y; inputnode.Initializer = new Initializers.Normal(y, random); return(inputnode); }
/// <summary>ベルヌーイ分布に従う2値</summary> public static InputNode BinaryRandom(Shape shape, Random random, float prob) { Tensor y = new Tensor(shape); InputNode inputnode = y; inputnode.Initializer = new Initializers.Binary(y, random, prob); return(inputnode); }