wshuyi的个人博客分享 http://blog.sciencenet.cn/u/wshuyi

博文

如何免费获得高质量标注数据? 精选

已有 7177 次阅读 2019-6-12 09:46 |系统分类:科研笔记| 数据科学, 标注

用第一性原理,破解科研数据获取难题。

标注

自从开始了解机器学习以后,想必你已经发现,数据分析领域,标注(annotation)是很重要的。

请你再次回顾一下这张图。

我多次外出讲座时,这张图总能让与会者感到眼前一亮。

图片的原作者是华盛顿大学的 Pedro Domingos 教授。但是因为许多著名的机器学习课程争相引用,因此现在这张图已经传遍全网。

注意这里的机器学习,实际上是特指“监督式”(supervised)。关于非监督式机器学习,你可以参考《如何用Python从海量文本抽取主题?》一文的介绍。

这幅图里面,下方的“Output”实际上是指标记的(annotated)输出结果(labels)。监督式机器学习,实际上就是要以输入数据和标记,来自动构造程序,从而可以被用来处理更多的新数据。

所以你看,机器模型能够学到规律,靠的就是标注

咱们介绍过的计算机视觉分类,便需要有人来标注物体名称。例如猫还是狗,哆啦A梦还是瓦力。

再比如 IMDB 影片评论数据,也需要先搞清楚究竟是正向情感,还是负向情感。

当然,上面这个 IMDB 评论可以看做是特例。回顾你在豆瓣或者淘宝打分的经验。是不是要写一条评论的同时,还得提交一个分数?

你的评论,就是文本输入。

你的打分,就是标记(Annotation)。

对,你已经帮助系统做了标注。平台就不需要再找人单独做标注了。

但是,大部分的数据标注,可没有那么简易。

你可能需要面对无标注的原始输入,一一手工做出标记。

这种工作一般很枯燥,但是并不太复杂。

例如猫狗识别,或者给车辆勾勒边缘(用于物体识别,object detection)之类的简单标记工作,都已经被外包到了低工资水平地区。

因为这种标记要求的是常识,并不需要特殊的专业知识背景。

许多研究者为了节省资金,甚至会选择众包方式。

最典型的,是亚马逊 Mechanical Turk 。

因为工资水平太低,还专门有学者撰写论文,探讨这种标注是否合乎伦理。

问题

然而,有些标注数据,即便可以获得,价格也不菲。

例如说,在文献分析领域,引用目的标注,就被公认是一种昂贵的数据。

每一篇论文,都会有或多或少的参考文献。

研究者们很感兴趣的一个问题是,作者为什么引用了某一篇文献?

引用某些论文,为的是作为工作基础加以扩展;

有的引用,是为了佐证观点;

有的,却是为了作为靶子驳斥。

关于被当做靶子的论文,最著名的是薛兆丰教授津津乐道的科斯(Ronald Harry Coase)那一篇,叫做“The Problem of Social Cost”。

科斯关于产权的新观点一经提出,就因为离经叛道被许多人骂。

这其中,不乏主流经济学家。

新晋的学者阅读文献,总能在许多大师经典的文末“参考文献”,看到科斯的这篇文献。

于是他们都会感兴趣,找来阅读一看究竟。

看过之后,大多数人都觉得科斯的观点令人无法接受,自然也是撰文大加鞭挞。

可问题是,新写出来的文章末尾,还是要把科斯的这篇论文当做引文。

这篇文章,读过的人越来越多,科斯的名气也就越来越大。

文章影响力大了,就会逐渐出现支持的声音,虽然很微弱。

而主流共识发生了迁移后,科斯一下子就成了挑战学术界的孤胆英雄,直到获得诺贝尔奖这样的荣誉。

咱们先不要考虑这个例子中双方学术观点的对错,只观察一个有趣的现象——许多人之所以会阅读到科斯的文章,其实是没有搞清楚他人引用科斯文章的目的。

科学共同体的评价,有点儿像大众点评。一般来说,一个人人打低分的餐馆,会门可罗雀,直到关门大吉的。

科斯这一篇,越被贬低越红,其实是研究史上的特例。

也许你不会觉得这是特例,因为你听过不少类似的例子。

但是想想看,只有这样的例子,才有戏剧性,会被记录了下来,并且广为宣传。

我们更常观察到的现象,其实是:一个观点被许多人当成谬误,最后也被证实为谬误。

例如永动机。

因此,正确区分引用目的,其实在绝大多数情况下都是有价值的。

要辨别引用目的,也需要找人做标注

以往人们的做法,是高薪雇佣学术界的专业人员,逐条分析文献,以及回顾阅读引用位置附近的上下文,最终来确定文献引用目的。

回忆一下你自己阅读学术论文的速度,这种工作的效率便可想而知。

标注工作做了几年,也就是完成了百十来篇文献的分析,包含几千条引文的目的标注。成本已经高到令人咂舌了。

这显然不是个好办法。

创新

Joint Conference on Digital Libraries (JCDL) 2019 大会上,我结识了一位青年学者。他提供了另外的一种解决途径。

我们是在大会第一天的 Tutorial 环节认识的。当时的主题是提升研究的可重复性(Reproducibility),我们都是听众。

我在讨论环节分享了自己授课过程中使用 Google Colab 的经验,他听了觉得很有价值,会后专门跑过来找我聊。

