菜鸟google colab踩坑笔记
因为想用深度学习,进一步需要GPU,
又因为木钱也木有GPU,所以就只能用Google免费的colab了,
上面还有提供TPU。
具体初步注册呀什么的网上都有,需要注意的有以下几点。
1.开始的时候可能没有colab选项,需要在更多里找。(或者搜一下)
2.colab基于jupyter notebook,所以开始第一眼看是懵逼的。
但是它每一个单元格可以当一个程序运行。
开始的时候我导进去两个python文件(就是把python代码复制到单元格里),还在想怎么import。然后在这里才发现两个python文件放在一起不需要import。
3.TensorFlow预先装好了。直接复制python代码是python代码,代码前加!可以当做Ubuntu控制台用。
比如
!pip install 包
各个包的具体装法还是看网上吧。
4.数据集。
外部数据集怎么用。
我这里只用的是 先把数据集上传到Google云盘里,然后通过下面的操作,就能在colab右边的文件中看到数据集了。[代码右边的>,点击,点文件]
【发现新的同步方法,只需要两句话】
from google.colab import drive
drive.mount('/content/gdrive')
[下面是旧的]
!apt-get install -y -qq software-properties-common python-software-properties module-init-tools
!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
!apt-get update -qq 2>&1 > /dev/null
!apt-get -y install -qq google-drive-ocamlfuse fuse
from google.colab import auth
auth.authenticate_user()
from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass
!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}
以上好像是一个验证的过程,出现网址需要前往,然后粘贴验证码贴在网址下面的框里。需要两次。
然后再进行以下操作即可。
!mkdir -p drive
!google-drive-ocamlfuse -o nonempty drive
5.检测是不是用了GPU以及看GPU环境的常用命令
import tensorflow as tf
tf.test.gpu_device_name()
如果结果为空,则不能使用GPU,如果结果为/device:GPU:0,则使用!/opt/bin/nvidia-smi查看显存情况
查看显卡内存使用上限
from tensorflow.python.client import device_lib
device_lib.list_local_devices()
一个报的错误(在用TensorFlow跑一个demo时出的错误)
An exception has occurred, use %tb to see the full traceback.
SystemExit: 2 /usr/local/lib/python3.6/dist-packages/IPython/core/interactiveshell.py:2890: UserWarning: To exit: use 'exit', 'quit', or Ctrl-D. warn("To exit: use 'exit', 'quit', or Ctrl-D.", stacklevel=1)
parser=argparse.ArgumentParser()
parser.add_argument('--n_epochs',type=int,default=200,help='number of epochs of training')
parser.add_argument('--batch_size',type=int,default=64,help='size of the batches')
parser.add_argument('--lr',type=float,default=0.0002,help='adam:learning rate')
parser.add_argument('--b1',type=float,default=0.5,help='adam:decay of first order momentum of gradient')
parser.add_argument('--b2',type=float,default=0.999,help='adam:decay of first order momentum of gradient')
parser.add_argument('--n_cpu',type=float,default=4,help='number of cpu threads to use during batch generation')
parser.add_argument('--latent_dim',type=int,default=100,help='dimensionality of the latent space')
parser.add_argument('--n_classes',type=int,default=10,help='number of classes for dataset')
parser.add_argument('--img_size',type=int,default=32,help='size of each image dimension')
parser.add_argument('--channels',type=int,default=1,help='number of image channels')
parser.add_argument('--sample_interval',type=int,default=400,help='interval between image sampling')
opt=parser.parse_args(args=[])#原来是opt=parser.parse_args()
---------------------
作者:FQ_G
来源:CSDN
原文:https://blog.csdn.net/qq_33266320/article/details/81487744
版权声明:本文为博主原创文章,转载请附上博文链接!
解决方法:https://blog.csdn.net/qq_33266320/article/details/81487744