ML.NET 是一个跨平台框架,可以允许 .NET 开发人员开发专属模型,并在他们的应用程序中注入定制的机器学习能力,开发人员不需要具备开发或调节机器学习模型的专业知识。
ML.NET 由
微软研究院研发,在过去的十年里发展成为一个重要的框架,它在微软的许多产品团队中都有使用,比如 Windows、
必应、
Microsoft Azure 等等。
除了宣布支持以上任务,微软一并发布了用于训练模型、进行预测的 .NET API 的初稿,此外还有这一框架的核心组成部分,比如学习算法、转换和核心机器学习
数据结构。
ML.NET 是一个框架,这意味着它可以扩展,可以将 TensorFlow、Accord.NET 和 CNTK 这样的流行机器学习库添加进去。在 ML.NET 开源生态中,
微软致力于让它的内部功能更加完善,ML.NET 可以为 .NET 开发者带来更优化的机器学习开发体验。
ML.NET 将会不断增加对流行深度学习库如
TensorFlow、Caffe2、CNTK 和一般深度学习库如 Accord.NET 的支持,其功能可以扩展到其他的机器学习场景,如推荐系统、异常检测和其他深度学习方法。
ML.NET 还增加了 Azure Machine Learning 和 Cognitive Service 的一些已有经验,它允许使用代码优先的方法,支持本地应用程序部署,让用户能构建自己的模型。
ML.NET 是作为 .NET Foundation 的一部分推出的,repo 中包含了训练和消耗模型的 .NET
C♯ API,还有各种各样的 transform,以及许多流行的机器学习任务,如回归和分类。
微软表示,他们的目标是使 ML.NET 的 API 变得通用,这样就可以通过一个共享 API 使用 CNTK、Accord.NET、
TensorFlow 等框架和其他库。