前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >为什么有些算法工程师从来不谈业务,不谈解决问题,不谈价值挖掘,开口闭口就是算法模型,炼丹调参工程化?

为什么有些算法工程师从来不谈业务,不谈解决问题,不谈价值挖掘,开口闭口就是算法模型,炼丹调参工程化?

原创
作者头像
1111111
修改2023-01-06 10:57:52
3630
修改2023-01-06 10:57:52
举报
文章被收录于专栏:投诉举报投诉举报

这是一个非常好的问题,问到算法的根本上来了。我觉得从两方面答才能把这个问题答清楚,一个角度是从产品经理的角度,一个角度是从我们算法工程师角度。

先看看产品经理们是怎么想的。我五年前开始当算法部门的技术经理,每天跟产品经理们“混”在一起,我深刻的知道PM们的需求,在一个不太专业的PM眼中,算法模型就像“银弹”一样,可以消灭一切效果问题,想提升CTR就提升CTR,提升CTR的同时还要照顾多样性,还最好让CVR也一起上来。提升不起来那就是这个模型效果不行,算法团队的水平不行,解决问题的能力不行。

其实工程师并不是惧怕某个问题有多难,工程师惧怕的是这个问题根本就没定义清楚。因为问题的定义直接影响着优化目标,甚至是模型的精确的objective function。所以一个不合格的算法PM就像一个搞不清楚状况的单身男女一样,“我期待爱情,但我却不知道我要的爱情是什么?”,算法工程师是希望给你“爱情”,但真的麻烦告诉我你要的“爱情”是什么,因为我真的没办法把“爱情”这个玄幻的东西写进objective function里面去啊。

所以其实硅谷大量成功的PM是工程师转过来的,在对产品有深刻理解的同时,要有精确定义问题的能力。比如说现在我们要解决一个物品冷启动的问题,那么我看中的metrics是在30天内提升物品的覆盖率,同时整个系统的核心商业指标不下降。这个定义就非常精确,有AB Test期限,有优化目标,有问题约束。但你要说我既要提升物品覆盖率,又要提升商业指标,又要兼顾short term/long term revenue。我只能说你是个搞不清爱情到底是什么的痴男怨女了。

我一直坚信在一个大型机构里,一定要坚持让专业的人做专业的事情,这样这个机构才能成功。一个专业的PM就应该擅长提出问题,定义问题,而一个专业的算法工程师就应该擅长在一个固定的问题框架下解决问题。这些角色之间当然应该有合作,但绝对不可以说对方应该把自己的事情做了,要是算法工程师们都是业务专家,擅长定义问题,拓展业务,那么还要PM做什么呢?

那么问题的另一方面肯定是算法工程师的角度了。

我个人在带人的时候最不喜欢的一类新人,就是公司的这也看不上,那也看不上,觉得不是最新的技术,不是最新的模型。其实他们不知道的是,在一个算法上线之前,可能其他工程师已经把所有可能的解都试遍了,挑了一个最合适这个场景的。也许这个问题的提问者是遇到了这类新人吧。我是完全不相信工作了5年以上的算法工程师还成天嚷着要用最新的技术,不用考虑业务和问题本身。

对于算法工程师来说,虽然说定义问题,拓展业务更多是PM的事情,但请务必深刻理解要解决的问题,甚至比PM还要清楚这个问题的细节。我在接到一个问题的时候,会做三件事情,一是打开APP/Device,去真真切切地看一下我要优化的场景,二是去探索一下数据,看一下跟这个问题相关数据的大致分布,用户行为和物品属性的特点,三是从一个“人”的角度而不是机器的角度思考一下,哪些特征是真正重要的。这三件事情做完,才去做算法模型的设计。接到问题之后,两眼一抹黑,直接开始建模,眼睛一直盯着AUC,一眼也没看过产品。我严重怀疑这是在实验室呆久了,只会写学术论文了。

所以问题答完了,不能清晰定义问题的PM不可能是好PM从来不去了解业务的算法也不可能是好算法。两方各司其职,各有所专,这样大家才能都有光明的未来。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档