微软发布 ML.NET 0.10,.NET 跨平台机器学习框架

微软于一周前发布了 ML.NET 0.10 版本(不是 0.1,接下来还会有 0.11, 0.12,然后才是 1.0 版本)。

更新亮点包括

  • IDataView 被单独作为一个类库包

  • 场感知分解机训练器支持多个特征列

  • 支持返回多个预测标签

  • 源自社区的示例页面

IDataView 被单独作为一个类库包

IDataView 组件为表格式数据提供了非常高效的处理方式,尤其是用于机器学习和高级分析应用。它被设计为可以高效地处理高维数据和大型数据集。并且也适合处理属于更大的分布式数据集中的单个数据区块结点。

在 ML.NET 0.10 中,IDataView 被拆分成单个程序集和 NuGet 类库包。这对于与其它 API 及框架交互是极重要的一步。

在被拆分后,其它的类库将能直接引用它,而不需要引用整个 ML.NET。这样有助于第三方类库也能使用 IDataView 所提供的强大功能。

场感知分解机训练器支持多个特征列

在之前的 ML.NET 版本中,当使用场感知分解机(FFM)训练机器时,仅可以提供单个特征列。

在新的版本里,支持在 Options 参数里添加额外的特征列。

var ffmArgs = new FieldAwareFactorizationMachineTrainer.Options();

// Create the multiple field names.
ffmArgs.FeatureColumn = nameof(MyObservationClass.MyField1); // 首个字段
ffmArgs.ExtraFeatureColumns = new[]{ nameof(MyObservationClass.MyField2), nameof(MyObservationClass.MyField3) }; // 额外的字段

var pipeline = mlContext.BinaryClassification.Trainers.FieldAwareFactorizationMachine(ffmArgs);

var model = pipeline.Fit(dataView);

支持返回多个预测标签

之前的版本里,即使预测多类别分类问题,也只能返回单一的标签。

现在,这一缺陷终于被修复了(其实在内部逻辑里已经对多项预测完成处理,但过去的 API 只返回了单一的结果)。

源自社区的示例页面

作为 ML.NET Samples 的一部分,现在新增了一个特殊页面 —— 由社区提供的多个示例。

里面有不少很好的例子:


▲照片查询的 WPF 应用,其内部运行 TensorFlow 模型,并导出为 ONNX 格式。


▲使用 ML.NET 的 UWP 应用

来自:https://www.cnblogs.com/kenwoo/p/10367137.html

猜你喜欢

转载自www.oschina.net/news/104408/ml-net-0-10-machine-learning-for-net