예제 #1
0
        public NeuralNetworkLineImage Image()
        {
            var images = new NeuralNetworkImage[chista_nets.Length];

            for (int b = 0; b < chista_nets.Length; b++)
            {
                images[b] = chista_nets[b].Image();
            }
            return(new NeuralNetworkLineImage(images, combiners, index));
        }
예제 #2
0
        private NeuralNetworkImage CloseCurrentImage()
        {
            var image = new NeuralNetworkImage(
                layers.ToArray(),
                error_func, in_cvrt, out_cvrt, regularization);

            last_layer_input_count = 0;
            layers         = null;
            error_func     = null;
            in_cvrt        = out_cvrt = null;
            regularization = null;

            return(image);
        }
예제 #3
0
        public IChistaNet ChistaNet(double learning, double certainty, double dropout)
        {
            var image = Image();

            return(image switch
            {
                NeuralNetworkImage simple_image =>
                new ChistaNet(simple_image)
                {
                    LearningFactor = learning,
                    CertaintyFactor = certainty,
                    DropoutFactor = dropout
                },
                NeuralNetworkLineImage line_image =>
                new ChistaNetLine(line_image)
                {
                    LearningFactor = learning,
                    CertaintyFactor = certainty,
                    DropoutFactor = dropout
                },
                _ => throw new Exception("Invalid chista-net type"),
            });