ML.NET is an open source and cross-platform machine learning framework for .NET.
Перейти к файлу
Santiago Fernandez Madero b21094d649
Remove agent.os demands on windows ci (#621)
* Remove agent.os demands as this queue has only Windows_NT machines

* Bump parallel to 4

* Set parallel to 99 per PR feedback
2018-08-02 13:01:38 -07:00
build Remove agent.os demands on windows ci (#621) 2018-08-02 13:01:38 -07:00
docs Schema comprehension doc (#572) 2018-07-24 12:32:38 -07:00
pkg Splitting OLS to a separate package called AdditionalLearners (#611) 2018-07-31 18:30:23 -07:00
src Allow use of property-based row classes in ML.NET (#616) 2018-08-02 08:57:51 -07:00
test Allow use of property-based row classes in ML.NET (#616) 2018-08-02 08:57:51 -07:00
tools-local/Microsoft.ML.CodeAnalyzer Initial code analyzer for Microsoft.ML, use limited StyleCop (#557) 2018-07-25 13:45:49 -07:00
.gitattributes Initial commit 2018-05-03 17:22:00 -07:00
.gitignore switch housing dataset to wine (#170) 2018-05-23 16:22:12 -07:00
.vsts-dotnet-ci.yml Remove agent.os demands on windows ci (#621) 2018-08-02 13:01:38 -07:00
BuildToolsVersion.txt Initial commit 2018-05-03 17:22:00 -07:00
CONTRIBUTING.md Change "Documentation" folder to "docs" (#87) 2018-05-16 21:34:44 -04:00
Directory.Build.props Allow CpuMath to reference C# Hardware Intrinsics APIs. (#542) 2018-07-19 11:48:24 -05:00
Directory.Build.targets Update documentation for LightGBM and add missing binary references to console app. (#452) 2018-07-02 13:51:32 -07:00
DotnetCLIVersion.txt Issue #104: Update the build tools to 2.1.200 (#105) 2018-05-10 10:21:26 -05:00
ISSUE_TEMPLATE.md Update ISSUE_TEMPLATE.md 2018-05-06 20:32:33 -07:00
LICENSE Initial commit 2018-05-03 17:22:00 -07:00
Microsoft.ML.sln Allow use of property-based row classes in ML.NET (#616) 2018-08-02 08:57:51 -07:00
PULL_REQUEST_TEMPLATE.md Update PULL_REQUEST_TEMPLATE.md 2018-05-06 20:43:27 -07:00
README.md Move Windows and Linux CI to VSTS (#566) 2018-07-23 09:38:21 -07:00
ROADMAP.md [Docs] Fixed typo: ROADMAP.md (#55) 2018-05-07 15:23:35 -07:00
build.cmd Fixes build errors caused by spaces in the project path (#196) 2018-05-23 11:44:22 -07:00
build.proj Fix official build, which only builds native assemblies on OSX and Linux. But building native now requires a Restore to happen first. (#626) 2018-08-01 15:52:54 -05:00
build.sh Fixes build error when path contains space on Linux (#247) 2018-05-30 09:36:52 -07:00
config.json Initial commit 2018-05-03 17:22:00 -07:00
dir.traversal.targets Initial commit 2018-05-03 17:22:00 -07:00
init-tools.cmd Remove references to ILAsmVersion.txt from build script (#266) 2018-05-30 10:17:48 -07:00
init-tools.msbuild Initial commit 2018-05-03 17:22:00 -07:00
init-tools.sh Remove references to ILAsmVersion.txt from build script (#266) 2018-05-30 10:17:48 -07:00
netci.groovy Move Windows and Linux CI to VSTS (#566) 2018-07-23 09:38:21 -07:00
run.cmd Fixes build errors caused by spaces in the project path (#196) 2018-05-23 11:44:22 -07:00
run.sh Fixes build error when path contains space on Linux (#247) 2018-05-30 09:36:52 -07:00

README.md

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 ML into their applications without prior expertise in developing or tuning machine learning models, all in .NET.

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.

With this first preview release ML.NET enables ML tasks like classification (e.g. support text classification, sentiment analysis) and regression (e.g. 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 - any platform where 64 bit .NET Core or later is available.

The current release is 0.3. Check out the release notes.

First ensure you have installed .NET Core 2.0 or later. ML.NET also works on the .NET Framework. Note that ML.NET currently must run in a 64 bit process.

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.

x64 Debug x64 Release
Linux x64-debug x64-release
macOS x64-debug x64-release
Windows x64-debug x64-release

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's an example of code to train a model to predict sentiment from text samples. (You can see the complete sample here):

var pipeline = new LearningPipeline();
pipeline.Add(new TextLoader(dataPath).CreateFrom<SentimentData>(separator: ','));
pipeline.Add(new TextFeaturizer("Features", "SentimentText"));
pipeline.Add(new FastTreeBinaryClassifier());
var model = pipeline.Train<SentimentData, SentimentPrediction>();

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

SentimentData data = new SentimentData
{
    SentimentText = "Today is a great day!"
};

SentimentPrediction prediction = model.Predict(data);

Console.WriteLine("prediction: " + prediction.Sentiment);

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.