ML.NET 是一个跨平台框架, 可以允许 .NET 开发人员开发专属模型, 并在他们的应用程序中注入定制的机器学习能力, 开发人员不需要具备开发或调节机器学习模型的专业知识.
当地时间 5 月 7 日, 微软 Build 大会在美国西雅图召开, 会上微软针对开发者发布了一系列新产品. 在这一系列产品发布的同时, 微软同时宣布开源机器学习框架 --ML.NET. 利用 ML.NET, 开发人员可以直接上手已有的模型, 无需具备开发或调节机器学习模型的专业知识.
ML.NET 是一个跨平台框架, 可以允许 .NET 开发人员开发专属模型, 并在他们的应用程序中注入定制的机器学习能力, 开发人员不需要具备开发或调节机器学习模型的专业知识.
ML.NET 由微软研究院研发, 在过去的十年里发展成为一个重要的框架, 它在微软的许多产品团队中都有使用, 比如 Windows, 必应, Azure 等等.
在这次发布的预览版中, ML.NET 支持分类 (例如文本分类, 情感分析), 回归(例如预测, 价格预估) 等机器学习任务.
除了宣布支持以上任务, 微软一并发布了用于训练模型, 进行预测的 .NET API 的初稿, 此外还有这一框架的核心组成部分, 比如学习算法, 转换和核心机器学习数据结构.
大家请注意, ML.NET 是一个框架, 这意味着它可以扩展, 可以将 TensorFlow,Accord.NET 和 CNTK 这样的流行机器学习库添加进去. 在 ML.NET 开源生态中, 微软致力于让它的内部功能更加完善, ML.NET 可以为 .NET 开发者带来更优化的机器学习开发体验.
大家可以加入 ML.NET 开源社群, 让这一工具在未来迎来更迅猛的发展. GitHub 地址如下:
https://github.com/dotnet/machinelearning
随着不断发展, ML.NET 将会不断增加对流行深度学习库如 TensorFlow,Caffe2,CNTK 和一般深度学习库如 Accord.NET 的支持, 其功能可以扩展到其他的机器学习场景, 如推荐系统, 异常检测和其他深度学习方法.
ML.NET 还增加了 Azure Machine Learning 和 Cognitive Service 的一些已有经验, 它允许使用代码优先的方法, 支持本地应用程序部署, 让用户能构建自己的模型.
下面是关于 ML.NET 的更多细节:
ML.NET Core Components
ML.NET 是作为 .NET Foundation 的一部分推出的, repo 中包含了训练和消耗模型的 .NET C# API, 还有各种各样的 transform, 以及许多流行的机器学习任务, 如回归和分类.
ML.NET 的目标是提供 E2E 工作流, 通过预处理, 特征工程, 建模, 评估和操作, 将深度学习能力添加进 .NET 应用程序.
下面的表格是 ML.NET 0.1 所发布的完整组件列表.
微软表示, 他们的目标是使 ML.NET 的 API 变得通用, 这样就可以通过一个共享 API 使用 CNTK,Accord.NET,TensorFlow 等框架和其他库.
大家目前可以安装 ML.NET, 体验目前已有的一系列功能, 具体信息可以参见:
- blogs.msdn.microsoft.com https://blogs.msdn.microsoft.com/dotnet/2018/05/07/introducing-ml-net-cross-platform-proven-and-open-source-machine-learning-framework/
- GitHub https://github.com/dotnet/machinelearning
来源: http://news.51cto.com/art/201805/573154.htm