最近在开发一个模型,业务的使用频率是一个月一次,可以理解为:模型的结果为每月初输出一次,业务拿到输出结果后进行做功,月底可以统计模型的各项指标。
项目的预期目标是7月份做落地试点,时间不算太急,但是模型中涉及的数据又多又杂,前期花了大量精力在数据探查和认知上,所以留给我做算法设计和开发的时间,就不太多了。
匆匆忙忙地,总算赶在7月中旬,输出了模型结果。
8月初回收了模型对业务的价值和相关的性能指标。
基本结论为:在特定场景下,模型确实是有正向收益的;但是由于存在一些badcase,如果在全部场景下统计指标结果,正向收益值就会被大幅降低。
事实上,这些badcase在数据回测阶段就已经被发现了,但是限于时间太紧张,已经没有精力再去做优化。
在7月中旬向业务输出模型结果后,我便开始思考产生badcase的可能原因,并研发了对应的解决方案。
在一波“闭关修炼”后,最终打通了任督二脉,解决了badcase,改进后的模型在历史数据上的表现,也让人满意。
到了8月初,我基于改进的模型,又输出了8月份的模型结果。
在此之后,我搭建了算法侧的指标看板,以此逐天跟踪各项算法指标和业务指标。
虽然没到8月底,看到的是过程指标而非最终指标,但是每一天看下来,指标几乎都是利好的。
在周会的讨论上,也展示了这些指标。
不过,领导提示到:还应该确认一下算法模型是否有“掐尖”的嫌疑。
此处掐尖,指的是模型并没有太多算法的内涵,只是基于一些简单人工经验而得到的模型。
如果真是这样的话,那么算法的价值就有些小了,因为人工也可以实现。
在仔细求证后发现,模型输出的数据确实有“掐尖”的部分,但是占比不高。
这是很容易理解的:一方面,那些明显好的少部分高质量数据确实被模型筛选出来了;另一方面,模型还能挖掘出一些有潜力的数据。
通过这一轮校验,反而更加证明了算法的意义和价值。
时间来到8月底,终于等到了收获的季节。
首先是在算法侧,我基于开发好的指标看板,对模型8月份的结果进行了复盘总结,确认了模型在实际落地过程中的有效性;然后对比7月份的复盘数据,验证了模型改进的价值。
然后是在产品侧,他们向数据侧提出复盘的数据需求,在此基础上,完成了正式的模型试点报告。
基本结论和算法侧结论几乎相同,在模型指导业务的具体价值指标上甚至还要更好(我自己对数据的理解,还有问题?暂时不重要啦~)。
最后是在业务侧,我和业务方进行了深度的沟通,也得到了他们极其正面的评价:在使用了模型结果后,他们最关心的核心业务指标提升了46%;业务希望在9月份能够扩量使用模型的结果,减量使用人工经验的结果;寻求和算法侧在更多场景下的合作可能性。
针对这个算法模型,从第一版开发到拿到被业务认可的落地效果,用时不到3个月,不过通用的流程基本都涵盖到了,这里画个图,总结一下流程
总体来说,一次迭代就拿到了比较好的业务反馈,应该算是比较顺利的了。
我自己也是很开心的,甚至跟好朋友得瑟了一波业务的正面反馈。
看着自己开发和优化的模型,一点点产生积极的价值,得到别人的认可,这就是所谓的个人价值实现吧。
虽然有一丝丝的虚荣心,但我却真实地享受这种感觉。
这也是我喜欢自己这个职业的一个重要原因,不断产出对业务有价值的新模型,不断收获快乐。
不过需要说明的是,这远不是一个模型的终点,只是达成了业务层面的一个小的里程碑事件,后续还要想办法把模型逐渐推广到全国。
在技术层面,也要建立体系化的模型迭代方案,逐步提升模型的各项指标值。
此外,还应该持续关注模型指标的理论上限和竞对的当前水平,评估已有模型的优化空间。
上两天是教师节,我回所看望了自己的导师。导师的教诲依然没变:要做创新的内容,要把精力放在最有价值的的事情上。
怎么说呢,导师的教诲,我是认可的;他的境界,我却还远远不够。
能够把一个个想法实现并成功落地到应用,就足以满足我当下的价值实现需求,也足够我快乐好多天了~~