Esempio n. 1
0
        private void button1_Click(object sender, EventArgs e)
        {
            int    No_of_folds = int.Parse(textBox1.Text);
            double eta_start   = double.Parse(textBox2.Text);
            double eta_stop    = double.Parse(textBox3.Text);
            double eta_step    = double.Parse(textBox4.Text);
            int    epoch_start = int.Parse(textBox5.Text);
            int    epoch_stop  = int.Parse(textBox6.Text);
            int    epoch_step  = int.Parse(textBox7.Text);

            Console.WriteLine(No_of_folds);
            Console.WriteLine(eta_start);
            Console.WriteLine(eta_stop);
            Console.WriteLine(eta_step);
            Console.WriteLine(epoch_start);
            Console.WriteLine(epoch_stop);
            Console.WriteLine(epoch_step);

            this.Hide();
            Console.WriteLine("Optimising...");
            OptimizeParameters optparam = new OptimizeParameters();

            optparam.Set(eta_start, eta_stop, eta_step, epoch_start, epoch_stop, epoch_step);
            optparam.CrossValidate(ld.Data, ld.Targets, No_of_folds);
            Console.WriteLine("Optimal parameters\nEta : {0}\tEpochs: {1}", optparam.eta, optparam.num_epochs);


            perc = new Perceptron();
            perc.Train(ld.Data, ld.Targets, 1, optparam.num_epochs, optparam.eta);

            MessageBox.Show("Done");
            this.Close();
        }
        public async Task <ResultDetails <OptimizeResult> > IndexOptimizeAsync(string index, OptimizeParameters optimizeParameters)
        {
            if (optimizeParameters == null)
            {
                optimizeParameters = new OptimizeParameters();
            }

            var elasticsearchUrlForPostRequest = string.Format("{0}/{1}/_optimize{2}", _connectionString, index, optimizeParameters.GetOptimizeParameters());
            var uri = new Uri(elasticsearchUrlForPostRequest);

            _traceProvider.Trace(TraceEventType.Verbose, "IndexOptimizeAsync Request POST with url: {0}", uri.ToString());

            var resultDetails = new ResultDetails <OptimizeResult> {
                Status = HttpStatusCode.InternalServerError
            };

            try
            {
                var request  = new HttpRequestMessage(HttpMethod.Post, uri);
                var response = await _client.SendAsync(request, _cancellationTokenSource.Token).ConfigureAwait(false);

                resultDetails.RequestUrl = uri.OriginalString;

                resultDetails.Status = response.StatusCode;
                if (response.StatusCode != HttpStatusCode.OK)
                {
                    if (response.StatusCode == HttpStatusCode.BadRequest)
                    {
                        var errorInfo = await response.Content.ReadAsStringAsync().ConfigureAwait(false);

                        resultDetails.Description = errorInfo;
                        throw new ElasticsearchCrudException("IndexOptimizeAsync: HttpStatusCode.BadRequest: RoutingMissingException, adding the parent Id if this is a child item...");
                    }
                    if (response.StatusCode == HttpStatusCode.NotFound)
                    {
                        throw new ElasticsearchCrudException("IndexOptimizeAsync: HttpStatusCode.NotFound index does not exist");
                    }

                    _traceProvider.Trace(TraceEventType.Information, "IndexOptimizeAsync:  response status code: {0}, {1}", response.StatusCode, response.ReasonPhrase);
                }
                else
                {
                    var responseString = await response.Content.ReadAsStringAsync().ConfigureAwait(true);

                    var responseObject = JObject.Parse(responseString);
                    resultDetails.PayloadResult = responseObject.ToObject <OptimizeResult>();
                }

                return(resultDetails);
            }
            catch (OperationCanceledException oex)
            {
                _traceProvider.Trace(TraceEventType.Verbose, oex, "IndexOptimizeAsync:  Get Request OperationCanceledException: {0}", oex.Message);
                return(resultDetails);
            }
        }
        public void OptimizeParametersPefaultSetAll()
        {
            var optimizeParameters = new OptimizeParameters
            {
                Flush                 = false,
                NumberOfShards        = 4,
                OnlyExpungeDeletesSet = true,
                WaitForMerge          = false
            };

            Assert.Equal(optimizeParameters.GetOptimizeParameters(), "?max_num_segments=4&only_expunge_deletes=true&flush=false&wait_for_merge=false");
        }
        public void OptimizeParametersPefaultTest()
        {
            var optimizeParameters = new OptimizeParameters();

            Assert.Empty(optimizeParameters.GetOptimizeParameters());
        }
        public ResultDetails <OptimizeResult> IndexOptimize(string index, OptimizeParameters optimizeParameters)
        {
            var syncExecutor = new SyncExecute(_traceProvider);

            return(syncExecutor.ExecuteResultDetails(() => IndexOptimizeAsync(index, optimizeParameters)));
        }