ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

colab使用笔记

2021-04-12 10:03:11  阅读:278  来源: 互联网

标签:kaggle 笔记 content json colab 使用 path alexnet


和Google Drive通信

第一种办法 调整目录到网盘(已放弃)

放弃的原因主要是,代码和数据在网盘,会造成读取数量限制

# 将环境切换到指定的目录下
import os
path = "/content/drive/MyDrive/data/CTPN/"
os.chdir(path)
os.listdir(path)

第二种办法 将代码和数据都读到本地

代码可以从网盘中读取;数据同理,将数据压缩包转到本地,再解压。

# 直接在colab选择装载硬盘
# cp -r可以复制文件夹,命令是将网盘中的文件夹保存到当前目录下的A_alexnet文件夹
# cp 不加-r,意思是忽略文件夹
!cp -r drive/MyDrive/data/A_alexnet/ A_alexnet

数据可以直接github载入,就没有挂载Google Drive后的io效率问题了,使用wget可以下载网络上的数据

数据也可以从kaggle读入,见本页的colab读取kaggle数据集

# 切换到tf 1.15
%tensorflow_version 1.15
import tensorflow
print(tensorflow.__version__)

colab读取kaggle数据集

参考文章:https://libertydream.github.io/2019/07/13/在-Google-Colab上玩-Kaggle/

# 安装kaggle包(colab自带)
!pip install kaggle

# 新建一个文件夹,用于存放生成的json
!mkdir .kaggle

# 生成json文件
import json
token = {"username":"lizhendong","key":"d91b071d162f3ff918194c8e57432b6d"}
with open('/content/.kaggle/kaggle.json', 'w') as file:
  json.dump(token, file)

# 在root目录下创建文件夹并复制json
!mkdir ~/.kaggle
!cp /content/.kaggle/kaggle.json ~/.kaggle/kaggle.json

# 我也不知这是啥
!chmod 600 /root/.kaggle/kaggle.json
!kaggle config set -n path -v{/content}
# 将需要的比赛的数据文件下载下来。
# 使用网站上的api代码,最后的 -p /content 是为了指明路径
!kaggle competitions download -c dogs-vs-cats-redux-kernels-edition -p /content

之后再解压等等。

# -d 是指定解压目录
!unzip -d A_alexnet/data A_alexnet/data/train.zip
!unzip -d A_alexnet/data A_alexnet/data/test.zip

要命的cd

colab下,!cd 并不管用,必须要使用 %cd 才能自由切换目录!

路径问题

pycharm运行和命令行运行有什么区别?

参考文章:https://blog.csdn.net/moshiyaofei/article/details/88941099

  1. pycharm运行py文件会自动将当前运行py文件的工程目录加载到sys.path中。
  2. 命令行运行py文件值加载显式import的包和文件,导致在命令行下运行py文件时会提示部分模块找不到。
  3. 在2中,如果找不到文件出错的话,使用:
import sys
sys.path.append( "工程目录路径" )

将当前工作目录添加到sys.path中就不会报错了。

标签:kaggle,笔记,content,json,colab,使用,path,alexnet
来源: https://www.cnblogs.com/amtop/p/14646631.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有