コード例 #1
0
        private void Delete(object sender, EventArgs e)
        {
            layer = new ConnectedLayer();
            string comm = $"Delete From dbo.Самолёт where [Тип самолёта] = '{dataGridView1.CurrentCell.Value.ToString()}';";

            layer.InsertUpdateDelete(comm);
        }
コード例 #2
0
        private void Update(object sender, EventArgs e)
        {
            layer = new ConnectedLayer();
            string comm = $"Update dbo.Самолёт SET [Тип самолёта] = '{textBox1.Text}' WHERE [Тип самолёта] = '{dataGridView1.CurrentCell.Value.ToString()}';";

            layer.InsertUpdateDelete(comm);
        }
コード例 #3
0
        private void Insert(object sender, EventArgs e)
        {
            layer = new ConnectedLayer();
            string comm = $"Insert into dbo.Самолёт Values ('{textBox1.Text}','{textBox2.Text}')";

            layer.InsertUpdateDelete(comm);
        }
コード例 #4
0
        public void Update(int readed)
        {
            var oSqlCon = new SqlConnection(connectionString);

            try
            {
                connectedLayer = new ConnectedLayer();
                dc             = new DataContext(connectionString);
                var query = from u in dc.GetTable <Airplane>()
                            where u.Id == readed
                            select u;
                //   dc.GetTable<T>().InsertOnSubmit(readed);

                foreach (Airplane airplane in query)
                {
                    airplane.Type_Airplane  = DataCenter.Str1;
                    airplane.Class_Airplane = DataCenter.Str2;
                }
                dc.SubmitChanges();
            }
            catch
            {
                logger.Trace(
                    "Connection to" + Environment.NewLine +
                    "Data Source: " + oSqlCon.DataSource + Environment.NewLine +
                    "Database: " + oSqlCon.Database + Environment.NewLine +
                    "State: " + oSqlCon.State +
                    "User: "******"Password:"******"Catalog: " + builder.InitialCatalog +
                    "Server: " + builder.DataSource);
            }
        }
コード例 #5
0
        private void Init(ConnectedLayer connectedLayer)
        {
            ConnectedLayerIndex = connectedLayer.Index;
            InitInputValueAccessItems(connectedLayer);
            OutputBuffer = connectedLayer.OutputBuffer;
            BiasValueIndex = connectedLayer.BiasValueIndex;
            InnerItarationOutputValueStack = connectedLayer.InnerItarationOutputValueStack;
            IsOutput = connectedLayer.IsOutput;
            if ((connectedLayer.StructuralElementFlags & NNStructuralElement.RTLRInformation) != 0)
            {
                Method = ForwardComputationMethod.RTLR;
                UpperNonInputLayerInfos = connectedLayer.UpperNonInputLayerInfos;
                PBiasBuffers = connectedLayer.PBiasBuffers;
                PWeightBuffers = connectedLayer.PWeightBuffers;
                PrevPBiasBuffers = connectedLayer.PrevPBiasBuffers;
                PrevPWeightBuffers = connectedLayer.PrevPWeightBuffers;
                NetDerivBuffer = connectedLayer.NetDerivBuffer;
                GradientBuffers = connectedLayer.GradientBuffers;
                GradientSumBuffers = connectedLayer.GradientSumBuffers;
                BiasGradientValueIndex = connectedLayer.BiasGradientValueIndex;
                BiasGradientSumValueIndex = connectedLayer.BiasGradientSumValueIndex;
            }
            else if (connectedLayer.InnerItarationOutputValueStack != null)
            {
                Debug.Assert(connectedLayer.InnerItarationInputValueStacks != null);

                Method = ForwardComputationMethod.BPTT;
            }
            else
            {
                Method = ForwardComputationMethod.FeedForward;
            }
        }
コード例 #6
0
        public ActivationLayerForwardCompute(ConnectedLayer connectedLayer)
            : base(connectedLayer)
        {
            Contract.Requires(connectedLayer != null);
            Contract.Requires(connectedLayer.Layer is ActivationLayer);

            Function = ((ActivationLayer)connectedLayer.Layer).Function;
        } 
