Skip to content

yuanzhongqiao/machinelearning

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

.NET 机器学习

ML.NET是 .NET 的跨平台开源机器学习 (ML) 框架。

ML.NET 允许开发人员在其 .NET 应用程序中轻松构建、训练、部署和使用自定义模型,而无需具备开发机器学习模型的专业知识或使用 Python 或 R 等其他编程语言的经验。该框架提供从文件和数据加载的数据。数据库,支持数据转换,并包含许多机器学习算法。

使用 ML.NET,您可以针对各种场景训练模型,例如分类、预测和异常检测。

您还可以在 ML.NET 中使用 TensorFlow 和 ONNX 模型,这使得框架更具可扩展性并扩展了支持的场景数量。

机器学习和 ML.NET 入门

路线图

查看 ML.NET 的路线图,了解团队计划在明年开展哪些工作。

ML.NET 支持的操作系统和处理器架构

ML.NET 在使用 .NET Core 的 Windows、Linux 和 macOS 上运行,或在使用 .NET Framework 的 Windows 上运行。

ML.NET 还可以在 ARM64、Apple M1 和 Blazor Web Assembly 上运行。然而,也有一些限制

所有平台均支持 64 位。Windows 支持 32 位,但 TensorFlow 和 LightGBM 相关功能除外。

ML.NET NuGet 包状态

NuGet 状态

发行说明

查看发行说明以了解新内容。您还可以阅读博客文章,了解有关每个版本的更多详细信息。

使用 ML.NET 包

首先,确保您已安装.NET Core 2.1或更高版本。ML.NET 也适用于 .NET Framework 4.6.1 或更高版本,但建议使用 4.7.2 或更高版本。

拥有应用程序后,您可以使用以下命令从 .NET Core CLI 安装 ML.NET NuGet 包:

dotnet add package Microsoft.ML

或从 NuGet 包管理器:

Install-Package Microsoft.ML

或者,您可以从 Visual Studio 的 NuGet 包管理器中或通过Paket添加 Microsoft.ML 包。

我们的 Azure DevOps 源中还提供了该项目的每日 NuGet 构建:

https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-libraries/nuget/v3/index.json

构建 ML.NET(针对构建 ML.NET 开源代码的贡献者)

要从源代码构建 ML.NET,请访问我们的开发人员指南

代码科夫

调试 发布
中央操作系统 构建状态 构建状态
乌班图 构建状态 构建状态
苹果系统 构建状态 构建状态
Windows x64 构建状态 构建状态
Windows完整框架 构建状态 构建状态
Windows x86 构建状态 构建状态
Windows NetCore3.1 构建状态 构建状态

发布流程和版本控制

ML.NET 的主要版本每年随主要 .NET 版本一起发布一次,从 2021 年 11 月的 ML.NET 1.7 和 .NET 6 开始,然后是 ML.NET 2.0 和 .NET 7,等等。我们将维护版本分支可选择以与 .NET 服务相同的节奏为 ML.NET 提供错误修复和/或次要功能。

查看发行说明以了解所有过去的 ML.NET 版本。

贡献

我们欢迎贡献!请查看我们的贡献指南

社区

该项目采用了贡献者契约定义的行为准则,以阐明我们社区的预期行为。有关详细信息,请参阅.NET 基金会行为准则

代码示例

以下是用于训练模型以根据文本样本预测情绪的代码片段。您可以在示例存储库中找到完整的示例。

var dataPath = "sentiment.csv";
var mlContext = new MLContext();
var loader = mlContext.Data.CreateTextLoader(new[]
    {
        new TextLoader.Column("SentimentText", DataKind.String, 1),
        new TextLoader.Column("Label", DataKind.Boolean, 0),
    },
    hasHeader: true,
    separatorChar: ',');
var data = loader.Load(dataPath);
var learningPipeline = mlContext.Transforms.Text.FeaturizeText("Features", "SentimentText")
        .Append(mlContext.BinaryClassification.Trainers.FastTree());
var model = learningPipeline.Fit(data);

现在我们可以从模型中做出推断(预测):

var predictionEngine = mlContext.Model.CreatePredictionEngine<SentimentData, SentimentPrediction>(model);
var prediction = predictionEngine.Predict(new SentimentData
{
    SentimentText = "Today is a great day!"
});
Console.WriteLine("prediction: " + prediction.Prediction);

执照

ML.NET 根据MIT 许可证获得许可,并且可以免费用于商业用途。

.NET基金会

ML.NET 是.NET 基金会的一部分。

About

.NET 的开源 机器学习框架。

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 96.9%
  • C++ 1.4%
  • PowerShell 0.8%
  • Shell 0.6%
  • CMake 0.2%
  • C 0.1%