AI技术内参
洪亮劼
Etsy数据科学主管,前雅虎研究院资深科学家
立即订阅
8784 人已学习
课程目录
已完结 166 讲
0/6登录后,你可以任选6讲全文学习。
开篇词 (1讲)
开篇词 | 你的360度人工智能信息助理
免费
人工智能国际顶级会议 (31讲)
001 | 聊聊2017年KDD大会的时间检验奖
002 | 精读2017年KDD最佳研究论文
003 | 精读2017年KDD最佳应用数据科学论文
004 | 精读2017年EMNLP最佳长论文之一
005 | 精读2017年EMNLP最佳长论文之二
006 | 精读2017年EMNLP最佳短论文
007 | 精读2017年ICCV最佳研究论文
008 | 精读2017年ICCV最佳学生论文
009 | 如何将“深度强化学习”应用到视觉问答系统?
010 | 精读2017年NIPS最佳研究论文之一:如何解决非凸优化问题?
011 | 精读2017年NIPS最佳研究论文之二:KSD测试如何检验两个分布的异同?
012 | 精读2017年NIPS最佳研究论文之三:如何解决非完美信息博弈问题?
013 | WSDM 2018论文精读:看谷歌团队如何做位置偏差估计
014 | WSDM 2018论文精读:看京东团队如何挖掘商品的替代信息和互补信息
015 | WSDM 2018论文精读:深度学习模型中如何使用上下文信息?
016 | The Web 2018论文精读:如何对商品的图片美感进行建模?
017 | The Web 2018论文精读:如何改进经典的推荐算法BPR?
018 | The Web 2018论文精读:如何从文本中提取高元关系?
019 | SIGIR 2018论文精读:偏差和“流行度”之间的关系
020 | SIGIR 2018论文精读:如何利用对抗学习来增强排序模型的普适性?
021 | SIGIR 2018论文精读:如何对搜索页面上的点击行为进行序列建模?
022 | CVPR 2018论文精读:如何研究计算机视觉任务之间的关系?
023 | CVPR 2018论文精读:如何从整体上对人体进行三维建模?
024 | CVPR 2018论文精读:如何解决排序学习计算复杂度高这个问题?
025 | ICML 2018论文精读:模型经得起对抗样本的攻击?这或许只是个错觉
026 | ICML 2018论文精读:聊一聊机器学习算法的“公平性”问题
027 | ICML 2018论文精读:优化目标函数的时候,有可能放大了“不公平”?
028 | ACL 2018论文精读:问答系统场景下,如何提出好问题?
029 | ACL 2018论文精读:什么是对话中的前提触发?如何检测?
030 | ACL 2018论文精读:什么是“端到端”的语义哈希?
复盘 7 | 一起来读人工智能国际顶级会议论文
搜索核心技术 (28讲)
031 | 经典搜索核心算法:TF-IDF及其变种
032 | 经典搜索核心算法:BM25及其变种(内附全年目录)
033 | 经典搜索核心算法:语言模型及其变种
034 | 机器学习排序算法:单点法排序学习
035 | 机器学习排序算法:配对法排序学习
036 | 机器学习排序算法:列表法排序学习
037 | “查询关键字理解”三部曲之分类
038 | “查询关键字理解”三部曲之解析
039 | “查询关键字理解”三部曲之扩展
040 | 搜索系统评测,有哪些基础指标?
041 | 搜索系统评测,有哪些高级指标?
042 | 如何评测搜索系统的在线表现?
043 | 文档理解第一步:文档分类
044 | 文档理解的关键步骤:文档聚类
045 | 文档理解的重要特例:多模文档建模
046 | 大型搜索框架宏观视角:发展、特点及趋势
047 | 多轮打分系统概述
048 | 搜索索引及其相关技术概述
049 | PageRank算法的核心思想是什么?
050 | 经典图算法之HITS
051 | 社区检测算法之“模块最大化 ”
052 | 机器学习排序算法经典模型:RankSVM
053 | 机器学习排序算法经典模型:GBDT
054 | 机器学习排序算法经典模型:LambdaMART
055 | 基于深度学习的搜索算法:深度结构化语义模型
056 | 基于深度学习的搜索算法:卷积结构下的隐含语义模型
057 | 基于深度学习的搜索算法:局部和分布表征下的搜索模型
复盘 1 | 搜索核心技术模块
推荐系统核心技术 (22讲)
058 | 简单推荐模型之一:基于流行度的推荐模型
059 | 简单推荐模型之二:基于相似信息的推荐模型
060 | 简单推荐模型之三:基于内容信息的推荐模型
061 | 基于隐变量的模型之一:矩阵分解
062 | 基于隐变量的模型之二:基于回归的矩阵分解
063 | 基于隐变量的模型之三:分解机
064 | 高级推荐模型之一:张量分解模型
065 | 高级推荐模型之二:协同矩阵分解
066 | 高级推荐模型之三:优化复杂目标函数
067 | 推荐的Exploit和Explore算法之一:EE算法综述
068 | 推荐的Exploit和Explore算法之二:UCB算法
069 | 推荐的Exploit和Explore算法之三:汤普森采样算法
070 | 推荐系统评测之一:传统线下评测
071 | 推荐系统评测之二:线上评测
072 | 推荐系统评测之三:无偏差估计
073 | 现代推荐架构剖析之一:基于线下离线计算的推荐架构
074 | 现代推荐架构剖析之二:基于多层搜索架构的推荐系统
075 | 现代推荐架构剖析之三:复杂现代推荐架构漫谈
076 | 基于深度学习的推荐模型之一:受限波兹曼机
077 | 基于深度学习的推荐模型之二:基于RNN的推荐系统
078 | 基于深度学习的推荐模型之三:利用深度学习来扩展推荐系统
复盘 2 | 推荐系统核心技术模块
广告系统核心技术 (18讲)
079 | 广告系统概述
080 | 广告系统架构
081 | 广告回馈预估综述
082 | Google的点击率系统模型
083 | Facebook的广告点击率预估模型
084 | 雅虎的广告点击率预估模型
085 | LinkedIn的广告点击率预估模型
086 | Twitter的广告点击率预估模型
087 | 阿里巴巴的广告点击率预估模型
088 | 什么是“基于第二价位的广告竞拍”?
089 | 广告的竞价策略是怎样的?
090 | 如何优化广告的竞价策略?
091 | 如何控制广告预算?
092 | 如何设置广告竞价的底价?
093 | 聊一聊“程序化直接购买”和“广告期货”
094 | 归因模型:如何来衡量广告的有效性
095 | 广告投放如何选择受众?如何扩展受众群?
096 | 如何利用机器学习技术来检测广告欺诈?
自然语言处理及文本处理核心技术 (0讲)
该章节暂未更新内容,敬请期待
计算机视觉核心技术 (0讲)
该章节暂未更新内容,敬请期待
数据科学家与数据科学团队养成 (0讲)
该章节暂未更新内容,敬请期待
热点话题讨论 (0讲)
该章节暂未更新内容,敬请期待
结束语 (0讲)
该章节暂未更新内容,敬请期待
AI技术内参
登录|注册

