码迷,mamicode.com
首页 > Web开发 > 详细

关于ML.NET v0.8的发布说明

时间:2018-12-04 22:34:22      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:不同   有用   迭代   gtest   状态   实验   取数   alt   形式   

ML.NET 0.8发布之际,我们可以解释为什么到目前为止它是最好的版本!以下是此版本的一些亮点。

  • 模型可解释性,能够理解最重要的特性(输入)
  • 改进的可调试性,更易于使用时间序列预测
  • 多个API改进
  • 新的推荐用例 

介绍

增加了模型可解释性

以整体特征重要性和广义附加模型的形式实现可解释性。

总体特征重要性使人们了解哪些特征对于模型而言总体上最重要。例如,在预测推文的情绪时,“amazing”的存在可能比推文包含“bird”更重要。这是通过置换特征重要性启用的。可以在此处找到示例用法 。

广义附加模型具有可解释的预测。它们在易于理解方面类似于线性模型,但更灵活并且可以具有更好的性能。可以在此处找到示例用法 。

通过预览IDataViews提高可调试性

查看读入ML.NET管道的数据通常很有用,甚至可以在一些中间步骤之后按预期转换查看它以确保数据。

您现在可以通过转到VS调试器中的Watch窗口,输入要预览的变量名称并调用其Preview()方法来预览IDataView 。

技术分享图片

为时间序列问题启用状态预测引擎

ML.NET 0.7 启用了异常检测方案。但是,预测引擎是无状态的,这意味着每次要确定最新数据点是否是异常时,您还需要提供历史数据。这是不自然的。
预测引擎现在可以保持到目前为止看到的时间序列数据的状态,因此您现在可以通过提供最新的数据点来获得预测。这是通过使用CreateTimeSeriesPredictionFunction 而不是使用MakePredictionFunction。可以在此处找到示例用法。您需要将Microsoft.ML.TimeSeries NuGet添加到您的项目中。

通过隐式反馈改进对推荐方案的支持

ML.NET 0.7 包括矩阵分解,它允许使用用户提供的评级来推荐他们可能喜欢的其他项目。
在某些情况下,您没有来自用户的特定评级,而只有隐式反馈(例如,他们观看了电影但没有对其进行评级)。
ML.NET中的矩阵分解现在可以使用这种类型的隐式数据来训练推荐场景的模型。
可以在此处找到示例用法 。您需要将Microsoft.ML.MatrixFactorization NuGet添加到您的项目中。

已启用将数据保存和加载为二进制文件(IDataView / IDV)

在转换数据后保存数据有时很有用。例如,您可能已将所有文本特征化为稀疏向量,并希望使用不同的培训师执行重复实验,而无需不断重复数据转换。
以ML.NET的二进制格式保存和加载文件可以提高效率,因为它已经过压缩并且已经过模式化。
读取二进制数据文件可以使用mlContext.Data.ReadFromBinary("pathToFile")并且可以使用 写入二进制数据文件来完成mlContext.Data.SaveAsBinary("pathToFile")。

添加了过滤和缓存API

有时需要过滤用于训练模型的数据。例如,您需要删除没有标签的行,或者将模型集中在某些类别的输入上。现在可以使用此处所示的其他过滤器完成此操作。
一些估算器多次迭代数据。您可以选择缓存数据以加快速度,而不是始终从文件中读取数据。这里有一个例子 。

关于ML.NET v0.8的发布说明

标签:不同   有用   迭代   gtest   状态   实验   取数   alt   形式   

原文地址:https://www.cnblogs.com/BeanHsiang/p/10066872.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!