GitHub问题呼吁撤回帝国理工学院代码库缺陷研究

2020-05-07 20:01:35

我是一名专业的模特师。我领导普华永道(PwC)的建模小组和模型评审服务达10年之久,之后又领导IBM的欧洲建模小组达5年之久。不过,我必须强调,我的评论只代表我个人的意见,并不代表上述团体的意见。我必须同意关于模型编程的一系列评论。首先,该模型的文档标准非常低,要么是代码内部的外部注释,要么是通过使用适当的变量名开发自文档代码。看到变量被定义为:inti,j,k,l,lc,lc2,b,c,n,nf,i2;没有任何指示它们表示什么,这是最糟糕的编程实践形式。其次,似乎缺乏对该模型的测试。当用相同的值播种随机数生成器时,无法产生相同的结果,这特别令人担忧,并暗示了程序开发中的一些基本问题。对于如此重要的模型,缺乏适当的测试制度的任何文档也令人担忧。第三,语言和整体编程风格的选择(主模拟模块由超过5400行代码组成)。对于将用于制定现实世界决策且需要经常更改以反映不断变化的需求(例如尝试新的干预形式)的模型来说,这不是一个合适的选择。我很欣赏这个模型是15年前写的,但它现在正被用来制定决策,它应该进行更新,以反映最佳实践。(有关最佳实践的示例,我建议您查看来自巴泽尔大学Biozentrum的这个模型https://github.com/neherlab/covid19_scenarios)。此外,我还想评论一下与此模型相关的建模问题,而不是编程问题。该模型由280多个参数组成,外加每次运行的人口密度文件。我从(痛苦的)经验中知道,创建280个参数的一致数据集是极其困难的,必须遵循严格的程序,以确保创建和使用适当的数据集,并将它们全面记录下来,并与所使用的模型版本和所产生的输出相联系。最佳做法是为每次运行使用数据管理员,他们负责收集和记录所使用的输入。我不知道是否遵循了这样的程序,但缺乏与所提供的数据集相关的文档并不能产生信心。这就引出了一个广泛的问题。为什么圣人模特组里没有专业的模特师。https://www.gov.uk/government/publications/scientific-advisory-group-for-emergencies-sage-coronavirus-covid-19-response-membership/list-of-participants-of-sage-and-related-sub-groups有许多专业组织,如OR Society https://www.theorsociety.com/,或精算师协会和精算师协会https://www.actuaries.org.uk/,他们本可以被联系来提供建模人员,他们的专业经验包括建立模型,在这些模型上做出关键的现实世界决策。这个小组似乎完全由学者组成,他们可能不习惯于他们的模型被用来做出现实世界的决定,以及随之而来的对模型开发和使用的要求。这种多样性的缺乏令人失望。