商汇粹外网资源平台

搜索
查看: 1557|回复: 5

如何用 Github 找到需要的代码?

[复制链接]

该用户从未签到

14

主题

18

帖子

48

积分

新手上路

Rank: 1

积分
48
发表于 2022-9-22 17:23:47 | 显示全部楼层 |阅读模式
图像处理新人,目前导师要我看几篇 CVPR 2018 的文章并跑一下代码。
这些代码能否用 Github 找到?若不能,有无其他方法和途径?
回复

使用道具 举报

该用户从未签到

10

主题

22

帖子

98

积分

注册会员

Rank: 2

积分
98
发表于 2022-9-22 17:40:27 | 显示全部楼层
最近由于在整理学习cvpr的论文,一般每篇都需要寻找论文源码,所以这里综合各方面的信息和自己的心得做个小分享:
一.有用的网址

1. paperswithcode

paperswithcode集合了arXiv上最新的机器学习研究论文,而且关联了这些论文在GitHub上的代码。
2. resarchcode

一个很好用的查找论文代码的网站,当您在http://arxiv.org或Google Scholar中搜索浏览论文时,还可以用http://researchcode.com提供的google chrome扩展程序”ResearchCode code finder“查找代码。扩展工具:

二.搜索的建议

1. 寻找论文作者的个人主页

在google搜索该论文的名称加上论文作者的姓名,找到目标作者的个人主页。一般在他们的个人主页上都有可能看到论文的链接和代码。我在寻找论文和代码的过程中,发现作者的主页上会有在其他网站暂时还找不到的论文和该论文的源码。
2.改变关键字 开发语言+论文的关键字

牛人一般都会想办法证明下自己有多牛,也会自己动手去尝试实现别人论文的代码,所以换关键字后也有可能找到正好是你需要的code,不过是其他牛人的杰作。
三.求真尊

找论文作者,论文上或者论文作者的个人主页上都有他们的联系方式,你可以尝试主动联系。   在stackexchange上有一个问答,叫做:

以上是小小的经验,希望对你有帮助。
回复

使用道具 举报

该用户从未签到

11

主题

93

帖子

291

积分

中级会员

Rank: 3Rank: 3

积分
291
发表于 2022-9-22 17:57:07 | 显示全部楼层
有个炒鸡好的网站!!简直是专门为计算机设计的google scholar,要什么有什么。就比如说最近Google在2019ICML上提出的EfficientNet,不仅有官方的Implementation,得助于该网站,找到了炒鸡好的pytorch实现(敢动)

这个网站可以提供的信息包含但不受限于

  • 论文公开的Github上的代码实现,包括其他人的复现
  • 论文被接受的Conference /Journal 和时间
  • 论文的引用情况,高引用情况,近几年引用的情况
  • 被Media Mentions(推特,博客之类的)
  • Similar papers(这个特别特别棒!)尤其是在想深入了解该领域的前沿工作的时候
链接如下
回复

使用道具 举报

该用户从未签到

8

主题

86

帖子

280

积分

中级会员

Rank: 3Rank: 3

积分
280
发表于 2022-9-22 18:13:47 | 显示全部楼层
一、先看paper里面有没有贴出来代码的链接,有的话最好。
二、大部分实验室都会有统一的代码管理,可以去一作的实验室主页瞅瞅,说不定有惊喜。
三、直接github上搜索关键字。
四、给一作留的邮箱发邮件交流,态度诚恳说清楚用途,一般都会给。
五、实在没有辙的时候,就自己复现吧
回复

使用道具 举报

该用户从未签到

8

主题

28

帖子

121

积分

注册会员

Rank: 2

积分
121
发表于 2022-9-22 18:30:27 | 显示全部楼层
GitHub 在开源世界的受欢迎程度自不必多言
我们今天想要聊的并不是 GitHub 多么厉害,而是你怎么能把 GitHub 用得很厉害
你在 GitHub 上搜索代码时,是怎么样操作的呢?是不是就像这样,直接在搜索框里输入要检索的内容,然后不断在列表里翻页找自己需要的内容?





或者是简单筛选下,在左侧加个语言的过滤项。





再或者改变一下列表的排序方式





这就是「全部」了吗?


