点击下方
卡片
,关注
「3D视觉工坊」
公众号
选择
星标
,干货第一时间送达
来源:小白学视觉
添加小助理:cv3d008,备注:方向+学校/公司+昵称,拉你入群。文末附3D视觉行业细分群。
扫描下方二维码,加入「
3D视觉从入门到精通
」知识星球,星球内凝聚了众多3D视觉实战问题,以及各个模块的学习资料:
近20门秘制视频课程
、
最新顶会论文
、计算机视觉书籍
、
优质3D视觉算法源码
等。想要入门3D视觉、做项目、搞科研,欢迎扫码加入!
今年研二,老师给了一个课题,让接着师兄的工作继续做。但是师兄的结果复现不出来,师兄不愿意给代码。前段时间因为马上要硕士生开题,所以骗了老师说我可以复现出来结果了。但是现在继续按着自己的仿真做下去,和师兄的现象完全不一样,应该怎么办比较好,有类似经历的小伙伴,你是否也在苦恼中?
作者:雪峰的自由之路
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
上个月学弟复现不出我的数据,我会给他基础代码,带着他仿真一遍,期间有什么注意的点我都会讲,一直搞到他明白
但是那期间对我个人来说就是纯浪费时间,同时还要花精力去解释连珠炮一样的提问,最后也没听到个感谢,所以有点心累,但出于责任感我还是会坚持给他讲解
所以针对题主 我觉得直接管人家要代码虽然比较高效,但并不是一个很好的科研方式,应该更多花时间去研究设计流程,思路,找找自己疏忽的点;其次,谎报进度不管在哪都是很糟糕的行为,因为这不止耽误你自己,还会耽误整个小组的进度(如果是分工作业的话)。建议找师兄再好好聊聊,如果师兄还是不愿帮你,你就只能找导师承认错误,再请导师帮你协调。
作者:寒山