Giter VIP home page Giter VIP logo

machinelearning's Introduction

Machine Learning for .NET

ML.NET is a cross-platform open-source machine learning framework which makes machine learning accessible to .NET developers.

ML.NET allows .NET developers to develop their own models and infuse custom machine learning into their applications, using .NET, even without prior expertise in developing or tuning machine learning models.

ML.NET was originally developed in Microsoft Research, and evolved into a significant framework over the last decade and is used across many product groups in Microsoft like Windows, Bing, PowerPoint, Excel and more.

ML.NET enables machine learning tasks like classification (for example: support text classification, sentiment analysis) and regression (for example, price-prediction).

Along with these ML capabilities, this first release of ML.NET also brings the first draft of .NET APIs for training models, using models for predictions, as well as the core components of this framework such as learning algorithms, transforms, and ML data structures.

Installation

NuGet Status

ML.NET runs on Windows, Linux, and macOS using .NET Core, or Windows using .NET Framework. 64 bit is supported on all platforms. 32 bit is supported on Windows, except for TensorFlow, LightGBM, and ONNX related functionality.

The current release is 0.11. Check out the release notes to see what's new.

First, ensure you have installed .NET Core 2.1 or later. ML.NET also works on the .NET Framework 4.6.1 or later, but 4.7.2 or later is recommended.

Once you have an app, you can install the ML.NET NuGet package from the .NET Core CLI using:

dotnet add package Microsoft.ML

or from the NuGet package manager:

Install-Package Microsoft.ML

Or alternatively, you can add the Microsoft.ML package from within Visual Studio's NuGet package manager or via Paket.

Daily NuGet builds of the project are also available in our MyGet feed:

https://dotnet.myget.org/F/dotnet-core/api/v3/index.json

Building

To build ML.NET from source please visit our developers guide.

codecov

Debug Release
CentOS 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

Contributing

We welcome contributions! Please review our contribution guide.

Community

Please join our community on Gitter Join the chat at https://gitter.im/dotnet/mlnet

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct.

Examples

Here is a snippet code for training a model to predict sentiment from text samples. You can find complete samples in samples repo.

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);

Now from the model we can make inferences (predictions):

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

A cookbook that shows how to use these APIs for a variety of existing and new scenarios can be found here.

API Documentation

See the ML.NET API Reference Documentation.

Samples

We have a repo of samples that you can look at.

License

ML.NET is licensed under the MIT license.

.NET Foundation

ML.NET is a .NET Foundation project.

There are many .NET related projects on GitHub.

  • .NET home repoย - links to 100s of .NET projects, from Microsoft and the community.

machinelearning's People

Contributors

ivanidzo4ka avatar sfilipi avatar wschin avatar eerhardt avatar codemzs avatar yaeldms avatar artidoro avatar tomfinley avatar rogancarr avatar zeahmed avatar anipik avatar abgoswam avatar zruty0 avatar shauheen avatar najeeb-kazmi avatar ganik avatar jwood803 avatar singlis avatar shmoradims avatar danmoseley avatar jignparm avatar galoshri avatar feiyun0112 avatar mareklinka avatar briancylui avatar safern avatar vaeksare avatar montebhoover avatar adamsitnik avatar maryamariyan avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.