コード例 #7
0
        private void Reading(object sender, EventArgs e)
        {
            // Чтение таблицы
            layer = new ConnectedLayer();
            string commandsel = "Select [Тип самолёта],[Класс самолёта] from dbo.Самолёт";

            dataGridView1.DataSource = layer.Read(commandsel).Tables[0];
        }
コード例 #8
0
        protected LayerBackwardCompute(LayerForwardCompute forwardCompute, ConnectedLayer connectedLayer)
        {
            Contract.Requires(forwardCompute != null);
            Contract.Requires(connectedLayer != null);
            Contract.Requires((connectedLayer.StructuralElementFlags & NNStructuralElement.BackwardImplementation) != 0 &&
                (connectedLayer.StructuralElementFlags & NNStructuralElement.GradientInformation) != 0);

            Init(forwardCompute, connectedLayer);
        }
コード例 #9
0
        public ActivationLayerBackwardCompute(ActivationLayerForwardCompute forwardCompute, ConnectedLayer connectedLayer)
            : base(forwardCompute, connectedLayer)
        {
            Contract.Requires(forwardCompute != null);
            Contract.Requires(connectedLayer != null);
            Contract.Requires((connectedLayer.StructuralElementFlags & NNStructuralElement.BackwardImplementation) != 0 &&
                (connectedLayer.StructuralElementFlags & NNStructuralElement.GradientInformation) != 0);

            Function = forwardCompute.Function;
        } 
コード例 #10
0
        private void insertToolStripMenuItem_Click(object sender, EventArgs e)
        {
            connlayer = new ConnectedLayer();
            dc        = new DbDataContext <Airplane>(connlayer.connectionString);
            Airplane airplane = new Airplane {
                Type_Airplane = $"{textBox1.Text}", Class_Airplane = $"{textBox2.Text}"
            };

            dc.Insert(ref airplane);
        }
コード例 #11
0
        private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            connlayer = new ConnectedLayer();
            dc        = new DbDataContext <Airplane>(connlayer.connectionString);

            Airplane airplane = new Airplane {
                Id = (int)dataGridView1.CurrentCell.Value
            };

            dc.Delete(airplane.Id);
        }
コード例 #12
0
        internal void InitializeAlgo(BufferAllocator allocator, LearningRule rule, ConnectedLayer[] connectedLayers, CPUNNInitParameters initPars)
        {
            Contract.Requires(rule != null);
            Contract.Requires(connectedLayers != null);
            Contract.Requires(connectedLayers.Length > 0);
            Contract.Requires(initPars != null);

            Rule = rule;
            ConnectedLayers = connectedLayers;
            RunParallel = initPars.RunParallel;
            Ininitalize(allocator);
        }
コード例 #13
0
        private void readToolStripMenuItem_Click(object sender, EventArgs e)
        {
            connlayer = new ConnectedLayer();
            dc        = new DbDataContext <Airplane>(connlayer.connectionString);
            Airplane airplane = new Airplane();

            var query = from u in dc.GetTable <Airplane>()
                        where u.Id > 5
                        select u;

            dataGridView1.DataSource = query.ToList();
            dc.SubmitChanges();
        }
コード例 #14
0
        private void Init(LayerForwardCompute forwardCompute, ConnectedLayer connectedLayer)
        {
            RunParallel = forwardCompute.RunParallel;

            ForwardCompute = forwardCompute;

            InitLowerErrorValueAccessItems(connectedLayer);
            ErrorBuffer = connectedLayer.ErrorBuffer;
            GradientBuffers = connectedLayer.GradientBuffers;
            GradientSumBuffers = connectedLayer.GradientSumBuffers;
            BiasGradientValueIndex = connectedLayer.BiasGradientValueIndex;
            BiasGradientSumValueIndex = connectedLayer.BiasGradientSumValueIndex;
            OutputErrorBuffer = connectedLayer.OutputErrorBuffer;
        }
コード例 #15
0
        private void Button1_Click(object sender, EventArgs e)
        {
            string table1 = "Рейс";
            string table2 = "Страны";


            connlayer = new ConnectedLayer();
            string flightscmd   = "SELECT id_Рейса,id_Страны,[Дата и время вылета],[Дата и время прибытия],[Город вылета],[Город прибытия] From Рейс";
            string countriescmd = "SELECT id_Страны,[Страна вылета],[Страна назначения],[Разные страны],[Входит ли в ООН] From Страны";

            connlayer.Read(flightscmd, countriescmd, table1, table2);

            dataGridView1.DataSource = connlayer.datatable1;
            dataGridView2.DataSource = connlayer.datatable2;
        }
