ML.NET
Кроссплатформенная платформа машинного обучения с открытым исходным кодом.
Поддерживается в 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 вы можете создавать собственные модели машинного обучения с помощью C# или F#, не выходя из экосистемы .NET.
ML.NET позволяет вам повторно использовать все знания, навыки, код и библиотеки, которые у вас уже есть как у разработчика .NET, чтобы вы могли легко интегрировать машинное обучение в свои веб-приложения, мобильные приложения, настольные игры и приложения IoT.
Вы можете найти дополнительные примеры ML.NET на GitHub или взглянуть на учебники по ML.NET.
Пользовательское машинное обучение стало проще благодаря AutoML
ML.NET предлагает Model Builder (простой инструмент пользовательского интерфейса) и ML.NET CLI, чтобы упростить создание пользовательских моделей ML.
Эти инструменты используют Automated ML (AutoML), передовую технологию, которая автоматизирует процесс создания наиболее эффективных моделей для вашего сценария машинного обучения. Все, что вам нужно сделать, это загрузить данные, а AutoML позаботится об остальном процессе построения модели.
Изучите конструктор моделей ML.NETРасширено с помощью TensorFlow & более
ML.NET был разработан как расширяемая платформа, поэтому вы можете использовать другие популярные платформы машинного обучения (TensorFlow, ONNX, Infer.NET и другие) и иметь доступ к еще большему количеству сценариев машинного обучения, таких как классификация изображений, обнаружение объектов и многое другое.
Данные взяты из статьи Машинное обучение в Майкрософт с ML.NET. Результаты анализа тональности с использованием примерно 900 МБ набора данных отзывов Amazon. Чем выше точность и меньше время выполнения, тем лучше.
Высокая производительность и точность
Используя набор данных обзоров Amazon объемом 9 ГБ, ML.NET обучила модель анализа настроений с точностью 95%. Другие популярные фреймворки машинного обучения не смогли обработать набор данных из-за ошибок памяти. Обучение на 10% набора данных, чтобы все фреймворки завершили обучение, ML.NET продемонстрировал высочайшую скорость и точность.
Оценка производительности показала аналогичные результаты в других сценариях машинного обучения, включая прогнозирование скорости кликов и прогнозирование задержки рейса.
Готовы приступить?
Наше пошаговое руководство поможет вам запустить ML.NET на вашем компьютере.