关于ML.NET v1.0 的发布说明
今天,我们很高兴宣布发布 ML.NET 1.0。ML.NET 是一个免费的、跨平台的开源机器学习框架,旨在将机器学习(ML)的强大功能引入.NET 应用程序。
ML.NET GitHub:https://github.com/dotnet/machinelearning
入门 @ http://dot.net/ml
ML.NET 允许你使用 C#或 F#训练、构建和发布自定义机器学习模型,用于情景分析、问题分类、预测、推荐等场景。你可以在我们的ML.NET 样品库中查看这些常见的场景和任务。
ML.NET 最初是在微软研究院内部研发,后来演变成许多微软产品使用的重要框架,例如 Windows Defender、Microsoft Office(Powerpoint 设计思想、Excel 图表推荐)、Azure 机器学习、PowerBI 关键影响者等!
自推出以来,许多组织都在使用 ML.NET,如 SigParser(垃圾邮件检测)、William Mullens(法律问题分类)和 Evolution 软件(榛子水分检测)。
ML.NET 1.0 版本添加了新的预览功能,如自动机器学习(AutoML)功能,ML.NET CLI 和 ML.NET Model Builder 等新工具,这意味着,现在为你的应用程序添加机器学习模型只需点击右键!
本文的其余部分重点介绍这些新体验。
ML.NET 核心组件
自动机器学习预览
ML.NET 模型生成器预览
ML.NET CLI 预览
ML.NET 入门
未来计划
ML.NET 核心组件
ML.NET 旨在提供终端工作流程,以便在机器学习(预处理、特征工程、建模、评估和操作)的各个步骤中将 ML 用于.NET 应用程序。ML.NET 1.0 提供以下关键组件:
数据表示
基本 ML 数据管道数据类型,如 IDataView——基本数据管道类型
阅读器支持从分隔文本文件或 IEnumerable 对象中读取数据
支持机器学习任务:
二进制分类
多级分类
回归
排序
异常检测
聚类
推荐(预览)
数据转换和特性化
文本
分类
特征选择
规范化和缺失值处理
图像特征化
时间序列(预览)
支持 ONNX 和 TensorFlow 模型集成(预览)
其他
模型理解和解释
用户定义的自定义转换
架构操作
支持数据集操作和交叉验证
自动机器学习预览
如今,机器学习入门学习过程非常艰难。在构建自定义机器学习模型时,你必须确定为你的场景选择机器学习任务(即分类或回归?),将你的数据转换为 ML 算法可以理解的格式(例如文本数据 - > 数字向量),并微调这些 ML 算法以达到最佳性能。如果你是 ML 新手,这些步骤中的每一步都会非常艰巨!
自动机器学习通过自动确定如何转换输入数据并选择性能最佳的 ML 算法,使你能够轻松构建一流的自定义 ML 模型,使你的 ML 之旅更加简单。
ML.NET 中的 AutoML 支持处于预览阶段,我们目前支持回归(用于价格预测等场景)和分类(用于情感分析、文档分类、垃圾邮件检测等场景)ML 任务。
你可以使用 ML.NET Model Builder、ML.NET CLI 或直接使用 AutoML API(可在此处找到样本)三种形式在 ML.NET 中体验 AutoML。
对于不熟悉机器学习的用户,我们建议从 Visual Studio 中的 ML.NET 模型构建器和任何平台上的 ML.NET CLI 开始。AutoML API 对于你想要动态构建模型的场景也非常方便。
模型生成器预览
为了简化.NET 开发人员构建 ML 模型的过程,我们今天也很高兴地发布 ML.NET 模型构建器。使用 ML.NET 模型构建器,只需右键单击即可将机器学习添加到你的应用程序中!
Model Builder 是一个简单的 UI 工具,供开发人员使用自己的数据集,通过 AutoML 使构建最佳的 ML 模型。除此之外,Model Builder 还可以生成模型训练和模型消耗代码,以达到最佳性能,让你快速将 ML 添加到现有应用程序中。
Model Builder 目前处于预览阶段,欢迎试用并告诉我们你的想法!
ML.NET CLI 预览
ML.NET CLI(命令行界面)是我们今天推出的另一个新工具!
ML.NET CLI 是一个 dotnet 工具,允许使用 AutoML 和 ML.NET 生成 ML.NET 模型。ML.NET CLI 可以快速遍历你的数据集以获取特定的 ML 任务(目前支持回归和分类)并生成最佳模型。
CLI 除了生成最佳模型外,还允许用户为最佳性能模型生成模型训练和模型消耗代码。
ML.NET CLI 是跨平台的,可以轻松添加到.NET CLI。Model Builder Visual Studio 扩展还使用 ML.NET CLI 提供模型构建器功能。
你可以通过此命令安装 ML.NET CLI。
dotnet tool install -g mlnet
下图显示了 ML.NET CLI 构建情感分析数据集。
ML.NET CLI 目前也处于预览状态,欢迎试用并分享你的想法!
开始吧!
从头开始使用 ML.NET 很简单,你可以通过几个简单的步骤来完成,如下所示。 下面的示例显示了如何使用 ML.NET 进行情绪分析。
//Step 1. Create a ML Context
var ctx = new MLContext(); //Step 2. Read in the input data for model training
IDataView dataReader = ctx.Data
.LoadFromTextFile<MyInput>(dataPath, hasHeader: true); //Step 3. Build your estimator
IEstimator<ITransformer> est = ctx.Transforms.Text
.FeaturizeText("Features", nameof(SentimentIssue.Text))
.Append(ctx.BinaryClassification.Trainers
.LbfgsLogisticRegression("Label", "Features")); //Step 4. Train your Model
ITransformer trainedModel = est.Fit(dataReader); //Step 5. Make predictions using your model
var predictionEngine = ctx.Model
.CreatePredictionEngine<MyInput, MyOutput>(trainedModel); var sampleStatement = new MyInput { Text = "This is a horrible movie" }; var prediction = predictionEngine.Predict(sampleStatement);
你还可以探索各种其他学习资源,如 ML.NET 的教程和资源,以及 ML.NET 示例、演示产品推荐、异常检测和更多实际操作等流行方案。
ML.NET 的下一步
今天发布 ML.NET 1.0 的同时,我们的团队已经在努力为 ML.NET 1.0 版发布以下功能。
其他 ML 场景的 AutoML 体验
改进了对深度学习场景的支持
支持其他其他来源,如 SQL Server、CosmosDB、Azure Blob 存储等。
在 Azure 上横向扩展以进行模型训练和消耗
使用模型构建器和 CLI 时,支持其他 ML 方案和功能
用于 Apache Spark 和 ML.NET 的.NET 大规模机器学习的本地集成
.NET 中的新 ML 类型,例如数据帧
关于ML.NET v1.0 的发布说明的更多相关文章
- PyRedisAdmin v1.0 Beta 发布,Redis 在线管理工具 - 开源中国社区
PyRedisAdmin v1.0 Beta 发布,Redis 在线管理工具 - 开源中国社区 PyRedisAdmin v1.0 Beta 发布,Redis 在线管理工具
- [译]ABP v1.0终于发布了!
ABP v1.0终于发布了! 今天是个大日子!经过约3年的不断开发,第一个稳定的ABP版本,1.0,已经发布了.感谢为该项目做出贡献或试用过的每个人. 立即开始使用新的ABP框架:abp.io/get ...
- 关于ML.NET v1.0 RC的发布说明
ML.NET是面向.NET开发人员的开源和跨平台机器学习框架(Windows,Linux,macOS).使用ML.NET,开发人员可以利用他们现有的工具和技能组,通过为情感分析,推荐,图像分类等常见场 ...
- mysql awr v1.0.1发布
现发布mysql awr v1.0.1 修复问题: 1.galera cluster下flush table/index_statistcs时如果系统中业务ddl频繁可能会导致很多进程处于prepar ...
- Omi v1.0震撼发布 - 令人窒息的Web组件化框架
原文链接--https://github.com/AlloyTeam/omi 写在前面 Omi框架经过几十个版本的迭代,越来越简便易用和强大. 经过周末的连续通宵加班加点,Omi v1.0版本终于问世 ...
- Rookey.Frame v1.0 视频教程发布了
经过昨天几个小时的折腾, Rookey.Frame v1.0开发视频教程终于发布了,由于是第一次做视频有很多地方做的不够好,后续我会慢慢改进,争取将视频教程做好. 本期发布视频: (一)Rookey. ...
- Omi v1.0震撼发布 - 开放现代的Web组件化框架
原文链接--https://github.com/AlloyTeam/omi 写在前面 Omi框架经过几十个版本的迭代,越来越简便易用和强大. 经过周末的连续通宵加班加点,Omi v1.0版本终于问世 ...
- JuiceFS v1.0 beta3 发布,支持 etcd、Amazon MemoryDB、Redis Cluster
JuiceFS v1.0 beta3 在元数据引擎方面继续增强,新增 etcd 支持小于 200 万文件的使用场景,相比 Redis 可以提供更好的可用性和安全性.同时支持了 Amazon Memor ...
- 代码之间-论文修改助手v1.0版本发布
论文查重,是每个毕业生都要面临的一个令人头疼的问题,如果写论文不认真,很可能导致查重红一大片. 之前有帮助一些朋友修改论文降低重复率,做了一些工作后发现,国内的查重机构,如知网.维普等,大多数是基于关 ...
随机推荐
- Mongodb介绍(非原创)
文章大纲 一.什么是nosql二.mongodb与mysql比较三.参考文章 一.什么是nosql 1. 简介 这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据. ...
- 如何获取表增长历史记录信息? (Doc ID 1395195.1)
How To Get Table Growth History Information? (Doc ID 1395195.1) APPLIES TO: Oracle Database - Enterp ...
- Linux第三章-Linux搭建Java环境
本文安装系统是基于 CentOS 7 版本及以上 一.安装JDK 1.先去 Oracle官网 下载Linux1.8的版本以 .tar.gz 为后缀的文件,我这里用的是 jdk-8u181-linux- ...
- NXP_RTCESL库
恩智浦实时控制嵌入式软件库(缩写为RTCESL,以前为恩智浦嵌入式软件库FSLESL)是一组算法,从基础数学运算到高级数学变换以及高级观测器,这些都可以方便地用在复杂的实时控制应用中以及我们的电机控制 ...
- cf 【并查集】
http://codeforces.com/contest/1245/problem/D 题意就是:你需要让所有城市都有电,你看也在该城市建电站使他有电,同时你可以链接他与其他城市,使之有电 解决: ...
- Acwing 14. 不修改数组找出重复的数字
题目地址 https://www.acwing.com/problem/content/description/15/ 来源:剑指Offer 给定一个长度为 n+1n+1 的数组nums,数组中所有 ...
- 洛谷 P5638 光骓者的荣耀
洛谷 P5638 [CSGRound2]光骓者的荣耀 洛谷传送门 题目背景 小 K 又在做白日梦了.他进入到他的幻想中,发现他打下了一片江山. 题目描述 小 K 打下的江山一共有nn个城市,城市ii和 ...
- WPF 动态列(DataGridTemplateColumn) 绑定数据 (自定义控件)
原文:WPF 动态列(DataGridTemplateColumn) 绑定数据 (自定义控件) 因为项目需要 要实现这个~ 怎么实现画红框内容部分 田字格和上面Textbox 属于一个自定义控件 大 ...
- Centos7升级gcc极简教程
centos7默认gcc版本为4.8,一般不满足编译需求,因此升级gcc版本为常见操作: 现有博客中,大多数教程都是基于源码重新编译安装:但是源码编译过程等待时间很长且编译麻烦. 因此,直接基于命令升 ...
- 如何将Excel表批量赋值到ArcGIS属性表
情景再现 现需要将Excel表信息批量赋值(不是挂接)到Shp文件的属性表,两张表的字段.记录数一模一样,至于为什么会出现这样的问题,咱也不敢问,只有想个法子把它搞定! 原始的Excel信息表共57列 ...