谷歌机器学习规则要点简析:43条黄金法则 (3)

通常,机器学习尝试解决的问题并不是全新的问题。有一个现有的系统,它可用于排名、分类,或解决您正尝试解决的任何问题。这意味着有多种规则和启发式算法。使用机器学习进行调整后,此类启发式算法可为您提供便利。您应该挖掘自己的启发式算法,了解它们所包含的任何信息,原因有以下两点。首先,向机器学习系统的过渡会更平稳。其次,这些规则通常包含大量您不愿意丢弃的关于系统的直觉信息。您可以通过以下四种方法使用现有启发式算法:

使用启发式算法进行预处理。如果特征非常好,则可以选择执行此操作。例如,在垃圾邮件过滤器中,如果发件人已被列入黑名单,则不要试图重新学习“已列入黑名单”的含义。屏蔽该邮件即可。这种方法最适合在二元分类任务中使用。

创建特征。直接通过启发式算法创建特征是一种很好的做法。例如,如果您使用启发式算法来计算查询结果的相关性分数,则可以将此分数纳为一个特征的值。您日后可能想要使用机器学习技术调整该值(例如,将该值转换为一个有限离散值组中的一个,或与其他特征相组合),但是首先请使用启发式算法生成的原始值。

挖掘启发式算法的原始输入。如果某个应用启发式算法结合了安装次数、文本中的字符数以及星期值,考虑将这些内容拆分开来,并作为输入单独提供给学习算法。部分适用于集成学习的技巧也适用于此(请参阅第 40 条规则)。

修改标签。当您感觉启发式算法会获取当前标签中未包含的信息时,可以选择进行此操作。例如,如果您正在尝试最大程度地增加下载次数,但同时也想要优质的内容,则可能的解决方案是用标签乘以应用获得的平均星数。您可以非常灵活地修改标签。请参阅“您的第一个目标”。

在机器学习系统中使用启发式算法时,请务必留意是否会带来额外的复杂性。在新的机器学习算法中使用旧启发式算法有助于实现平稳过渡,但思考下是否有可以达到相同效果的更简单的方法。

 

监控

 

在一般情况下,请实行良好的警报安全机制,例如设计解决警报的步骤以及提供“信息中心”页面。

 8 条规则:了解您的系统对新鲜程度的要求。

 

如果您使用一天前的模型,效果会降低多少?一周前的模型呢?一个季度前的模型呢?此类消息有助于您了解需要优先监控哪些方面。如果一天不更新模型会对您的产品质量产生严重影响,则最好让工程师持续观察相关情况。大多数广告投放系统每天都有新广告要处理,并且必须每天更新。例如,如果不更新 Google Play 搜索的机器学习模型,则不到一个月便会产生负面影响。Google+ 热门信息的某些模型中没有帖子标识符,因此无需经常导出这些模型。其他具有帖子标识符的模型的更新频率要高得多。另请注意,新鲜程度会随着时间而改变,尤其是在向模型中添加特征列或从中移除特征列时。

 

 9 条规则:先检测问题,然后再导出模型。

很多机器学习系统都会经历导出模型以应用模型的阶段。如果导出的模型存在问题,则是面向用户的问题。

在导出模型之前,请进行健全性检查。具体而言,确保模型在处理预留数据方面表现合理。或者说,如果您一直认为数据存在问题,请不要导出模型。很多经常部署模型的团队在导出模型之前,会先检查 ROC 曲线下面积(简称 AUC)。尚未导出的模型存在问题时,需要发送电子邮件提醒;但面向用户的模型出现问题时,可能需要通过一个页面进行宣布。 因此,最好先等待检查完毕并确保万无一失后再导出模型,以免对用户造成影响。

 10 条规则:注意隐藏的问题。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzfxsz.html