V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lance1ot
V2EX  ›  分享发现

吐槽一下看某些顶会论文代码留下的辛酸泪

  •  
  •   lance1ot · 2022-03-29 21:29:56 +08:00 · 2932 次点击
    这是一个创建于 1001 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在看一篇 CVPR 论文的源码,作者是一个很牛逼的国人,这点我心生佩服。 从论文写的结果来看,程序结果很优秀,比其他论文的都好; 从工程文件的角度来看,不同试验的代码放在不同文件夹下,结构很清晰;

    单从这些来看,这个文章简直就是完美,发现这个文章的时候我开心死了,觉得找到好东西了,直到我想仔细学习代码+复现结果....

    说一些槽点:

    • 运行代码前要先安装 200+个依赖项,仅安装环境就占了 6G+ 我原本想手撸把环境搭好,结果被 200+个吓退。还好作者提供了 docker 的 image ,但是下载下来发现居然有 6G+....,更无语的是,这么大的环境文件,在代码里却并没有怎么被用到。

    • 数百行代码无一行注释 不知道是大佬没有写注释的习惯,还是会在提交源码的时候会删去注释?我猜原因可能是后者吧,我居然在一个代码文件里面发现一行像是忘记删掉的中文注释😂。 我不是要求行行都要注释,我觉得对每个部分做个简短注释应该不算很难吧,不然看起来真的有点头疼。

    • 代码很完整,从底层都自己实现了 一些比较底层的功能,比如图片缩放等,代码没有用现有的库函数,而是用自己(或同事)的代码再实现了一遍,再加上没有注释,乍看之下真的是一头雾水。


    一点小疑问: 大家在公开源码的时候都会删除注释吗?😂

    只是想吐槽一下,不敢质疑作者或者论文水平~,如有冒犯,还请原谅

    17 条回复    2022-03-30 15:50:21 +08:00
    xyfan
        1
    xyfan  
       2022-03-29 21:45:32 +08:00   ❤️ 3
    有能运行的代码就谢天谢地了,可能作者写注释的时候用的中文,等法代码的时候觉得不合适索性全删掉了,说不定注释里还写了零星的未完成的工作思路,删掉也可以理解。
    Windn0
        2
    Windn0  
       2022-03-29 21:53:27 +08:00 via iPhone
    慢慢看,程序都是有逻辑的。
    深度学习除外……cvpr 哈哈哈哈、玄学调参吧
    dlsflh
        3
    dlsflh  
       2022-03-29 21:55:26 +08:00 via Android
    不错了,我学习的领域(非计算机专业),没有论文也会给计算模型源代码或者算例文件,至少我没有遇到过。
    fishCatcher
        4
    fishCatcher  
       2022-03-29 21:56:41 +08:00 via iPhone   ❤️ 3
    科研不像工程,实验室没有代码质量管理,导师要求能出活就行。很多 phd 在自己的细分领域深耕,但出了自己的领域之后真的是一窍不通。。
    我对象统计专业的,搞机器学习相关,实验室很多 phd 四五年级的人都不太会用 git ,各种缓存文件往上 push ,冲突文件直接-f 。虽然人家文章最后结果好,但是里面的代码真的没法看。
    想复现代码,还是找一些名气大、公认能复现的文章吧(像 raft 这种出名的),很多文章复现不了的。
    adoal
        5
    adoal  
       2022-03-29 21:56:44 +08:00
    因为附带代码的工程化程度不是科研的绩效评价因素。
    jdhao
        6
    jdhao  
       2022-03-29 21:58:07 +08:00 via Android   ❤️ 1
    你就说能不能复现结果吧,其他都是次要的,很多论文都是水的,别人他妈根本复现不出来,那才叫真坑。
    ps031ab
        7
    ps031ab  
       2022-03-29 22:02:29 +08:00 via iPhone
    论文的程序,能开源就不错了
    JudyHal
        8
    JudyHal  
       2022-03-29 22:06:43 +08:00
    科研新人吧,还看国人的论文,现在科研界的潜规则就是不看国人的论文了,复现是不可能的,基本上或多或少都带点假的,别说什么是顶会的,这里面的水很深,基本上都是你放我一下水,我放你一下水。
    Rocketer
        9
    Rocketer  
       2022-03-29 22:09:45 +08:00 via iPhone
    看风格吧,我工作过的一个即将步入 500 强(目前 600 左右)的公司,认为代码自己会说话,禁止写注释。我开始也很不习惯,后来也没啥影响。
    sickoo
        10
    sickoo  
       2022-03-29 22:16:08 +08:00
    @Rocketer 我之前的 mini 公司也是这样规定的,习惯之后发现没啥。
    ruimz
        11
    ruimz  
       2022-03-29 22:39:16 +08:00
    能运行就谢天谢地了,我之前找的一个发表并 GitHub 的 federated learning 框架,根本没法运行,问题包括但不限于变量未定义就直接使用
    longbye0
        12
    longbye0  
       2022-03-29 22:39:24 +08:00
    总比 siggraph 好,cv 界的文章多数还有代码。
    czqzero
        13
    czqzero  
       2022-03-29 22:41:35 +08:00
    能稳定复现就超过 90% 的论文了...
    lance1ot
        14
    lance1ot  
    OP
       2022-03-29 23:39:21 +08:00
    谢谢各位的回复,程序能运行,因为作者分享了 docker 的包,这点感谢他。😂
    aheadlead
        15
    aheadlead  
       2022-03-29 23:57:45 +08:00   ❤️ 1
    居然还能有 docker image ,楼主你就偷着乐吧。。。
    之前做一篇论文复现,代码一堆 bug… 跑通就花了半个月不止
    hundredark
        16
    hundredark  
       2022-03-30 09:55:23 +08:00
    dl 大部分还都会给个代码,能不能跑通是个问题,能不能复现是个问题,代码和论文一不一致又是个问题
    ml 给代码的寥寥无几,写的 make sense 就行,感觉全靠编
    挺服的
    leeolsen
        17
    leeolsen  
       2022-03-30 15:50:21 +08:00
    @JudyHal #8 不知道您这个潜规则是哪的哈哈,不说别的领域,理论物理 凝聚态这些方向国人的论文高他引和 highlight 论文都很多的,至于学术造假,某些领域是有一些。。但是科研都带点假也不知道是哪里道听途书来的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5507 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 06:37 · PVG 14:37 · LAX 22:37 · JFK 01:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.