コード例 #16
0
        private void InitLowerErrorValueAccessItems(ConnectedLayer connectedLayer)
        {
            if (connectedLayer.WeightedOutputErrorBuffers == null) return;

            var items = new LinkedList<ErrorValueAccess>();

            for (int outputErrorBufferIndex = 0; outputErrorBufferIndex < connectedLayer.WeightedOutputErrorBuffers.Length; outputErrorBufferIndex++)
            {
                var weightedOutputErrorBuffer = connectedLayer.WeightedOutputErrorBuffers[outputErrorBufferIndex];
                int wibValueBufferSize = weightedOutputErrorBuffer.ValueBuffer.Size;
                items.AddLast(
                    new ErrorValueAccess(
                        weightedOutputErrorBuffer.ValueBuffer.Size,
                        weightedOutputErrorBuffer.ValueBuffer.MinValue,
                        weightedOutputErrorBuffer.WeightBuffer.MinValue));
            }

            LowerErrorValueAccessItems = items.ToArray();
        }
コード例 #17
0
        public WeightRelatedValues(BufferAllocator allocator, ConnectedLayer[] layers)
        {
            Contract.Requires(allocator != null);
            Contract.Requires(layers != null);
            Contract.Requires(layers.Length > 0);

            buffers = new IntRange[layers.Length][];
            for (int layerIndex = 0; layerIndex < layers.Length; layerIndex++)
            {
                var wib = layers[layerIndex].WeightedInputBuffers;

                buffers[layerIndex] = new IntRange[wib.Length];
                for (int buffIndex = 0; buffIndex < wib.Length; buffIndex++)
                {
                    buffers[layerIndex][buffIndex] = allocator.Alloc(wib[buffIndex].WeightBuffer.Size);
                }
            }
            this.layers = layers;
        }
コード例 #18
0
 protected LayerForwardCompute(ConnectedLayer connectedLayer)
     : base(connectedLayer)
 {
     Contract.Requires(connectedLayer != null);
 }
コード例 #19
0
 protected internal override LayerBackwardCompute CreateBackwardCompute(ConnectedLayer connectedLayer)
 {
     return new ActivationLayerBackwardCompute(this, connectedLayer);
 } 
コード例 #20
0
        private LayerForwardCompute CreateLayerForwardCompute(ConnectedLayer clayer, CPUNNInitParameters initPars)
        {
            LayerForwardCompute result = null;
            if (clayer.Layer is ActivationLayer)
            {
                result = new ActivationLayerForwardCompute(clayer);
            }
            
            if (result == null) throw new InvalidOperationException("Cannot build CPU Neural Network, because '" + clayer.Layer.GetType().FullName + "' layer type is unknown.");

            result.RunParallel = initPars.RunParallel;

            return result;
        }
コード例 #21
0
        protected internal virtual LayerBackwardCompute CreateBackwardCompute(ConnectedLayer connectedLayer)
        {
            Contract.Requires(connectedLayer != null);

            throw new InvalidOperationException("Backward computation is not supported.");
        }
コード例 #22
0
        private void InitInputValueAccessItems(ConnectedLayer connectedLayer)
        {
            int count = connectedLayer.WeightedInputBuffers.Length;
            var items = new InputValueAccess[count];

            for (int inputBufferIndex = 0; inputBufferIndex < count; inputBufferIndex++)
            {
                var weightedInputBuffer = connectedLayer.WeightedInputBuffers[inputBufferIndex];
                int wibValueBufferSize = weightedInputBuffer.ValueBuffer.Size;
                items[inputBufferIndex] =
                    new InputValueAccess(
                        weightedInputBuffer.ValueBuffer.Size,
                        weightedInputBuffer.ValueBuffer.MinValue,
                        weightedInputBuffer.WeightBuffer.MinValue,
                        connectedLayer.InnerItarationInputValueStacks != null ? connectedLayer.InnerItarationInputValueStacks[inputBufferIndex] : null);
            }

            InputValueAccessItems = items;
        }