040 | 搜索系统评测,有哪些基础指标?

洪亮劼 2017-12-04
我在之前几周的专栏文章里主要讲解了最经典的信息检索(Information Retrieval)技术和基于机器学习的排序学习算法(Learning to Rank),以及如何对查询关键字(Query)进行理解,包括查询关键字分类、查询关键字解析以及查询关键字扩展。这些经典的技术是 2000 年后开始流行的各类搜索引擎的核心技术。
在进一步介绍更多的搜索引擎技术前,我觉得有必要专门抽出一周时间,来好好地看一下搜索系统的评测(Evaluation)以及我们经常使用的各类指标(Metric)。俗话说得好,“如果你不能衡量它,你就不能改进它”(If You Can’t Measure It, You Can’t Improve It)。意思其实就是说,对待一个系统,如果我们无法去衡量这个系统的好坏,没有相应的评测指标,那就很难真正地去琢磨怎么改进这些指标,从而达到提升系统的目的。
虽然我们这里是在搜索系统这个重要场景中讨论评测和指标,但实际上我们这周要讨论的很多细节都可以应用到很多类似的场景。比如,我们后面要讨论的推荐系统、广告系统等,在这些场景中几乎就可以无缝地使用这周要讲的很多内容。

线下评测

假设你今天开发了一个新软件,比如说是一个最新的手机软件,你怎么知道你的用户是不是喜欢你的软件呢?你怎么知道你的用户是不是愿意为你的软件掏钱呢?
评测的核心其实就是了解用户的喜好。最直接的方法,当然是直接询问用户来获得反馈。例如你可以对每一个下载了你手机软件的用户强行进行问卷调查,询问他们对待新软件的态度。
然而,我们很快就会发现这样的方法是行不通的。姑且不说用户是否会因为这样强行的方式产生反感,我们是不是能通过这些调查问卷获得用户的真实反馈,这本身就是一个问题。这里面涉及到调查问卷设计的科学性问题。
即便这些调查问卷都能完整准确地反映出用户对手机软件的看法,真正实施起来也会面临种种困难。如果这款手机软件的用户数量有百万甚至千万,那我们就要进行如此大规模的问卷调查,还要处理调查后的数据,显然这样做的工作量非常大。而这些调查问卷是没法反复使用的,因为下一个版本的软件更新后,用户的态度就会发生改变,这样的方式就没法系统地来帮助软件迭代。
那么如何才能形成一组数据来帮助系统反复迭代,并且还能够减少人工成本,这就成了一个核心问题。
在信息检索系统开发的早年,研究人员和工程师们就意识到了这个核心问题的重要性。英国人赛利尔·克莱温顿(Cyril Cleverdon)可以算是最早开发线下测试集的计算机科学家。
赛利尔生于 1914 年,在英国的布里斯托(Bristol)图书馆工作了很长时间。从 1950 年开始,赛利尔就致力于开发信息检索系统,以提高图书馆查询的效率。1953 年他尝试建立了一个小型的测试数据集,用于检测图书管理员查找文档的快慢。这个工作最早发表于 1955 年的一篇论文(参考文献 [1])。
这之后,英美的一些早期信息检索系统的研发都开始顺应这个思路,那就是为了比较多个系统,首先构造一个线下的测试数据集,然后利用这个测试集对现有的系统反复进行改进和提升。如果你想对早期测试集的构造以及信息有所了解,建议阅读文末的参考文献 [2]。
那么,当时构造的这些测试数据集有些什么特点呢?
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《AI技术内参》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(6)

  • 黑翼天佑
    可以通过选择不同的阈值来画出roc曲线,然后计算auc来评价

    作者回复: 这是一个比较好的方法。

    2017-12-15
    2
  • xinfeng1i
    依次查看top1,top3,top5等不同提取数量的精度和召回,可以估计排序的好坏。
    2019-05-08
  • 牧云
    通过用户对搜索结果的选择,选择与不选择,构建二分,来判断排序的好坏
    2019-03-16
  • 幻大米
    「如果我们返回所有的文档,“精度”和“召回”都将成为 1」精度不是 1 吧?
    2018-12-24
  • 您好!请问如果正负样本比差别很大,比如1/1000的情况下,上述这些指标以及AUC是否就不准导致无法作为参考了?如果这样,应该如何应对正负样本比悬殊时模型评估的问题呢? 谢谢!
    2018-03-03
  • 老敖
    在计算召回或者精确率的时候,不是只计算文档个数,而是把它变成一个浮点数,把排序的相关性也考虑进去。就是相关性大的,查出来一篇顶两篇。是这样吗?

    作者回复: 计算AUC是一种思路。

    2017-12-04
收起评论
6
返回
顶部