同组博士师兄的结果复现不出来,我应该怎么办?

2023-05-16

链接:https://www.zhihu.com/question/502804990

编辑:深度学习与计算机视觉

声明:仅做学术分享,侵删

ed726bb91c7aa65d16c67cc8aa208289.png

今年研二,老师给了一个课题,让接着师兄的工作继续做。但是师兄的结果复现不出来,师兄不愿意给代码。前段时间因为马上要硕士生开题,所以骗了老师说我可以复现出来结果了。但是现在继续按着自己的仿真做下去,和师兄的现象完全不一样,应该怎么办比较好,有类似经历的小伙伴,你是否也在苦恼中?

1943307d930b9616f2be1e5ee69d970b.png

作者:雪峰的自由之路
https://www.zhihu.com/question/502804990/answer/2412242263

我刚进组的时候代码就是祖传了20年的拟合代码。

然后我给祖传代码写了unittest,integration test,还有 continuous integration,并且重要的的文章用的代码都会打tag。

大部分分析我都写了singularity recipe,杜绝os/compiler导致的结果的变化。

c++程序都用google sanitizer和valgrind查过memory error;用clang-tidy检查风格问题,用clang-format统一格式,用perf检查性能问题。

我所有的分析代码都用git track。

只要懂一点点软件工程方法就可以解决重现结果的问题。科研代码是科研的一部分,应该是reproducible的。这本身就是一个科研课题。

作者:叶则于
https://www.zhihu.com/question/502804990/answer/2254573917

这让我想起了隔壁组代代相传的故事

隔壁组进来了一个师姐,导师要求她在某位师兄的基础上做,师姐没有重复出来,导师要求师兄把代码发给师姐

师兄表面答应了,但是一直不肯发,说忙说找不到,或者就是发一个不相关的

师姐火了,也不知道怎么搞到的密码,偷偷打开了师兄的电脑

给全组的师兄弟们全部发了一份!

自此两人闹翻,现在两人各自在学术界混的不错

当然我不建议题主你这样做,因为论文确实不可能面面俱到,一些tricks不会在论文里面展现

还有就是学术造假的可能性,师兄的论文全组都没有人重复过吗?

你完全可以拿着自己画出来的图跟师兄对比,去和导师汇报,并指出师兄不合理的地方,这是最简单且最直接的方式

放心,你的导师也容不了学术造假,一辈子的声誉不是开玩笑的

作者:Vam
ttps://www.zhihu.com/question/502804990/answer/2259589595

这算是个科研领域的经典难题吧,我和我的师弟也遇到过类似问题,我们分别师兄那里接手了两个他做了一半的项目,我们都重复不出来他的DFT模拟结果,师兄也不肯给我们他计算用的模型以及原文件。

我以为跟师兄私下关系不错,就选择私下跟他沟通。我最初没有直说我无法重复他的结果,只是说我想看一下他的模型向他学习怎么做DFT。他给了我一部分模型,结果是我用他的原文件做input重新算依然算不出他的结果。我当时头铁依然选择找师兄沟通,结果师兄瞬间就炸了,他觉得我在算计他,直接去找导师说我在质疑他的权威不配合他的工作。不能重复他的数据这个问题我之前跟导师提过几次,导师并没有把师兄的抱怨当回事。但是这个事之后我和师兄的关系特别特别僵,他毕业后我们基本不再来往。

而我师弟的选择比我圆滑很多,他看到我们俩闹得很不愉快之后,在师兄面前完全不提不能重复的事,而是选择直接找导师沟通,让导师出门要来了所有原数据。师弟重复了所有关键计算,把不能重复的地方一一列出来给导师看,然后让导师去跟师兄沟通。当然,师兄知道了之后他依然非常生气,但是他把怒火归在了导师身上,他认为是导师不信任他,结果是师兄和导师撕破脸了。

