ML.NET

オープンソースでクロスプラットフォームの機械学習フレームワーク

作業を開始 Model Builder

Windows、Linux、macOS でサポートされています

//Step 1. Create an ML Context
var ctx = new MLContext();

//Step 2. Read in the input data from a text file for model training
IDataView trainingData = ctx.Data
    .LoadFromTextFile<ModelInput>(dataPath, hasHeader: true);

//Step 3. Build your data processing and training pipeline
var pipeline = ctx.Transforms.Text
    .FeaturizeText("Features", nameof(SentimentIssue.Text))
    .Append(ctx.BinaryClassification.Trainers
        .LbfgsLogisticRegression("Label", "Features"));

//Step 4. Train your model
ITransformer trainedModel = pipeline.Fit(trainingData);

//Step 5. Make predictions using your trained model
var predictionEngine = ctx.Model
    .CreatePredictionEngine<ModelInput, ModelOutput>(trainedModel);

var sampleStatement = new ModelInput() { Text = "This is a horrible movie" };

var prediction = predictionEngine.Predict(sampleStatement);
//Step 1. Create an ML Context
let ctx = MLContext()

//Step 2. Read in the input data from a text file
let trainingData = ctx.Data.LoadFromTextFile<ModelInput>(dataPath, hasHeader=true)

//Step 3. Build your data processing and training pipeline
let scope = ctx.BinaryClassification.Trainers.LbfgsLogisticRegression("Label", "Features")
let pipeline = ctx.Transforms.Text.FeaturizeText("Features", "Text").Append(scope)

//Step 4. Train your model
let trainedModel = pipeline.Fit(trainingData)

//Step 5. Make predictions using your model
let predictionEngine = ctx.Model.CreatePredictionEngine<ModelInput, ModelOutput>(trainedModel)

let sampleStatement = { Label = false; Text = "This is a horrible movie" }

let prediction = predictionEngine.Predict(sampleStatement)

.NET 開発者向けに構築

ML.NET を使用すると、.NET エコシステムを終了しなくても、C# または F # を使用してカスタム ML モデルを作成できます。

ML.NET を使用すると、.NET 開発者として既に持っているすべての知識、スキル、コード、ライブラリを再利用できるため、機械学習を Web、モバイル、デスクトップ、ゲーム、および IoT アプリに簡単に統合できます。

専門情報: ML.NET とは

AutoML を使用してカスタム ML を簡単に作成

ML.NET には Model Builder (シンプルな UI ツール) と ML.NET CLI が用意されており、カスタム ML モデルを非常に簡単にビルドすることができます。

これらのツールは、機械学習のシナリオに合わせて最適なモデルをビルドするプロセスを自動化する、自動機械学習 (AutoML) と呼ばれる最先端の技術を使用しています。データを読み込むだけで、あとは AutoML が残りのモデル構築プロセスを実行してくれます。

ML.NET Model Builder を探索する
ML.NET Model Builder は、Visual Studio で機械学習モデルを構築するためのビジュアル インターフェイスを提供します。

TensorFlow & などを使用した拡張

ML.NET は、その他の一般的な ML フレームワーク (TensorFlow、ONNX、Infer.NET など) を使用できるようにするために拡張可能なプラットフォームとして設計されており、より多くのマシン学習シナリオ (イメージ分類、オブジェクト検出など) にアクセスできます。

Amazon レビュー データセットの約 900 MB に関するトレーニング ML.NET で、精度が 93% のモデル、92% の scikit-learn、85% の H2O を生成しました。ML.NET モデルのトレーニングとテストに 11 分かかり、scikit-learn に 66 分かかり、H2O に 105 分かかりました。

ML.NET を使った Microsoft での機械学習 論文を含む Microsoft から提供されるデータ。Amazon レビュー データセットの約 900 MB を使用したセンチメント分析の結果。精度が高く、ランタイムが低い方が優れています。

高パフォーマンスと正確性

9 GB の Amazon レビュー データ セットを使用 ML.NET、95% の精度でセンチメント分析モデルをトレーニングしました。他の一般的な機械学習フレームワークでは、メモリ エラーのため、データセットを処理できませんでした。すべてのフレームワークがトレーニングを完了できるようデータセットの 10% をトレーニングする場合、ML.NET が最も高い速度と正確さを示していました。

パフォーマンス評価では、クリックスルー率予測やフライト遅延予測など、他の機械学習シナリオと同様の結果が見つかりました。

ML.NET パフォーマンス ペーパーを読む

準備はできましたか?

このステップ バイ ステップ チュートリアルは、あなたのコンピューターで ML.NET を実行するのに役立ちます。

作業を開始