ML.NET机器学习框架基本流程介绍
给大家分享一个.NET开源、免费、跨平台(支持Windows、Linux、macOS多个操作系统)的机器学习框架:ML.NET。并且本文将会带你快速使用ML.NET训练一个属于自己的图像分类模型,对图像进行分类。
ML.NET框架介绍
ML.NET 允许开发人员在其 .NET 应用程序中轻松构建、训练、部署和使用自定义模型,而无需具备开发机器学习模型的专业知识或使用 Python 或 R 等其他编程语言的经验。该框架提供从文件和数据加载的数据。数据库,支持数据转换,并包含许多机器学习算法。
AI和机器学习有什么区别?
AI 是一个计算分支,涉及训练计算机执行通常需要人类智能的操作。机器学习是 AI 的一部分,它涉及计算机从数据中学习和在数据中发现模式,以便能够自行对新数据进行预测。
ML.NET支持的.NET框架
目前ML.NET支持.NET、.NET Core (版本 2.0 及更高版本)和 .NET Framework (版本 4.6.1 及更高版本)。
框架源代码
ML.NET官方提供的使用示例
-
https://github.com/dotnet/machinelearning-samples
ML.NET使用环境安装
安装本机.NET环境
首先需要准备好本机的.NET开发环境:
-
https://dotnet.microsoft.com/zh-cn/download
Visual Studio环境配置
选择.NET 桌面开发工作负荷以及可选的 ML.NET Model Builder 组件。
ML.NET Model Builder 组件介绍:提供易于理解的可视界面,用于在 Visual Studio 内生成、训练和部署自定义机器学习模型。
一、使用Visual Studio的Model Builder训练和使用模型
Visual Studio默认安装了Model Builder插件,可以很快地进行一些通用模型类型的训练和部署,提高接入机器学习的开发效率
1.1、新建模型
通过非常简单地 右键项目-添加-机器学习模型
1.2、选择模型
ModelBuilder中提供了集中常用的模型类型以供开发者使用,开发者可以通过这些类别的模型快速接入,并且训练自己的数据,本节内容将会使用计算机视觉中的”图像分类“进行演示
1.3、选择训练环境
接下来要选择训练的环境,提供了CPU/GPU/Azure云三种方式训练,这里为了简单演示,我使用了CPU训练,如果数据量大且复杂的请选择GPU,并且提前安装CUDA、cuDNN
1.4、添加训练数据
我从搜索引擎中,搜集到了一系列”奥特曼“的图片(我相信不是所有人都可以认出各个时代的各个奥特曼 哈哈哈)
然后将这些图片进行了文件夹分类,导入到ModelBuilder中,如下:
然后开始训练
最后评估
基本是这样一个流程。