我为什么要了解 AI 架构?

数据挖掘 机器学习 深度学习 美国有线电视新闻网 机器学习模型 伯特
2021-09-30 06:20:48

为什么我应该了解某些 AI 架构的深层发生了什么?

例如 LSTM-BERT- Partial Conv... 这样的架构。当我可以在 Internet 上找到任何模型或任何实现时,我为什么要了解正在发生的事情?

2个回答

你是对的,如果你只是想应用它们,你实际上不需要知道架构。

但是有一些原因可以解释为什么理解架构会很好。

  • 模型通常无法解决您的问题。在这种情况下,您将不得不调整模型参数等,以便将模型应用于您的问题。因此,架构知识对于调试非常重要。
  • 如果您想在生产中使用该模型,您应该能够向业务人员解释它是如何工作的,它什么时候会失败以及它的局限性是什么。
  • 如果您想开发新方法,那么对当前模型的深入了解将是不可避免的。
  • 如果您想部署您没有正在运行的实现的系统。

我了解到您正在寻找捷径。您可以阅读有关架构的信息并生成在性能基准测试中得分很高的实现。尽管性能感觉非常有益,但这并不表明您做得很好或提供了高质量的模型。那么所有额外的斗争有什么用呢?

流行的算法和架构发生了变化。每个人都可以了解架构的优势和局限性列表。理解底层技术的过程是一个教你如何以批判性和半独立的方式评估架构及其在特定环境中的使用的过程*。从这个角度来看,您当前正在查看的架构只是一种教学工具。

知道架构有限制并不意味着您可以:

  • 识别该限制是否适用于您的用例。
  • 了解限制的影响有多大。
  • 如何测试或测量限制的程度。
  • 或者如何减轻或补偿限制。

以上所有内容都需要对架构的组件有深入的了解。ProPublica 对算法偏差的报道(通过 Wayback Machine)是开发人员可能已经知道他们算法的局限性的一个很好的例子。如果你用有偏差的数据训练一个模式匹配算法,你会得到一个具有相同偏差的模型。这是众所周知的,那么这是怎么发生的呢?

这些模型的开发者是否根本不知道这种风险?他们不在乎吗?或者,他们是否没有意识到这种限制对他们的用例意味着什么以及如何减轻它?

*我做的是实现,不是原创研究。但我需要能够阅读出版物并了解它们的内容如何应用于我的用例——即使该技术从未在类似的环境中应用过。