ML.NET---.NET下的機器學習引擎(簡介)

ML.NET 是一個跨平臺的開源機器學習框架,它能夠使 .NET 開發人員更容易的開展機器學習工做.html

ML.NET 容許 .NET 開發人員開發本身的模型,即便沒有機器學習的開發經驗,也能夠很容易的將自定義的機器學習模型嵌入到其應用程序中。git

ML.NET 最初是在 microsoft research 中被開發的, 在過去十年裏它已經發展成爲一個重要的框架, 並在 microsoft 的許多產品組 (如 windows、bing、powerpoint、excel 等) 中被普遍使用。github

ML.NET 支持機器學習任務, 如分類 (例如: 支持文本分類、情緒分析) 和迴歸 (例如, 價格預測)。windows

安裝

NuGet Status

ML.NET 使用 .NET Core, 能夠使其運行在 Windows, Linux, and macOS 平臺下, Windows 平臺下使用 .NET Framework. 64 位框架 。 32 位 只能夠在 Windows 平臺下獲取支持,可是 TensorFlow, LightGBM, ONNX 等相關功能不能使用。api

當前版本是0.9 版本信息app

首先,確保你已經安裝 .NET Core 2.1 或者更新的版本. ML.NET 也能夠工做在 .NET Framework 4.6.1 或者更新的版本, 可是推薦使用 4.7.2 或者更新的版本.框架

一旦你建立好了一個APP,你就能夠安裝經過.NET Core CLI或者NuGet安裝ML.NET:機器學習

dotnet add package Microsoft.ML

經過 NuGet 包管理器安裝:學習

Install-Package Microsoft.ML

你也能夠在Visual Studio的NuGet管理器中安裝Microsoft.ML包。ui

建立

從源碼建立 ML.NET 請訪問 開發者嚮導.

codecov

Debug Release
Linux x64-debug x64-release
macOS x64-debug x64-release
Windows x64 x64-debug x64-release
Windows x86 Build Status Build Status
Core 3.0 Build Status Build Status

示例

下面是一個經過文本數據來進行預測情緒的示例。

var mlContext = new MLContext();
var reader = mlContext.Data.TextReader(new TextLoader.Arguments
        {
        Column = new[] {
            new TextLoader.Column("SentimentText", DataKind.Text, 1),
            new TextLoader.Column("Label", DataKind.Bool, 0),
        },
        HasHeader = true,
        Separator = ","
});
var data = reader.Read(dataPath);
var learningPipeline = mlContext.Transforms.Text.FeaturizeText("SentimentText", "Features")
        .Append(mlContext.BinaryClassification.Trainers.FastTree());
var model = learningPipeline.Fit(data);

如今經過上面訓練的模型進行情緒預測

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

這裏有一本 cookbook 教你怎樣在不一樣的場景中使用這些API 點擊這裏學習.

API 文檔

參見 ML.NET API 參考文檔.

示例

ML.NET 示例庫 你能夠在這裏學習具體的使用場景和方法。

License

ML.NET 遵照如下許可 MIT license.

相關文章
相關標籤/搜索