叮,您有一份ML.NET 速查手册请查收!

点击上方蓝字

关注我们

(本文阅读时间:7分钟)

本篇文章简要介绍 ML.NET 背景和面向 .NET 开发的特色功能,以及典型的机器学习编码示例,并分享自己整理的 ML.NET API 速查手册。

微软MVP实验室研究员

1aace262af1835cd91da8d716486697b.png

25981669852ac11fdde6daa983150af8.png

项斌

微软全球最有价值专家 MVP,《PyTorch机器学习从入门到实战》作者之一,杭州 FireUG 技术社区发起人之一。超过15+ 年 .NET 开发经历,在数据分析、机器学习、自动化领域近十年从事研发工作。

bf00c5ffe45fd5fad44a6b6760997c03.png

ML.NET 简介

05d1d8353bad137dbf0f36987fa50291.png

ML.NET 是面向.NET开发人员的跨平台机器学习框架,它具备在联机或本地环境中将机器学习模型集成到 .NET 应用程序中的能力。

512734650086d017437b1c01e05296fa.png

2002 年微软启动有一个研究项目命名为 TMSN,其意在“Test mining search and navigation”,后来它被改名为 TLC(The learning code)。ML.NET 正是派生自 TLC 库,最初被用于微软的内部产品。

ML.NET 的核心既可以通过指定算法来训练自定义机器学习模型,也可以导入预训练的 TensorFlow 和 ONNX 模型继续训练。生成模型后,可以将其添加到应用程序中进行预测。ML.NET 支持在使用 .NET Core/.NET Framework 的 Windows、Linux 和 macOS 上运行,所有平台均支持 64 位,此外 Windows 平台支持 32 位,但 TensorFlow、LightGBM 和 ONNX 相关功能除外。

ML.NET 集成了众多主流的转换器、算法库,通过 API 提供了丰富的数据处理对象和算法评估器,并且对 Infer.NET、NimbusML、Scikit-Learn、TensorFlow 等机器学习相关的包提供了方便地扩展机制。如果您是一位 .NET 开发者,您将很轻松地上手使用,并且将成果无缝集成到 .NET Core 应用程序中,特别是 ASP.NET Core 的 Web 应用中实现一些高级的智能服务。

逻辑回归模型示例

0cb4db8d76f465513456e80c65b9610b.png

简单示例训练一个用于二分类的逻辑回归模型代码如下:

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

ML.NET 目前在 Github 上以开源项目进行持续更新迭代,最新的版本为1.6。

  • 开源项目示例

    https://github.com/dotnet/machinelearning

ML.NET 特色

2c37083bff3b4b54b30ac9860f0e7a06.png

ML.NET 支持的热门机器学习任务覆盖众多,包括了传统的分类、回归、聚类,也支持了有关时序和图像神经网络。目前已知的应用场景例如:情绪分析、产品推荐、价格预测、客户分层、对象检测、欺诈检测、峰值检测、图像分类、销量预测等等。

c965fa27f084ae75ded8c70c5935003d.png

ML.NET 对 .NET 开发者非常友好,它提供了 Visual Studio 扩展 Model Builder, 这是一个可视化的工具套件,以非常低门槛的操作要求即可快速训练出指定任务类型的机器学习模型,并且自动生成相关的源码,方便后续修改和维护。对于喜欢通过代码方式进行机器学习任务的伙伴,官方提供了丰富的文档和示例代码库。

d152d946eb296828ceb3bf7654721798.gif

另外,ML.NET 针对 CLI 也提供了命令行工具,而且是支持 AutoML 的,使得常见的机器学习场景实现零编码。

eb14eee0e85a6350c71cde4fdcf0279a.gif

  • 文档

    https://docs.microsoft.com/en-us/dotnet/machine-learning

  • 示例代码库

    https://github.com/dotnet/machinelearning-samples

速查手册

b0c2e9e2d98d9517e0335d56e0e48d10.png

通过 AutoML 生成的代码一开始阅读起来会有一点点不习惯,也不利于后续改造代码以适应开发者的实际需要。如果从来没有接触过机器学习的开发者,可能会担心记不住、看不懂、用不惯 ML.NET API 文档中密密麻麻基于专业术语的对象和方法,鉴于收集到如是实际开发者反馈的障碍,作者将 ML.NET API 按经典的机器学习实现步骤,把常用的方法整理成一份图册,并添加了一些代码片段用来帮助快速理解 API 对象和方法的使用规则。另外,图册底部把截止目前 ML.NET 已内置支持的模型训练器和数据转换器列成表格方便掌握完整信息。图册以高清矢量格式的图片分享出来,在编码的时候放在习惯的地方,像开发其他 .NET 应用一样可随时查看,一目了然。