一般的系统检索功能,都会有一个「高级搜索」的功能。需要在另外的界面里展开,进行二次搜索之类的。 GitHub 有没有类似的呢?


答案是肯定的。做为一个为万千工程师提供服务的网站,不仅要有,而且还要技术范儿。


如果我们自己开发一个类似的应用,会怎样实现呢?
带着思路,咱们一起来看看,GitHub 是怎样做的。


这里我们假设正要学习 Spring Cloud,要找一个 Spring Cloud 的 Demo 参考练手。


1. 明确搜索仓库标题、仓库描述、README


GitHub 提供了便捷的搜索方式,可以限定只搜索仓库的标题、或者描述、README等。


以Spring Cloud 为例,一般一个仓库,大概是这样的







其中,红色箭头指的两个地方,分别是仓库的名称描述。咱们可以直接限定关键字只查特定的地方。比如咱们只想查找仓库名称包含 spring cloud 的仓库,可以使用语法


in:name  关键词









如果想查找描述的内容,可以使用这样的方式:


in:descripton 关键词







这里就是搜索上面项目描述的内容。


一般项目,都会有个README文件,如果要查该文件包含特定关键词的话,我想你猜到了


in:readme 关键词


2. 明确搜索 star、fork 数大于多少的


一个项目 star 数的多少,一般代表该项目有受欢迎程度。虽然现在也有垃圾项目刷 star ,但毕竟是少数, star 依然是个不错的衡量标准。


stars:> 数字  关键字。


比如咱们要找 star 数大于 3000 的Spring Cloud 仓库,就可以这样
stars:>3000 spring cloud









如果不加 >= 的话,是要精确找 star 数等于具体数字的,这个一般有点困难。
如果要找在指定数字区间的话,使用
stars: 10..20 关键词


fork 数同理,将上面的 stars 换成 fork,其它语法相同







3. 明确搜索仓库大小的


比如你只想看个简单的 Demo,不想找特别复杂的且占用磁盘空间较多的,可以在搜索的时候直接限定仓库的 size


使用方式:
size:>=5000 关键词   


这里注意下,这个数字代表K, 5000代表着5M。


4. 明确仓库是否还在更新维护


我们在确认是否要使用一些开源产品,框架的时候,是否继续维护是很重要的一点。如果已经过时没人维护的东西,踩了坑就不好办了。而在 GitHub 上找项目的时候,不再需要每个都点到项目里看看最近 push 的时间,直接在搜索框即可完成。


元旦刚过,比如咱们要找临近年底依然在勤快更新的项目,就可以直接指定更新时间在哪个时间前或后的


通过这样一条搜索  pushed:>2019-01-03 spring cloud
咱们就找到了1月3号之后,还在更新的项目。







你是想找指定时间之前或之后创建的仓库也是可以的,把 pushed 改成 created  就行。


5. 明确搜索仓库的 LICENSE


咱们经常使用开源软件,一定都知道,开源软件也是分不同的「门派」不同的LICENSE。开源不等于一切免费,不同的许可证要求也大不相同。 2018年就出现了 Facebook 修改 React 的许可协议导致各个公司纷纷修改自己的代码,寻找替换的框架。


例如咱们要找协议是最为宽松的 Apache License 2 的代码,可以这样


license:apache-2.0 spring cloud









其它协议就把 apache-2.0 替换一下即可,比如换成 mit 之类的。


6. 明确搜索仓库的语言


比如咱们就找 Java 的库, 除了像上面在左侧点击选择之外,还可以在搜索中过滤。像这样:


language:java  关键词


7.明确搜索某个人或组织的仓库


比如咱们想在 GitHub 上找一下某个大神是不是提交了新的功能,就可以指定其名称后搜索,例如咱们看下 Josh Long 有没有提交新的 Spring Cloud 的代码,可以这样使用


user:joshlong











组合使用一下,把 Java 项目过滤出来,多个查询之间「空格」分隔即可。
user:joshlong language:java









找某个组织的代码话,可以这样:
org:spring-cloud
就可以列出具体org 的仓库。







回复

使用道具 举报

该用户从未签到

4

主题

55

帖子

166

积分

注册会员

Rank: 2

积分
166
发表于 2022-9-22 18:47:07 | 显示全部楼层
github仓库: arxiv.repo
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表