-
Notifications
You must be signed in to change notification settings - Fork 18
Description
大家之前已经把开源相关的图数据整理的比较完整了#32,建议接下来可以以现实需求为导向,陆续构建各类图数据相关任务的benchmark。
之所以想强调以现实需求为导向来构建benchmark,是因为
1)最近在看了詹剑锋教授关于评估学的论文后有所启发,Evaluatology: The Science and Engineering of Evaluation,这是该论文的短文X-lab2017/open-research#296 (comment)
里面提到:“In the field of computer science, a benchmark is utilized as a tool and methodology to evaluate the effectiveness and efficiency of system designs and implementations.”,另外,“First, the concerns and interests of the relevant stakeholders are at the core of the evaluation. ” ,原文中关于stakeholder的定义为:”A stakeholder is defined as an entity that holds a stake of responsibility or interest in the subject matter“,为了方便理解,我觉得可以将利益相关者的定义简化(不严谨)为:会被某个事物(就是这里的subject)所影响的所有实体(可以是人、组织等)。
结合上面的内容,加上我的个人理解,我认为benchmark可以被定义为:用于评估某个事物的工具。而评估的核心就是评价与测量利益相关者所关心的东西。benchmark本身的价值也在于它是否能满足利益相关者的需求,能否有效的、真实的、客观的评估出利益相关者所关心的东西。这很容易理解。我们评估某个事物是因为它可能具有价值,对利益相关者而言这些价值是有益的,能够满足他们的需求。因此,利益相关者会对其进行评估以确认其有效性。
2)以现实需求为导向可以很自然地将openperf的成果与实际场景做结合(将openperf服务化)。Github作为一个流行的开源协作平台,里面有大量的真实开发者,每天在处理各种工作的时候必然也会产生很多需求。我们可以将这些需求转换成需要解决的任务,再围绕任务构建相应的benchmark,最后再将benchmark中的成果应用于实际场景。例如在为开发者推荐仓库的任务中,我们可以将benchmark中最好的模型部署到实际场景中,以帮助开发者找到适合自己的项目(也可以让开发者自己选用哪个模型,类似ChatGPT可以选择模型版本)。这样一来,benchmark从需求中来,到需求中去,形成一个闭环。
3)以现实需求为导向可以更真实的评估benchmark自身的有效性。benchmark是否有效,需要参考现实世界的真实反馈。以现实需求为导向设计出来的benchmark,可以很容易地放到现实场景中进行检验。
最后,我认为benchmark的成功不仅仅体现在能够有效地衡量结果上。从长远来讲,它应该在开源场景中发挥着促进相关研究和优化方向的作用。换句话说,成功的benchmark可以起到一个类似“North Star”的效果,指引大家工作前进的方向(比如ImageNet基准数据集)。
以上是我关于”以现实需求为导向“设计benchmark的建议,大家怎么看?