3952d6e06059e5aa4589d7b8a1389ea5.png

免费领取高清 ML.NET 速查手册

298116f988d7cb462cb202374e9f2055.png

点击下方名片

进入“微软中国MSDN”

官方微信公众号

对话框内回复暗号:

ML.NET 速查手册

微软最有价值专家(MVP)

1e7917322c25054d60c90e5ab7b318ef.png

微软最有价值专家是微软公司授予第三方技术专业人士的一个全球奖项。29年来,世界各地的技术社区领导者,因其在线上和线下的技术社区中分享专业知识和经验而获得此奖项。

MVP是经过严格挑选的专家团队,他们代表着技术最精湛且最具智慧的人,是对社区投入极大的热情并乐于助人的专家。MVP致力于通过演讲、论坛问答、创建网站、撰写博客、分享视频、开源项目、组织会议等方式来帮助他人,并最大程度地帮助微软技术社区用户使用 Microsoft 技术。

更多详情请登录官方网站:
https://mvp.microsoft.com/zh-cn

419af4408d64a075b7c323596fb2de2b.png

7721a0827fdf1a0ffdac27e1cd032e47.gif

免费领取高清ML.NET速查手册

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/290817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

老师计算机传帮带工作总结,传帮带工作总结范文

传帮带工作总结范文一段时间的工作在不知不觉间已经告一段落了&#xff0c;回首这段不平凡的时间&#xff0c;有欢笑&#xff0c;有泪水&#xff0c;有成长&#xff0c;有不足&#xff0c;让我们好好总结下&#xff0c;并记录在工作总结里。那么如何把工作总结写出新花样呢&…

[Usaco2007 Demo][BZOJ1628] City skyline

1628: [Usaco2007 Demo]City skyline Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 320 Solved: 260[Submit][Status][Discuss]Description Input 第一行给出N&#xff0c;W第二行到第N1行:每行给出二个整数x,y&#xff0c;输入的x严格递增&#xff0c;并且第一个x总是1Out…

负载均衡(LB)集群 dr

LB、LVS介绍LB集群是load balance 集群的简写&#xff0c;翻译成中文就是负载均衡集群 LVS是一个实现负载均衡集群的开源软件项目 LVS架构从逻辑上可分为调度层(Director)、server集群层(Real server)和共享存储层LVS可分为三种工作模式: NAT(调度器将请求的目标ip即vip地址改为…

ASP.NET Core启动地址配置方法及优先级顺序 | .NET 6 版本

前言上次&#xff0c;我们讨论了如何通过配置或代码方式修改启动地址&#xff1a;《ASP.NET Core启动地址配置方法及优先级顺序》。不过是基于 .NET 5 版本的。由于 .NET 6 使用了最小 WEB API, 配置方式已经部分发生了变化。设置方法1. applicationUrl 属性launchSettings.jso…

Avalonia跨平台入门第七篇之RadioButton的模板

前面其实已经玩耍过单选按钮,只不过一直好意思分享出来;今天终于可以正大光明的分享出来了,直接看效果吧:第一次使用然后的傻傻的版本(根据单选按钮的选中状态来切换二个图片);真的好Low:样式写法和WPF没太大区别:类似WPF中的触发器,使用了附加属性:前台具体使用方式:最终简单的…

更强的压缩比!PostgreSQL开始支持Zstd

文 | 局长出品 | OSC开源社区&#xff08;ID&#xff1a;oschina2013&#xff09;PostgreSQL 现已通过其 TOAST 存储技术提供压缩支持&#xff0c;并且在过去的一年里构建了 LZ4 压缩支持——用于压缩 WAL、备份压缩以及其他用途&#xff0c;现在 PostgreSQL 开发者正准备通过 …

jbpm6.5 环境搭建(三) 数据库 切换

2019独角兽企业重金招聘Python工程师标准>>> 经过一晚上的折腾&#xff0c;终于搞定&#xff0c;成功切换Mysql 步骤一&#xff1a; 安装mysql 数据库 创建数据库 名字为jbpm 设置用户名密码 我本地默认使用 root 步骤二&#xff1a; ** 修改配置文件 ** F:\jb…

Android之HandlerThread源码分析和简单使用(主线程和子线程通信、子线程和子线程通信)

1、先熟悉handler方式实现主线程和子线程互相通信方式&#xff0c;子线程和子线程的通信方式 如果不熟悉或者忘记了&#xff0c;请参考我的这篇博客 Android之用Handler实现主线程和子线程互相通信以及子线程和子线程之间的通信 http://blog.csdn.net/u011068702/arti…

Avalonia跨平台入门第八篇之控件的拖放

