作为产品经理,要如何评估你做的项目成果?

2017-08-30阅读

  我是一个搜索产品经理,对于搜索引擎,个人理解如下:

  搜索结果的好与坏,体现在相关性上,即搜索结果与查询词之间的相关性。

  查阅资料了解到常用的相关性评价指标和量化评价方法:

  一、Cranfield评价体系(线下人工建模)

  Cranfield评价体系由四个环节组成:

抽取代表性的查询词,组成一个规模适当的集合针对查询样例集合,从检索系统的语料库中寻找对应的结果,进行标注(通常人工进行)将查询词和带有标注信息的语料库输入检索系统,对系统反馈的检索结果,使用 预定义好的评价计算公式用数值化的方法来评价检索系统结果和标注的理想结果的接近程度

  以电商网站京东为例:

  • 查询词集合选取

  可选择站内搜索热词排行前1000个作为集合

  • 语料库集合选取

  可选择参与查询的所有线上(即上架状态)sku集合

  • 查询答案集合构建

  通常方式是人工标注的方式来构建查询答案集合,但非常费时费力。

  国际文本信息检索会议(TREC)提出过结果池过滤的人工标注方法:即对于某个查询,利用多个信息检索系统返回前N个结果,将这些结果放在一起构成结果池列表,对池中的结果文档进行人工标注,判断其和查询的相关性。

  即对于京东站内搜索来说,对于某个查询词,采用多个检索系统/权重规则去查询,得到的结果集,再经过人工筛选,给出近标准化的答案集合。

  • 检索结果对比(具体评分方法)

  a、准确率-召回率方法

  对于类似京东一样的电商网站,用户一般只会关心前几页的搜索结果,而不会关心总共返回了多少个sku或spu,即用户对召回率的关心度不高。

  其实对于人工参与标注的结果集,是不完整的,故对于评价指标,一般可采用“Bpref”评价指标:即如果结果集中正确答案排在非正确答案前面,则检索较准确。

  R:人工标注过的前R个相关商品个数;

  SPU1:不相关商品集合;

  SPU2:相关商品集合;

  b、P@N的计算方法

  P@N本身是Precision@N的简称,指的是对特定的查询,考虑位置因素,检测前N条结果的准确率。例如对单次搜索的结果中前50个spu,如果有40个spu为相关商品,则P@50=40/50=0.8。

  使用所有查询的P@N数据,计算算术平均值,用来评判该系统的整体搜索结果质量。N的选取对用户来说,通常只关注搜索结果最前若干条结果,因此对于京东这样的电商网站,一般可以取前2-3页数据,所以N可以取值为P@120或P@180等。

  c、MAP的计算方法

  MAP方法是MeanAveragePrecison,即平均准确率法的简称。其定义是求每个相关文档检索出后的准确率的平均值的算术平均值。系统检索出来的相关商品越靠前(rank越高),MAP就应该越高。如果系统没有返回相关商品,则准确率默认为0。

  例如:假设有两个搜索页面:

  页面1有4个相关商品,页面2有5个相关商品。某系统对于页面1检索出4个相关商品,其rank分别为1,2,4,7;对于页面2检索出3个相关商品,其rank分别为1,3,5。

  对于页面1,平均准确率MAP计算公式为:(1/1+2/2+3/4+4/7)/4=0.83。

  对于页面2,平均准确率MAP计算公式为:(1/1+2/3+3/5+0+0)/5=0.45。

  则MAP=(0.83+0.45)/2=0.64。

  对于京东来说,搜索结果页每页商品数量固定,只是检索出的相关商品与人工预设的结果集有关。

  d、DCG方法

  DCG是英文Discountedcumulativegain的简称,中文可翻译为“折扣增益值”。

  每条结果的相关性分等级来衡量,考虑结果所在的位置,位置越靠前的则重要程度越高等级高(即好结果)的结果位置越靠前则值应该越高,否则给予惩罚。

  比如可以将结果分为3级:Good(好)、Fair(一般)、Bad(差)。

  对应的分值rel为:Good:3 Fair:2 Bad:1

  其中CG是指在这个搜索结果list里面所有的结果的等级对应的得分的总和,如一个搜索结果list页面有P个结果,CG被定义为:reli是第i位结果的得分。CG的统计并不能影响到搜索结果的排序,CG得分高只能说明这个结果页面总体的质量比较高并不能说明这个算法做的排序好或差。









  IDCG(ideal DCG),就是理想的DCG。首先要拿到搜索的结果,人工对这些结果进行排序,排到最好的状态后,算出这个排列下本query的DCG,就是IDCG。

  举例说明,理想的排序应该是3 、3 、2 、2 、1,那么IDCG=3+3+1.26+1+0.43=8.69

  nDCG=DCG/IDCG=7.62/8.69=0.88,从nDCG这个值可以看出目前算法存在的优化空间。





  二、自动化评估(线上评估)

  a、A/BTest

  通过自动抽取流量导入不同分支,使得相应分组的用户看到的是不同产品版本(或不同搜索引擎)提供的结果。





  对于京东这样的电商网站来说,可以分为不同搜索引擎的分流,以及同一搜索引擎不同权重算法来分流,以此判定找出更优解。

  b、InterleavingTest

  该方法设计了一个元搜索引擎,用户输入查询词后,将查询词在几个著名搜索引擎中的查询结果随机混合反馈给用户,并收集随后用户的结果点击行为信息.根据用户不同的点击倾向性,就可以判断搜索引擎返回结果的优劣。

  对于京东来说,即将不同的权重结果(需要做标记)放到同一页面展现给用户,根据用户点击的结果找出最优解。

  三、用户行为分析(线上+线下结合)

  分为用户查询需求分析、用户点击行为分析展开说明:

  • 用户查询需求分析(即发起搜索)

  用户查询环节,可以针对查询词长度、查询词修改率、查询推荐点击率展开分析:

  a、查询词长度分析

  记录用户查询词分词前的长度、查询次数、时间、用户ID,根据数据算出用户查询词长最优长度,可作为人工标注Cranfield评价体系答案结果集的参考依据,同时作为人工设置推荐词、搜索优化重点的参考依据。

  b、查询词修改率分析

  当用户提交查询后,对返回结果不满意,或想要获取更多商品信息时,用户将会重新发起搜索,该过程形成了用户的查询修改行为。

  可针对不同的页面(首页、分类页、搜索结果页等)记录用户发起二次查询的行为数据,若用户的查询修改率较高,则说明当前搜索用户满意度较低,可能原因有:

  搜索结果不精准

  之前用户的搜索词描述不精准

  用户需求不明确,购物目标性不强

  c、查询推荐点击率分析

  以京东为例,有联想词、历史记录词、热搜词推荐,记录不同词用户点击的次数,评价各个功能点的重要性,同时可以作为是否作为重点优化功能的参考。

  • 用户点击行为分析(即搜索结果页点击商品)

  用户在搜索结果页点击行为,侧面反应了用户对搜索结果的判断,其也被用来挖掘相关“隐式反馈”信息。具体可从以下几个方面挖掘用户对搜索结果的评价:

  a、查询点击率分析

  记录搜索结果页用户点击商品的概率:即用户在搜索结果页是否有点击行为。

  对于用户搜索但未点击结果的页面进行分析,用户不点击商品的原因可能为:

  • 用户对搜索结果不满意
  • 用户点击了相关推荐广告
  • 用户不小心误点了该搜索词(推荐词发起搜索)
  • 用户点击属性筛选缩小结果集

  通过用户点击分析可以判断用户的信息需求,也可以判断用户对搜索结果的满意度。

  b、首次点击时间分析

  指搜索引擎返回搜索结果页面和用户首次点击结果页商品之间的时间间隔。

  该段时间是用户浏览搜索结果列表信息的时间,反应了搜索结果展现的效果性能:

  • 首次点击时间间隔短,说明搜索结果展现直观,用户能快速找到自己想要的商品
  • 首次点击时间间隔长,说明搜索结果展现不直观

  c、点击位置分析

  如下图所示,按照搜索结果页给商品橱窗位编号1234……





  以搜索词为维度,在搜索结果页统计用户点击的具体位置占比

  对于某个词,在某个时间段,显示前200个位置点击趋势

  根据程序预设点击位置分布图,与实际点击情况比较,并指出差异点,进行分析,调整权重优化搜索。

  d、点击SKU分析

  对于热搜页面的sku分析其不同时间段被点击的次数,对于变化较大的地方,作出详细分析,评判搜索的准确度

  对于某个SKU,可查看某个时间段内呗点击次数(近7天,近15天,近30天)

  另外,贝叶斯学习模型、信息熵等方式也可以作为评价方式,此处不一一阐述。