ML&DEV[11] | 浅谈模型的局限性

火山方舟向量数据库大模型

【 ML&DEV 】

这是大家没有看过的船新栏目!ML表示机器学习,DEV表示开发,本专栏旨在为大家分享作为算法工程师的工作,机器学习生态下的有关模型方法和技术,从数据生产到模型部署维护监控全流程,预备知识、理论、技术、经验等都会涉及,近期内容以入门线路为主,敬请期待!

往期回顾:

由于很多算法工程师都是从机器学习入门,导致很多问题的解决都是从机器学习入手,但其实,在我目前的实验经验下,机器学习并不是银弹,实际上还有很多问题,同时作为一名算法,我们应该知道更多解决问题的方案,而不是简单地倒腾模型,只是炼丹而已。

模型的局限性

说模型的局限性,就和大家列举出来。

  • 模型很多都在解释和理解语义,但实际上并非所有事情都可以用语义来解释。少年的你是电影,但是年轻的你就不是。
  • 数据依赖性,首先是数据量的依赖性,没有数据根本无法建立合适的模型。
  • 还是数据依赖性,数据质量的依赖性,你必须有的是高质量的数据,标签都错了一半,那还训练啥。
  • 模型的计算性能,尤其是比较复杂的深度学习模型,一般耗时都会比较长。
  • 模型的准确性不一定足够,一般情况下有好的数据能达到80左右,但是要提升的代价就会比较高了,无论会实验时间还是计算时间成本都很高。
  • 更新与变化速度慢。对于带一定实时性的任务,会快速改变的,例如分类,某一个样本会瞬间从A类变成B类,那分类模型其实不能很好地处理了。

诚然,模型是很多新手最容易想得到的方法,但绝对不是最适合第一个使用的方法。

怎么做

那么具体应该怎么做呢?没有模型我们手里又能有什么。

我这里希望大家首先应该思考的是,规则能否解决实际的问题,毕竟——没有机器学习模型,以前的人就活不下去了吗?我先来说说规则的好处:

  • 开发速度快,说得简单点是if-else,当然也有困难的,可能会涉及一些数据结构与算法,但也比模型试验来的快。
  • 准确度高。莫西宁的泛化能力诚然更好,但是论准确性,规则的准确性更高。
  • 确定性高。对于结果的预期能更加明确,知道什么原因正确和错误。
  • 可控性高。对于结果的干预更快,也更加容易。
  • 低数据依赖,只需要一些数据辅助分析即可,有时候还可以自己造一些。

那么规则应该怎么做,我来写个流程:

  • 确认目标。确认你的目标是什么,借助目标确定目标认定的评价手段和指标。
  • 分析case。分析具体问题中存在的case,例如文本分类的话就看看具体的样本,具有什么规律,有这个规律就可以考虑设计方案了。
  • 设计方案,根据你的具体任务和你分析的case,开始设计方案,要词典开始构造词典,要规则开始设计规则。
  • 检验方案,查看你的方案效果如何,有没有达到预期,还有什么问题,如果还有问题就想办法解决这个问题。
  • 完成方案,查看方案是否达到上线要求。

模型就这么不堪吗

当然的,模型肯定不是没用,他也有他自己本身的优点,这也是他成为主流的一个重要原因。

  • 泛化能力强,说白了就是召回率高,所以适合拿来做兜底,规则处理不了的问题可以用它捞一点回来。
  • 很多不可解释或者内容复杂需要综合考虑的,则需要模型,例如推荐系统的排序模块,在逐步拓展后需要考虑的东西很多时,就需要模型来做。

因此,需要考虑的是这个问题下是否需要模型,看你有没有上面的问题,如果有则要考虑模型了。

但是,使用模型是有注意事项的。

  • 模型的耗时是否有限制,有的话就要限制模型的计算线路了,例如RNN系列可能就不合适了。
  • 模型体积,内存的占用。
  • 确认好使用模型的收益。

至于数据之类的就是前提问题了上面提到过,此处不赘述啦。

最终总结一下

本文其实旨告诉大家,模型不是万能的,而有更加理想的可选方法,具体的思路如下。

  • 遇到问题,要考虑该问题最适合的方法,不是一上来就要用模型。
  • 模型和规则有各自的优缺点,要根据实际情况进行选择。
  • 理解模型本身的局限性,规则的优缺点,从而进行选择。

没错,几条其实都在劝大家,好好选,好好分析,模型不是你的唯一的选择。

picture.image

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
如何利用云原生构建 AIGC 业务基石
AIGC即AI Generated Content,是指利用人工智能技术来生成内容,AIGC也被认为是继UGC、PGC之后的新型内容生产方式,AI绘画、AI写作等都属于AIGC的分支。而 AIGC 业务的部署也面临着异构资源管理、机器学习流程管理等问题,本次分享将和大家分享如何使用云原生技术构建 AIGC 业务。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论