我开始还以为他是个博士生。后来看他跟几位大咖交流带博士生的经验,才知道以貌取人真是错的离谱。

言归正传。他只用了不到一个月的时间,就收集到了与他人几年工作结果等量的引用目的标注数据。标注质量非常高,而且几乎没有花钱

他就是 Petr Knoth ,英国开放大学(Open University)的研究员。 JCDL 2019 “Vannevar Bush 最佳论文奖”得主。

顺便提一下,Vannevar Bush 就是撰写图情领域经典文献《诚如所思》(As We May Think)那位。

下面我们来说说 Petr 的标注数据获取方法。

追问

这是一个典型的“跳出思维约束”的故事。

他追问了几个问题:

第一个问题是:为什么标注成本高?

答案是,必须要雇佣专业人员。他们受过严格的训练,才有能力在读论文的时候,正确识别引用目的。试想你让一个学古典文学的人,去标注化学文献,光是那些术语,就能让他不知所措。

第二个问题是:我们真的就只能付费找这些专业人员吗?

初看起来,结果当然是没错

不过,人们似乎忽略了另外一群专业人士,甚至在这个话题上更有发言权的人——论文的作者们。

文献是谁引用的?

作者啊。

我们传统智慧里,有一句“解铃还须系铃人”,没错吧?

既然文献是他引用的,那该如何标记引用目的,他想必更清楚。而且作者亲自做这个工作,效率一定会更高。

第三个问题是:为什么别人不去找作者们标注?

人们想当然认为,作者们都是富有研究经验的学者,因此时间更加宝贵。不太可能回应这种需求。

他们要是收费的话,会比目前的标注人员更高。标注需求一方的科研经费更加无法支撑。

这个假设,看似正确。但有一个重要的默认假设,即标注是一件非常麻烦的事情。

没人愿意做非常麻烦的事儿,特别是免费地做。

于是,Petr 提出了最重要的一个追问——标注是不是一定要如此麻烦呢?

他和研究团队一直在致力于推动文献开放和提升科学学(Science of Science)研究数据的可得性。他们的项目叫做 CORE 。

截止本文撰写的时候,他们的系统已经采集了 135,539,113 篇论文的全文信息。你甚至可以直接利用他们提供的 API 进行文本挖掘。

在这个过程中,他们经常和 pdf 文件打交道,觉得在网页和正文之间跳转非常的繁琐。于是他们找到了一种第三方开源工具,可以方便地提取 pdf 的内容,直接以网页格式来显示,以便和他们的 Web 系统紧密整合。

Petr 于是就想,如果我可以让作者在网页上方便地一站式看到上下文、文献记录和引用目的选项,那这项标注工作的繁琐程度是不是就大大减低了呢?

尝试

他和团队里的一个小伙子用了不到2个星期的时间,把这个简单的系统开发了出来。

有了这个系统之后,他们随机选择了数千篇论文,自动抓取了第一作者的联系邮箱,然后把请求和对应论文标注页面的链接发送了过去。

信发出后,他们发现,近年发表论文的作者,更愿意回应他们的请求,并且更快速提交结果。

这很好理解,至少因为记忆犹新,作者的标注成本更低嘛。

短短两周时间,他们就获得了数百份回复,积累了5000多条引用目的标注数据。

他们几乎一分钱都没花。

更有意思的是,有的作者不但快速完成标注,之后还给他们写信表示感谢

来信里,作者们纷纷表示这个标注过程,让他们重新梳理了引用的逻辑和思路。相当于快速地给研究的脉络做了个备忘,对未来新项目的开展大有好处。

这,就是一种典型的共赢(win-win)吧?

不仅如此。这一套方法,相对于传统的雇佣专业人员标记,还具有显著的可扩展性(Scalability)。

从前多标记一条引文,就需要多花一份成本。

而现在,只要扩大文献选择范围,系统就可以自动向更多作者发送标注请求。

边际成本,几乎是零。

反思

Poster 展示环节,Petr 就着他的展板,给我介绍了整个儿流程。讲解的时候手舞足蹈,幽默风趣。

我听完,真有醍醐灌顶之感。

我们大多数时候,都生活在一个平凡的世界里,喜欢套用约定俗成的观念,来理解和认识它。

因为这样,比较省脑力。

但是科研过程不一样。它不应该是萧规曹随的。

许多约定俗成的假设和共识,用隐含的方式根植于我们思维模型的底层。但它们却未必正确。

这就需要我们不断反复追问,并且调用第一性原理来重新梳理假设的关系链条。

大胆假设,小心求证,才是科研的正途。

希望你也能早日做出这样既有用又有趣的研究。

延伸阅读

你可能也会对以下话题感兴趣。点击链接就可以查看。

喜欢别忘了点赞

还可以微信关注我的公众号“玉树芝兰”(nkwangshuyi)。别忘了加星标,以免错过新推送提示。

题图:Photo by José Alejandro Cuffia on Unsplash




https://blog.sciencenet.cn/blog-377709-1184493.html

上一篇:如何用 Pandas 存取和交换数据?
下一篇:如何正确使用机器学习中的训练集、验证集和测试集?
收藏 IP: 47.44.192.*| 热度|

8 强涛 李毅伟 杜彦君 黄永义 李剑超 周普查 刘立军 孙颉

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-22 06:06

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部