kaggle数据集_[Kaggle]用Kaggle API下载竞赛数据集

喜欢用Kaggle练手机器学习的同学,必定是喜欢它众多的数据集,还有社区论坛,以及一大票别人家的代码!

但很多人知道,但不一定用过的一个功能,那就是Kaggle API[1]。Kaggle API是什么呢?在每个竞赛的Data说明页面下,如Convey2020竞赛[2]下:

843ad32cdf15e94a296d93b57924aa45.png

1.1 设置Kaggle API配置文件

新建一个json文件于目录 ~/.kaggle/kaggle.json 下,编辑它:

{
 

其中,username字段是kaggle账户的用户名,不知道自己username的可以登录后点自己头像,点"Your Profile":

dce27a39315827df205db41d67195421.png

此时浏览器地址栏的link就会是 https://www.kaggle.com/xxxx,这个xxxx就是你的username。

key字段,则是用户的专属API Key,注意保护好,对于使用API的用途,它就像个人密码。那么如何创建API Key呢?点击上图齿轮logo的Account,进入用户设置页面,翻到API,点击Create New API Token。

dc648730f0869cb3a2c3980d9ca186b2.png

诶,发现Kaggle直接把kaggle.json发给我们了,但是其中只包含了username字段和key字段。

1.2 给自己的代码适配数据路径

path字段即Kaggle下载数据集的目录。如果不设置path字段,Kaggle默认的下载目录是用户主目录即$HOME,强迫症不能忍啊。故可以将path字段设置为自己想要Kaggle集中下载数据到的位置,如:

{
  

这样,数据就会下载到用户主目录下的 .kaggle 目录中。

2 测试下载数据集

很多数据集,在它们的Data页面下,都有Kaggle API的代码,直接复制粘贴就好了,这一点非常方便。我们在Convey2020竞赛[2]的数据集上做Kaggle API的测试:

kaggle competitions download -c conways-reverse-game-of-life-2020

af8282babbdbc11d58cefc81e2a2b343.png

诶,发现只要一行命令(复制粘贴即可,都不用手打),就可以把数据集下到我们想要的路径了。

3 Kaggle API的用处

首先,Kaggle API是个命令行下载工具,不一定能保证断点续传,所以网络环境不好,或者数据集很大(动辄几个G),就不太稳了。但是上面的Convey数据集,也就12MB,然后我们的网速平均有3.5MB/s,几s就能下好了。

如果熟悉Linux命令和bash编程,把数据集的下载和解包(tar -xvf啥的)写成一键脚本,是能大大方便在新的数据集上做学习和研究的。

固定数据目录的好处,这个不用多说,如果数据集的位置是相对确定的,那自己的代码也就不用在目录的问题上改来改去啦,参见我之前的文章:

花子归:[机器学习]俺们Python程序员太厉害了,机器学习训练脚本参数化​zhuanlan.zhihu.com

参考

  1. ^Kaggle API https://github.com/Kaggle/kaggle-api
  2. ^abConway's Reverse Game of Life 2020 https://www.kaggle.com/c/conways-reverse-game-of-life-2020/data
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值