当前位置: 首页 > 编程笔记 >

C#使用ML.Net完成人工智能预测

公孙霖
2023-03-14
本文向大家介绍C#使用ML.Net完成人工智能预测,包括了C#使用ML.Net完成人工智能预测的使用技巧和注意事项,需要的朋友参考一下

前言

Visual Studio2019 Preview中提供了图形界面的ML.Net,所以,只要我们安装Visual Studio2019 Preview就能简单的使用ML.Net了,因为我的电脑已经安装了Visual Studio2019,所以我不需要重头安装Visual Studio2019 Preview,只要更新即可。

安装

首先找到Visual Studio Installer安装包,如下图。

运行,然后选择如下:

创建项目

我们创建一下新项目,如下图:

然后选择。

然后添加机器学习。

点击机器学习时,如果我们没有开启MLNET模型创建功能,则会弹出提示,让我们开启。

当然我们也可以手动在选项中开启,如下图:

点击【机器学习】之后会有图形界面,如下图:

然后我们可以看到,它提供了一些方案,如语义识别,图像识别,数值预测等。

我们选择数值预测,然后进入下一步,如下图:

在环境页面,选择本地训练,然后点击下一步获取数据,如下图:

这里需要选择一个数据源,我们去官网上下载一下可用的测试数据源。

这里我们下载【产品销售数据】。

方案 示例 数据 Label 特征
分类 预测销售异常 产品销售数据 产品销售额 月份
  预测网站评论的情绪 网站评论数据 标签(负面情绪为 0,正面情绪为 1) 评论、年份
  预测信用卡欺诈交易 信用卡数据 类(存在欺诈性为 1,否则为 0) 金额,V1-V28(匿名处理后的特征)
  预测 GitHub 存储库中的问题类型 GitHub 问题数据 区域 标题、描述
值预测 预测出租车费用价格 出租车费数据 车费 行程时间、距离
图像分类 预测花卉的类别 花卉图像 花卉类型:雏菊、蒲公英、玫瑰、向日葵、郁金香 图像数据本身
建议 预测他人喜欢的电影 电影评分 用户、电影 评级

选择完预测数据文件,我们配置要预测的列,然后点击训练,如下图:

训练界面如下:

点击训练,大约2分钟,训练完成,输出界面会输出如下内容。

训练完成后,如下图:

我们点击评估,如下图:

如上图,预测到1月销售数据是262.8。

然后点击代码,将ML.Net代码添加到解决方案中,如下图:

添加ML.Net代码后,如下图:

生成的MLNetConsoleML.ConsoleApp项目是入口项目,Main函数如下:

static void Main(string[] args)
{
  // Create single instance of sample data from first line of dataset for model input
  ModelInput sampleData = new ModelInput()
  {
    Month = @"1-Jan",
  };
​
  // Make a single prediction on the sample data and print results
  var predictionResult = ConsumeModel.Predict(sampleData);
​
  Console.WriteLine("Using model to make single prediction -- Comparing actual ProductSales with predicted ProductSales from sample data...\n\n");
  Console.WriteLine($"Month: {sampleData.Month}");
  Console.WriteLine($"\n\nPredicted ProductSales: {predictionResult.Score}\n\n");
  Console.WriteLine("=============== End of process, hit any key to finish ===============");
  Console.ReadKey();
}

可以看到,我们预测的是Month = @"1-Jan"。

再打开ModelBuilder文件,可以看到,这里一开始就配置了数据地址和模型地址,如下图:

到这里,我们ML.Net就算初步学会使用了,下面,再提供一个官网GIF图片供大家参考。

训练时长

模型生成器使用 AutoML 浏览多个模型,以查找性能最佳的模型。

更长的训练周期允许 AutoML 通过更多设置来浏览更多模型。

下表汇总了在本地计算机上为一组示例数据集获取良好性能所花的平均时间。

数据集大小 训练的平均时间
0 - 10 MB 10 秒
10 - 100 MB 10 分钟
100 - 500 MB 30 分钟
500 - 1 GB 60 分钟
1 GB 以上 3 小时以上

----------------------------------------------------------------------------------------------------

参考网址:https://docs.microsoft.com/zh-cn/dotnet/machine-learning/automate-training-with-model-builder

----------------------------------------------------------------------------------------------------

到此C#使用ML.Net完成人工智能预测的基本使用已经介绍完了。

代码已经传到Github上了,欢迎大家下载。

Github地址:https://github.com/kiba518/MLNetConsole

到此这篇关于C#使用ML.Net完成人工智能预测的文章就介绍到这了,更多相关C#人工智能预测内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!

 类似资料:
  • Kubernetes 在人工智能领域的应用。 TBD kubeflow - Kubernetes 机器学习工具箱

  • LLamaIndex如何使用 llamaIndex是目前与LangChain类似的大模型拓展工具,可以用来交互LLM并做向量数据搜索等等,其应该如何使用?

  • 人工智能是机器所展示的智能,与人类展示的智能形成鲜明对比。本教程介绍了人工智能等各个领域的基本概念,如人工神经网络,自然语言处理,机器学习,深度学习,遗传算法等,以及它在 Python 中的实现。

  • 人工智能在当今社会中具有各种应用。它已成为当今时代的必要条件,因为它可以在多个行业中以有效的方式解决复杂问题,例如医疗保健,娱乐,金融,教育等。AI使我们的日常生活更加舒适和快速。 以下是一些应用人工智能的领域: 1. AI在天文学中应用 人工智能对于解决复杂的宇宙问题非常有用。人工智能技术有助于理解宇宙,例如它的工作原理,起源等。 2. AI在医疗保健领域应用 在过去的五到十年中,人工智能对医疗

  • 人工智能包括机器和特殊计算机系统对人类智能的模拟过程。人工智能的例子包括学习,推理和自我纠正。AI的应用包括语音识别,专家系统,图像识别和机器视觉。 机器学习是人工智能的一个分支,它处理可以学习任何新数据和数据模式的系统和算法。 让我们关注下面提到的维恩图,以了解机器学习和深度学习概念。 机器学习包括机器学习的一部分,深度学习是机器学习的一部分。遵循机器学习概念的程序的能力是改善其观察数据的性能。

  • 主要内容:什么是代理?,智能代理,理性代理:,AI代理的结构,PEAS代表AI系统可以定义为理性代理及其环境的研究。代理通过传感器感知环境并通过执行器对其环境起作用。AI代理可以具有知识,信仰,意图等心理属性。 什么是代理? 代理可以是通过传感器感知环境并通过执行器对该环境起作用的任何事物。代理在感知,思考和行动的循环中运行。代理可以是: 人体代理:人类代理人的眼睛,耳朵和其他器官,用于传感器和手,腿,致动器的声道工作。 机器人代理:机器人代理可以是摄像头,红外测距仪,