public async Task <OnnxModelOutput> EvaluateAsync(OnnxModelInput input)
        {
            OnnxModelOutput             output  = new OnnxModelOutput();
            LearningModelBindingPreview binding = new LearningModelBindingPreview(learningModel);

            binding.Bind("data", input.data);
            binding.Bind("classLabel", output.classLabel);
            binding.Bind("loss", output.Loss);
            LearningModelEvaluationResultPreview evalResult = await learningModel.EvaluateAsync(binding, string.Empty);

            return(output);
        }
        public async Task <IReadOnlyList <ImageClassification> > ClassifyImage(byte[] image)
        {
            if (!IsInitialized)
            {
                await Init();
            }

            var input = await OnnxModelInput.CreateFrom(image);

            var results = await onnxmodel.EvaluateAsync(input);

            return(results.Loss
                   .Where(label => label.Value > 0.85)
                   .Select(label => new ImageClassification(label.Key, label.Value)).ToList());
        }