Netflix工程总监眼中的分类算法:深度学习优先级最低

简介:
英文原文: What are the advantages of different classification algorithms?(翻译/王玮编辑/周建丁)

  【编者按】针对 Quora 上的一个老问题:不同分类算法的优势是什么?Netflix 公司工程总监 Xavier Amatriain 近日给出新的解答,他根据奥卡姆剃刀原理依次推荐了逻辑回归、SVM、决策树集成和深度学习,并谈了他的不同认识。他并不推荐深度学习为通用的方法。

  不同分类算法的优势是什么?例如有大量的训练数据集,上万的实例,超过 10 万的特征,我们选择哪种分类算法最好?Netflix 公司工程总监 Xavier Amatriain 认为,应当根据奥卡姆剃刀原理(Occam's Razor)来选择算法,建议先考虑逻辑回归。

  选择一个合理的算法可以从很多方面来考察,包括:

  1. 训练实例的数量?
  2. 特征空间的维度?
  3. 是否希望该问题线性可分? 
  4. 特征是否是独立的?
  5. 是否预期特征能够线性扩展?
  6. 过度拟合是否会成为一个问题?
  7. 系统在速度/性能/内存使用等方面的要求如何?
  8. ……

  这个看起来有点吓人的列表并没有直接回答问题,但我们可以按照奥卡姆剃刀原则解决这个问题:用能够满足需求的最简单的算法,如果绝对的必要,不要增加复杂性。

  逻辑回归

  作为一般的经验法则,我建议先考虑逻辑回归(LR,Logistic Regression)。逻辑回归是一个漂亮乖巧的分类算法,可以训练你希望的特征大致线性和问题线性可分。你可以很容易地做一些特征引擎把大部分的非线性特征转换为线性。逻辑回归对噪声也相当强劲,能避免过度拟合,甚至使用 L2 或 L1 正则化做特征选择。逻辑回归也可以用在大数据场景,因为它是相当有效的,并且可以分布使用,例如 ADMM。 逻辑回归的最后一个优点是,输出可以被解释为概率。这是一个好的附加作用,例如,你可以使用它排名而不是分类。

  即使在你不希望逻辑回归 100% 地工作,你也可以帮自己一个忙,在使用“票友”办法之前,运行一个简单的 L2 正则化逻辑回归作为基线。

  好了,现在你已经设置逻辑回归基线,下一步你应该做的,我基本上会推荐两个可能的方向:支持向量机(SVM)或者决策树集成。如果我不知道你的具体问题,我肯定会选择后者,但我将开始描述为什么 SVM 可能是一个值得考虑的方法。

  支持向量机

  支持向量机使用一个与 LR 不同的损失函数(Hinge)。它们也有不同的解释(maximum-margin)。然而,在实践中,用线性核函数的 SVM 和逻辑回归是没有很大的不同的(如果你有兴趣,你可以观察 Andrew Ng 在他的 Coursera 机器学习课程如何从逻辑回归中驱动 SVM)。用 SVM 代替逻辑回归的一个主要原因可能是因为你的问题线性不可分。在这种情况下,你将不得不使用有非线性内核的 SVM(如 RBF)。事实上,逻辑回归也可以伴随不同的内核使用,但出于实际原因你更可能选择 SVM。另一个使用 SVM 的相关理由可能是高维空间。例如,SVM 已经被报道在工作文本分类方面做得更出色。

  不幸的是,SVM 的主要缺点是,它们的训练低效到痛苦。所以,对于有大量训练样本的任何问题,我都不会推荐 SVM。更进一步地说,我不会为大多数“工业规模”的应用程序推荐 SVM。任何超出玩具/实验室的问题可能会使用其他的算法来更好地解决。

  决策树集成

  第三个算法家族:决策树集成(Tree Ensembles)。这基本上涵盖了两个不同的算法:随机森林(RF)和梯度提升决策树(GBDT)。它们之间的差异随后再谈,现在先把它们当做一个整体和逻辑回归比较。

  决策树集成有超过 LR 的不同优势。一个主要优势是,它们并不指望线性特征,甚至是交互线性特性。在 LR 里我没有提到的是,它几乎不能处理分类(二进制)特性。而决策树集成因为仅仅是一堆决策树的结合,可以非常好地处理这个问题。另一主要优点是,因为它们构造了(使用 bagging 或 boosting)的算法,能很好地处理高维空间以及大量的训练实例。

  至于 RF 和 GBDT 之间的差别,可以简单理解为 GBDT 的性能通常会更好,但它们更难保证正确。更具体而言,GBDT 有更多的超参数需要调整,并且也更容易出现过度拟合。RF 几乎可以“开箱即用”,这是它们非常受欢迎的一个原因。

  深度学习

  最后但并非最不重要,没有深度学习的次要参考,这个答案将是不完整的。我绝对不会推荐这种方法作为通用的分类技术。但是,你可能会听说这些方法在某些情况下(如图像分类)表现如何。如果你已经通过了前面的步骤并且感觉你的解决方案还有优化的空间,你可能尝试使用深度学习方法。事实是,如果你使用一个开源工具(如 Theano)实现,你会知道如何使这些方法在你的数据集中非常快地执行。

  总结

  综上所述,先用如逻辑回归一样简单的方法设定一个基准,如果你需要,再使问题变得更加复杂。这一点上,决策树集成可能正是要走的正确道路,特别是随机森林,它们很容易调整。如果你觉得还有改进的余地,尝试 GBDT,或者更炫一些,选择深度学习。

  你还可以看看 Kaggle 比赛。如果你搜索关键字“分类”,选择那些已经完成的,你能找到一些类似的东西,这样你可能会知道选择一个什么样的方法来赢得比赛。在这一点上,你可能会意识到,使用集成方法总容易把事情做好。当然集成的唯一问题,是需要保持所有独立的方法并行地工作。这可能是你的最后一步,花哨的一步。

  编辑点评:Xavier Amatriain 不推荐深度学习为通用算法的理由,并不能说是因为深度学习不好,而是因为深度学习会增加复杂性及成本,却无法保证在所有的场景表现出比逻辑回归、SVM 及决策树集成更优的结果。事实上,Xavier Amatriain 的 Netflix 团队早已开始研究人工神经网络和深度学习技术,希望借助 AWS 云服务和 GPU 加速的分布式神经网络,分析网民最爱看的电影电视剧,实现节目的个性化推荐。

Netflix 推荐系统架构(图片来自 Xavier Amatrain 参与撰写的 Netflix 官方博客)

  此后,Xavier Amatriain 还分享了 Netflix 机器学习实践的十大经验教训,大致包括:

  1. 更多的数据需要与更好的模型之匹配
  2. 你可能不需要所有的大数据
  3. 更复杂的模型未必意味着更好的结果,可能是你的样本集太简单
  4. 要充分考虑你的训练数据
  5. 学会处理偏差
  6. UI 是联系算法和最重要的用户之间唯一通道
  7. 正确的演进方式比数据和模型更重要
  8. 分布式算法重要,知道在哪个层级使用它更重要
  9. 选择合适的度量自动超参数优化
  10. 并非所有的事都能离线完成,近线处理也是一种选择
相关文章
|
2天前
|
机器学习/深度学习 数据采集 人工智能
ICLR 2024:RLHF有了通用平台和基准,天大开源,专攻现实决策场景
【4月更文挑战第21天】天津大学在ICLR 2024发布RLHF新框架Uni-RLHF,以人类反馈引导强化学习,降低奖励函数设计需求,适应现实决策场景。该框架提供通用平台和基准,支持大规模众包注释,促进研究。尽管面临准确捕捉人类反馈、数据质量和多任务处理等挑战,但开源特性加速了学术进步。[链接](https://arxiv.org/abs/2402.02423)
10 0
|
7天前
|
人工智能
MIT等首次深度研究集成LLM预测能力:可媲美人类群体准确率
【4月更文挑战第16天】研究人员集成12个大型语言模型(LLM)组成“硅基群体”,在预测比赛中与925名人类预测者对比。研究发现,LLM群体的预测准确性与人类群体无显著差异,且通过集成可抵消个体模型的偏差,提高预测准确。GPT-4和Claude 2等模型结合人类预测后,准确度提升17%至28%。然而,个别LLM预测精度不一,模型选择和校准度是提升预测性能的关键,同时LLM在时间跨度和现实场景适应性方面仍有挑战。
19 6
MIT等首次深度研究集成LLM预测能力:可媲美人类群体准确率
|
4月前
|
机器学习/深度学习 存储 人工智能
极智AI | 谈谈模型量化组织方式
本文主要聊一下深度学习模型量化组织方式。
123 0
|
11月前
|
机器学习/深度学习
斯坦福最新研究警告:别太迷信大模型涌现能力,那是度量选择的结果(2)
斯坦福最新研究警告:别太迷信大模型涌现能力,那是度量选择的结果
115 0
|
11月前
|
机器学习/深度学习 编解码 人工智能
斯坦福最新研究警告:别太迷信大模型涌现能力,那是度量选择的结果(1)
斯坦福最新研究警告:别太迷信大模型涌现能力,那是度量选择的结果
136 0
|
11月前
|
自然语言处理 算法 数据挖掘
ACL2022 | 清华大学、DeepMind等指出现有小样本学习方法并不稳定有效,提出评价框架
ACL2022 | 清华大学、DeepMind等指出现有小样本学习方法并不稳定有效,提出评价框架
118 0
|
11月前
|
人工智能 自然语言处理 API
超越现有指标57.3%,邢波教授、胡志挺教授团队提出统一NLG评价框架
超越现有指标57.3%,邢波教授、胡志挺教授团队提出统一NLG评价框架
|
11月前
|
机器学习/深度学习 人工智能 算法
AI生成高数题,难出新高度:MIT提出首个可出题、做题、评分的算法模型
AI生成高数题,难出新高度:MIT提出首个可出题、做题、评分的算法模型
363 0
|
人工智能 自然语言处理 API
超越现有指标57.3%,邢波教授、胡志挺教授团队提出统一NLG评价框架
超越现有指标57.3%,邢波教授、胡志挺教授团队提出统一NLG评价框架
143 0
超越现有指标57.3%,邢波教授、胡志挺教授团队提出统一NLG评价框架
|
机器学习/深度学习 人工智能 算法
AAAI 2021 | 华为诺亚方舟实验室AI&上交大叶南阳提出算法DecAug,面向多维度非独立同分布域泛化问题
华为诺亚方舟实验室AI理论团队和上海交通大学叶南阳联合提出一种面向多维度非独立同分布域泛化问题的算法DecAug 。
615 0
AAAI 2021 | 华为诺亚方舟实验室AI&上交大叶南阳提出算法DecAug,面向多维度非独立同分布域泛化问题