在前面分享的几篇中咱已经玩耍了Popup、ListBox多选、Grid动态分、RadioButton模板,过程还算顺利;今天接着把把ListBox中的Item拖放到Cavans中(基于官方的Samples实现的);直接看效果吧:1、ListBox中PointerPressed、DragOver事件:2、Canvas中的Drop事件:3、控件的移除无非就是通…

车牌识别系统连不上服务器怎么办,车牌识别系统出现故障的解决方法有哪些?...

在日常生活中&#xff0c;各个小区、商业广场、酒店、办公楼等等地方出入口装置有车牌识别系统&#xff0c;有此可见车牌识别系统的使用越来越广泛。停车场办理系统的使用给人们带来便利的同时&#xff0c;也常常会出现一些小问题。今天小编就给大家分享一下车牌识别系统遇到故…

霍夫变换

作者&#xff1a;桂。 时间&#xff1a;2017-04-24 12:18:17 链接&#xff1a;http://www.cnblogs.com/xingshansi/p/6756305.html 前言 今天群里有人问到一个图像的问题&#xff0c;但本质上是一个基本最小二乘问题&#xff0c;涉及到霍夫变换&#xff08;Hough Transform&a…

ASP.NET Core 实现基于 ApiKey 的认证

ASP.NET Core 实现基于 ApiKey 的认证Intro之前我们有介绍过实现基于请求头的认证&#xff0c;今天来实现一个基于 ApiKey 的认证方式&#xff0c;使用方式参见下面的示例Sample注册认证服务services.AddAuthentication().AddApiKey(options >{options.ApiKey "123456…

白平衡自己主动(AWB)算法---2,颜色计算

本文说明了白平衡算法估计当前场景的色温过程. 色温计算的原理并不复杂,但要做到,还是一道&#xff0c;认真做好每一步,这需要大量的测试,和算法一直完好. 关于该过程首先简要: 1, 取的图像数据,并划分MxN块,如果是25x25,并统计每一块的基本信息(,白色像素的数量及R/G/B通道的分…

linux(windows)之svn重定向地址

1、问题 svn下载的项目路径需要换&#xff0c;也就是下面的URL:SVN:// 需要修改 2、解决办法 linux平台 svn switch --relocate oldSvnPath newSvnPath windows平台 右击项目 TortoiseSVN->Relocate 然后修改就行

Ubuntu14.04LST安装weblogic11g

1:下载链接http://download.oracle.com/otn/nt/middleware/11g/wls/1036/wls1036_generic.jar 2:进行安装&#xff08;前提已经安装好JDK&#xff09; yy:~/my_download$ java -d64 -Xmx1024m -jar wls1036_generic.jar Extracting 0%.......................................…

服务器连接不稳定fifa,fifa服务器链接异常

fifa服务器链接异常 内容精选换一换获取登录密码Windows操作系统在创建时只能选择密钥登录&#xff0c;需要先将密钥文件解析为密码&#xff0c;参考链接&#xff1a;获取Windows裸金属服务器的密码Windows操作系统在创建时只能选择密钥登录&#xff0c;需要先将密钥文件解析为…

并发编程总结4-JUC-REENTRANTLOCK-2(公平锁)

内容包括&#xff1a;1、ReentrantLock函数分析2、ReentrantLock公平锁源码&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#xff0d;&#…

ASP.NET Core 6 的性能改进

受到 由Stephen Toub 发布的关于 .NET 性能的博客的启发&#xff0c;我们正在写一篇类似的文章来强调ASP.NET Core 在6.0 中所做的性能改进。基准设置我们整个过程中大部分的实例使用的是BenchmarkDotNet。在此链接上提供了repo&#xff0c;其中包括本文中使用的大多数基准。Be…

华为服务器只显示一个下划线,华为官方解释:为什么鸿蒙系统logo下面会有一条下划线...

HarmonyOS 的 Logo 中为什么有一横&#xff1f;为什么这一横偏偏是蓝色&#xff1f;HarmonyOS 的字体设计又藏着什么奥秘&#xff1f;6月10日晚&#xff0c;华为官方微博对鸿蒙系统LOGO设计寓意&#xff0c;作出了官方科普。下面就来为你一一解答在现代汉语中“旦”字与鸿蒙OS中…

ORACLE利用STANDBY端RMAN备份进行数据恢复

这里记录一下流程&#xff0c;有我和同事问心进行测试 dataguard主库和物理备库主要是controlfile文件有区别&#xff0c;用restore可以查看含有primary,standby关键字 RMAN> restore ; RMAN-00571: RMAN-00569: ERROR MESSAGE STACK FOLLOWS RMAN-00571: RMAN-00558: e…