我和师弟的最终目一样,就是向导师证明师兄的结果有问题,要导师同意我们后续研究不沿着师兄的方向走。目的最后我们都达成了,我的做法快很多,但是我跟师兄撕破脸,师弟的做法更费时间,他花了将近一年时间不断去引导导师出面跟师兄沟通,好在他和师兄私人关系没有受到严重影响。我这人是急性子,加上科研上我非常较真不喜欢和稀泥,但我不建议跟我一样头铁为了一个项目跟师兄弄的很僵,我师弟的选择更好更圆滑一些,毕竟项目有的是,而同组共事过的师兄弟就那么几个人。

最后说几句数据造假的问题,我不能确定师兄一定在造假,但是我确定造假是个心理压力很大的事,任何做科研的人被指控造假时,会心惊肉跳甚至气急败坏也是可以理解的。我承认,我为了应付这个师兄给过他有问题的数据,这么多年这个事依然像压在我身上的巨石一样沉重。当时跟师兄闹僵后,他依然坚持要求我按他计算的结论把项目做完,他毕业论文需要这些结果,而且结果必须支持他的结论,但是他没时间自己做也没时间改论文的结论了。可我实在算不出来,因为我的计算和实验都指向一个跟他论文完全不同的结论。我当时博士第四年跟他关系也闹僵了,我没义务也不想花时间去帮他。但是导师总是劝我们说随便给他点就完了,因为学校已经明确警告师兄和导师,师兄博士已经念了七年,学校警告他无论如何第八年结束后要么毕业要么肄业我和另一个师弟为了凑师兄的结论就彻底放飞自我了,给他的计算不仅仅是不够严谨了,为了凑结论很多计算用的模型和setting完全都不一样。我们心知肚明这些数据就是造假,所以我们没有在任何会议上讲更完全不考虑去发表这些数据。我甚至故意没有给师兄足够的setting细节,因为不希望日后其他人重复师兄的博士论文。即便这样,师兄博士答辩时讲到这些数据时,我比台上的师兄还紧张,后面committee问到那一页的数据时,我更是感觉自己血压都高了。而这个经历,对另一个师弟的影响更大,之后他再也不肯碰DFT只做实验研究。

作者:余与予欲渔遇雨
https://www.zhihu.com/question/502804990/answer/2258685306

上个月学弟复现不出我的数据,我会给他基础代码,带着他仿真一遍,期间有什么注意的点我都会讲,一直搞到他明白

但是那期间对我个人来说就是纯浪费时间,同时还要花精力去解释连珠炮一样的提问,最后也没听到个感谢,所以有点心累,但出于责任感我还是会坚持给他讲解

所以针对题主 我觉得直接管人家要代码虽然比较高效,但并不是一个很好的科研方式,应该更多花时间去研究设计流程,思路,找找自己疏忽的点;其次,谎报进度不管在哪都是很糟糕的行为,因为这不止耽误你自己,还会耽误整个小组的进度(如果是分工作业的话)。建议找师兄再好好聊聊,如果师兄还是不愿帮你,你就只能找导师承认错误,再请导师帮你协调。

作者:寒山
https://www.zhihu.com/question/502804990/answer/2396843300

有过类似的经历。

如果师兄没毕业,就约出来吃顿饭好好谈谈,不要强要代码。目的是帮你指导一下思路。

如果师兄已经毕业了,那可能他实际没做出来,或者临近毕业想赶紧run了,收尾工作草草交差,不想面对交接后的麻烦事。

这种情况,建议你私下找导师说实话,但是不要只表达“我没有做出来”,那样就成了宣泄。要叙述你从复现到目前遇到了什么瓶颈、具体哪里和师兄的结果相悖、是否存在师兄的方法根本就不work的可能、关于以上的分析证明,以及沟通过程中师兄的态度。

我们组的毕业交接包括所有代码和数据。虽说科研成果属于个人,但毕业后不打算继续或者移交给师弟妹的工作最好还是交代码...不然接手的人还要花大量时间重复前人的工作。

深度学习的结果不能复现并不少见,总之不要闭门造车。

作者:匿名用户
https://www.zhihu.com/question/502804990/answer/2255058082

只是好奇为什么大部分人都认为师兄师姐教就是应该的,如果课题组向来都是传承,也说得过去,如果别人是自己原创的工作,凭什么给程序,好好相处指点一下就仁至义尽了,评论里那位私自开别人电脑的可以说是剽窃了。

