/// <summary>チャネル方向に切り出し</summary>
        public static Tensor ExtractChannel(Tensor x, int index, int channels)
        {
            Function function = new Functions.ArrayManipulation.ExtractChannel(index, channels);

            Tensor y = new Tensor(function.OutputShapes(x.Shape)[0]);

            function.Execute(new Tensor[] { x }, new Tensor[] { y });

            return(y);
        }
        /// <summary>チャネル方向に切り出し</summary>
        public static VariableNode ExtractChannel(VariableNode x, int index, int channels)
        {
            Function function = new Functions.ArrayManipulation.ExtractChannel(index, channels);

            return(Apply(function, x)[0]);
        }