若有完美,必有谎言|产品策略模型设计的关键点

Abstract:产品策略模型是一个黑箱,包含输入输出和计算过程。模型设计过程中需要注意:模型不分高下分是否合适;处理高信息量的能力;需要衡量算法迭代的指标;以置信区间定计算的精度,不要让精度过犹不及;考虑多因素的涌现,和增强对失控的参数控制;人对业务的理解构成模型的边界。而最重要的是先想明白产品遇到了什么样的情境,再思考需要使用产品策略模型来解决什么问题(因时制宜)

1.模型不分高下,只有是否合适

如推荐系统一定要用协同过滤或者机器学习”,“搜索系统一定带语义分析模糊匹配”,“排序系统 一定要用edgerank”这些都是先入为主的高下划定,实际的模型选择需要考虑实际业务场景和用户需求去选择最合适的,而不一定是理论上最好的。
产品策略模型设计是一个复杂且需要在实践中不断打磨改进的过程。有时候一番计算得到的参数,不如二分法试出来的参数好。很多看似没有严格数学证明和依据的简单策略,却能起到好的作用。

2.信息量!处理高信息量的能力

模型 = “黑箱”,只有输入和输出两端。输入的信息经计算再输出分析结果。
在模型分析能力相同的情况下,输入的信息量越大,分析结果效果越好。所以能承载的信息量是模型的关键因素。
处理的信息量不一定越大越好,但随着模型的发展,能处理更多信息的模型最终效果一定很好。

3.指标:算法迭代需要目标值,且这个目标值需要在算法模型迭代过程中,随模型变化而变化,以确定迭代方向是否正确。

如AlphaGo的目标是获胜;搜索的目标是准确率(precise)、召回率(reward),或人工评估的nDGG值。
通用测试方法:对数据需要划出测试集,用来验证算法的效果。比如知乎推荐分析每个人数据预测出了用户可能会喜欢的内容,可以在第二天使用用户真实的行为数据和之前的预测进行对比,来确认效果。
指标的意义:1.衡量算法优劣和促使算法迭代;2.化抽象为具象:让不明白算法原理的人能在黑箱上看到一个表盘,知道每次迭代后算法有多大改进。

4.置信区间和精度:以置信区间定计算的精度,超过值本身置信区间的精度是没多大意义的(不要让精度过犹不及)

算法结果够用就行,片面强调计算的准确性是没有必要的。比如要计算一个数据精度本身在+-1范围波动的值,而理论计算得到一个1.8的值本身就够用了,如果画费更大的力气计算出1.834,其实就是无效的。比如要预测未来的销售或者需求变化这些本身波动比较大的数据,花大量的经历计算一个足够精确的值本身就没有太大意义,因为太精确就超过了值本身的置信区间。精度一定要和置信区间匹配,否则就是浪费。

5.考虑多因素的涌现,和增强对失控的参数控制:好算法不会因输入参数的扰动或数据中的极值而极大影响输出结果的准确性。而现实情况下异常数据和参数扰动无法避免,需要考虑多个因素的系统,提高抗风险能力。最好是多个因素组合后涌现出结果,而不能依赖很多参数有一个非常精确的值才能起作用。

一个想要完全精确控制算法参数起作用的模型,很有可能就是调整了一个bad case,又引起了一堆别的bad case。

6.模型的边界,是人对业务的理解:模型非万能,不可能考虑所有信息入参。因此需要人对结果做有效地干预,并依据业务经验调整算法模型。模型一方面淘汰简单机械重复性工作,一方面又对模型设计者、产品运营者提出了更高的要求。

1
2
3
4
5
6
7
8
9
10
11
12
13
//以淘宝的个性化推荐遍布全站的前后为例:

使用前的人工工作:

- 需要大量的运营、文案编辑去填写补充布局(后被替代)

使用后的人工工作:

- 运营:双十一怎么运营,什么营销测流;怎么更好的利用个性化推荐引擎,抓住用户眼球
- 模型设计:大量人工的标注和边界策略以保证个性化推荐引擎的有效性;通过人对业务的理解不断修正模型;人对业务的理解形成的外围策略,构成了模型的边界.


总结:算法非万能,需要人不断调整修正算法模型,以及人工对算法结果进行有效干预。

// 若有完美,必有谎言.Processing…


Reference

产品策略模型方法论

Thanks!