另外我曾经给别人检查代码发现之所以重复不出来是因为一个标点符号打错了,而这花了我两个小时的时间。

作者:Nintendoyes
https://www.zhihu.com/question/502804990/answer/2259778224

首先你要确定这个结果是100%能复现出来的,你可以打听一下别人有没有成功复现过这个结果。深度学习或者DFT之类的黑盒子本身就比较难复现,因为参数稍微变化一下可能结果就完全不一样,复现出来相同的结果经常是需要一些trick的。

不share代码其实无所谓,但是如果这个师兄在技术细节比如说这些小trick上一点都不愿意share,那基本可以确定两种情况:一种是他的结果有问题;另一种是他的trick在数学或者物理上不make sense,但是这个trick他从来没在别人跟前提过。

作者:匿名用户
https://www.zhihu.com/question/502804990/answer/2389954718

我刚开始做课题的时候,就是和导师讨论了一下,能做,就开始干了,而且并没有前人基础可用,所以我花了一年多写代码开发试验设备,做实验采集数据,还构思了许多idea……

(重点:师弟从没喊过我师兄,一直都是直呼我名,而且总是老师说怎么怎么地)

然后师弟进组了,导师让他接着我做(其实我也刚开始写论文),没办法,我只能把我构思不太完善的idea给他了。

过了段时间,他有了想法想观察实验现象,就找我,我说我最近没做实验的计划。然后他自己又捣鼓了一阵子,没弄出来,导师催的又紧,就来问我要实验设备,准备自己做。我想这也没什么,就把代码,设备布置,实验数据都给他了,还告诉他怎么用,数据怎么处理。

又过了段时间,他实验是做通了,数据处理完了和我不一样,又来问我。我又跟他讲了一遍数据怎么处理。他说他明白了,我以为就没什么事儿了,没想到第二天导师带着师弟找我,问我数据是怎么回事……我当场有种“养了头白眼狼”的感觉……

我当场没啥表现,耐心跟导师说清楚数据是怎么回事,导师理解了说没有问题。说完我就走了,直接把设备上的程序删了~

事后我觉得这事儿特别可笑,只怪自己爱管闲事了……以后不会再帮他了。

☆ END ☆

如果看到这里,说明你喜欢这篇文章,请转发、点赞。微信搜索「uncle_pn」,欢迎添加小编微信「 woshicver」,每日朋友圈更新一篇高质量博文。

扫描二维码添加小编↓

fe140c85f1c016e1b28a01753fc8a951.png

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

同组博士师兄的结果复现不出来,我应该怎么办? 的相关文章

