C#调用ML.NET(机器学习、人工智能预测)

我使用的VS2019版本,具体安装过程就不赘述了

 这边我已经安装完了,就不演示了,安装过程可以自行。

后面我来展示下如何引用C#ML.NET

1 创建项目

首先创建C#控制台项目

点击下一步就完成了,初始项目的创建 

 

这个是建立完之后的初始项目

2 数据准备

 在使用ML.NET的时候需要准备好数据(数据可以从文件/数据库中获取)

我这边演示从文件中建立好,本次预测的销售额度

前期个人学习比较推荐使用EXCEL文件存入标本数据 (需要转CSV文件)

这是事先准备好的数据 (大家需要自行输入哦)

3 机器学习

3.1 添加机器学习

 

 本次是对值的预测,所以选择值预测

可以直接点数据,进行数据的选择

 他文件支持从数据库获取值,但是初学者可以使用预先创建的值(本次使用的就是之前2 准备的数据

 

在你选择完之后,点击训练

 

源于官网提供的训练建议

 

 点击开始训练

 

点击评估,进入下一步

 

在输入数据之后,我们可以获取到我们想要预测的数据(基于大量的数据) 

 

之后点击添加项目,他就会添加到你的项目中过去 

 

这是一个完整的项目

 4 资源调用

很多人学习了机器学习,结果拿不到数据,下面来演示

 

 

在主项目的Program.cs的Main函数下

5 写数据调用

using ConsoleApp1ML.Model;
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            // Add input data
            var input = new ModelInput();
            input.Date = "2022/01/01";
            ModelOutput resulttotal = ConsumeModel.Predict(input);
            Console.WriteLine(resulttotal.Score.ToString());
            Console.Read();
        }
    }
}

 input.Date(可修改):你在查看类下的方法就可以看到,需要赋值,其余可以用

6 结果

 

 

 

  • 0
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用 ML.NET 和 TensorFlow 实现问答机器人的示例代码: ```csharp using System; using System.Collections.Generic; using System.IO; using Microsoft.ML; using Microsoft.ML.Data; using TensorFlow; namespace QABot { class Program { static void Main(string[] args) { // 加载数据 var dataView = LoadData("qa_data.txt"); // 定义模型架构 var pipeline = new LearningPipeline(); pipeline.Add(new TextFeaturizer("Features", "Question")); pipeline.Add(new TensorFlowTransformer { ModelLocation = "qa_model.pb", Inputs = new[] { "Features" }, Outputs = new[] { "Score" } }); pipeline.Add(new ColumnCopier(("Score", "Prediction"))); pipeline.Add(new PredictedLabelColumnOriginalValueConverter { PredictedLabelColumn = "Prediction", OriginalLabelColumn = "Answer", }); // 训练模型 var model = pipeline.Train<QAData, QAPrediction>(dataView); // 使用模型进行预测 var prediction = model.Predict(new QAData { Question = "What is your name?" }); Console.WriteLine($"Q: {prediction.Question}"); Console.WriteLine($"A: {prediction.Answer}"); Console.ReadKey(); } private static IDataView LoadData(string path) { var lines = File.ReadAllLines(path); var data = new List<QAData>(); foreach (var line in lines) { var parts = line.Split('\t'); data.Add(new QAData { Question = parts[0], Answer = parts[1] }); } var context = new MLContext(); return context.Data.LoadFromEnumerable(data); } } public class QAData { [Column("0")] public string Question { get; set; } [Column("1")] public string Answer { get; set; } } public class QAPrediction { [ColumnName("Answer")] public string Answer { get; set; } [ColumnName("Prediction")] public float[] Score { get; set; } [ColumnName("Features")] public float[] Features { get; set; } } } ``` 上述代码中,我们首先加载问答数据,然后使用 ML.NET 定义模型架构,包括文本特征提取、使用 TensorFlow 进行预测等步骤。接着,我们使用数据训练模型,并使用模型进行预测。 需要注意的是,上述代码中的 `qa_data.txt` 和 `qa_model.pb` 文件需要根据实际情况进行替换。同时,需要将 TensorFlow 模型转换为 ML.NET 模型,可以使用以下代码: ```csharp var tfModel = File.ReadAllBytes("qa_model.pb"); var mlModel = TensorFlowUtils.LoadTensorFlowModel(new TFModel { Model = tfModel }); mlModel.Save("qa_model.zip"); ``` 以上代码将 TensorFlow 模型转换为 ML.NET 模型,并将其保存为 `qa_model.zip` 文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值