随机推荐

  • OPNECV:读取二值图像

    image 61 cv2 imread 34 19 png 34 xff0c 1 在正常的cv imread后加上 1即可 xff0c 表示按照图片原有格式进行读取
  • Ubuntu 20.04桌面很卡的解决方案--亲测有效

    现象描述 xff1a Ubuntu 20 04开机后 xff0c 整个桌面卡顿严重 xff0c 鼠标滚动后桌面没响应 xff0c 几秒钟后屏幕变花 xff0c 图标重叠 xff0c 基本无法操作 打开终端也是两三秒钟后才显示终端界面 xff
  • 多任务学习综述

    An overview of multi task learning xff0c Yu Zhang and Qiang Yang xff08 Sep 2017 xff09 COMPUTER SCIENCE ABSRACT 多任务学习 mul
  • HaneWIN (windows上的NFS服务器)使用说明

    使用说明 HaneWIN官网 xff1a https hanewin net nfs e htm比较好用的版本下载地址 xff1a https download csdn net download fword 85908535使用说明 xf
  • CAN总线简明易懂教程(一)

    先看看工作原理 当 CAN 总线上的一个节点 xff08 站 xff09 发送数据时 xff0c 它以报文的形式广播给网络中所有节点 xff0c 对每个节点来说 xff0c 无论数据是否是发给自己的 xff0c 都对其接收 每组报文开头的1
  • 北斗导航系统、GPS、GLONASS信号频率

    民用方面 xff1a GLONASS xff1a L1 61 1602 43 0 5625 k MHz 和L2 61 1246 43 0 4375 k MHz L1 L2 61 9 7 GPS L1 1575 42 43 10 MHz L2
  • centos下安装Java

    文章目录 1 解压2 配置环境变量 1 解压 首先将压缩包放到 usr local路径下 xff0c 解压缩 span class token builtin class name cd span usr local span class
  • 图像语义理解

    本文转载 from xff1a http blog csdn net haitun425 article details 8802182 1 目标的检测 分类和识别都为图像语义的理解服务 理解是硬道理 xff1b 2 不在于图像理解模型是否
  • 我的嵌入式5年 VS 我被国嵌的视频坑了的日子

    在嵌入式的行业工作四五年了 xff0c 想想从当初的身无分文和什么都不会 xff0c 到现在的还算衣食无忧 xff0c 住行别想 xff0c 技术也有点提升 xff0c 进入了手机行业 xff0c 其中的酸甜苦辣只有自己知道 xff0c 从
  • 我程序人生的启蒙书

    是这本书 xff0c 大一的我接触了c和c 43 43 xff0c 为数学专业的我打开了通往另一个世界的道路 xff0c 做一名优秀的程序员 是这本书 xff0c 大一的我开始废寝忘食的学习 xff0c 自习室里往往就放着这一本数 xff0
  • C++面试题(三)——STL相关各种问题

    C 43 43 面试题 STL相关各种问题 tanglu2004 http blog csdn net worldwindjp STL相关的各种问题 1 xff0c 用过那些容器 最常用的容器就是 xff1a vector list map
  • 基于 Docker 搭建开发环境

    基于 Node 官方镜像 https hub docker com node 获取镜像 在本地 Terminal 中执行 docker pull node 以获取 node 镜像 xff0c 可在 docker desktop 中查看 创建
  • tomcat 9 与mysql 5 的连接

    1 jdk的安装 配置JAVA HOME变量 xff0c 将该变量设置到path中 2 tomcat 下载 最新版本apache tomcat 9 0 0 M9配置根目录CATALINA HOME 61 D apache tomcat 9
  • 刷完 LeetCode 是什么水平?能拿到什么水平的 offer?

    链接 xff1a https www zhihu com question 32019460 编辑 xff1a 深度学习与计算机视觉 声明 xff1a 仅做学术分享 xff0c 侵删 刷题是我们一贯的学习方式 xff0c 但是学霸和学渣的区
  • 开心网争车位 发布

    本软件第一次使用C 编写 xff0c 是开心001争车位的辅助软件 可以帮助你管理多个账号一起停车挣钱 xff0c 使支持和热爱 开心网 的玩家更方便 xff0c 请勿与用商业 使用方法 xff1a 本软件需依靠 net3 5 xff0c
  • 博士“申请考核制”经验

    作者 xff1a 花花 链接 xff1a https zhuanlan zhihu com p 126168158 本文转载自知乎 xff0c 作者已授权 xff0c 未经许可请勿二次转载 本文是作者真实的经历 xff0c 给打算申请国内院
  • 研究生新生要怎么看论文?

    链接 xff1a https www zhihu com question 304334959 编辑 xff1a 深度学习与计算机视觉 声明 xff1a 仅做学术分享 xff0c 侵删 问题 xff1a 经常各种看不懂论文 而且感觉好多论文
  • 考博热会出现吗?

    链接 xff1a https www zhihu com question 408008199 编辑 xff1a 深度学习与计算机视觉 声明 xff1a 仅做学术分享 xff0c 侵删 考研热已经是不争的事实了 xff0c 每年考研人数都在
  • 基于python的MongoDB入门教程

    总览 MongoDB是数据科学家常用的一种非结构化数据库本文我们讨论如何使用Python xff08 和PyMongo库 xff09 来使用MongoDB数据库 本文我们使用Python实现对MongoDB数据库的所有基本操作 结构化数据库
  • 同组博士师兄的结果复现不出来,我应该怎么办?

    链接 xff1a https www zhihu com question 502804990 编辑 xff1a 深度学习与计算机视觉 声明 xff1a 仅做学术分享 xff0c 侵删 今年研二 xff0c 老师给了一个课题 xff0c 让