【colaboratory】谷歌colab挂载硬盘使用 |
您所在的位置:网站首页 › 运行中的文件能够复制吗 › 【colaboratory】谷歌colab挂载硬盘使用 |
使用谷歌的工具colaboratory可以在云端进行ML模型的训练,模型参数可以在云端保存、复用。(需要富强) 整体思路就是先把谷歌的云盘挂载到colab上,挂载以后切换到挂载的硬盘,再使用python将工作路径切换到你想要的文件夹,之后就可以在当前文件夹运行python,实现模型训练与保存。 1 挂载谷歌云盘进入谷歌云端硬盘,在主页我的云端硬盘右键》更多》关联更多应用,搜索colaboratory(全拼)点击关联。 关联后如图: 点击colaboratory创建ipython文件: 点击代码在模块中复制下面代码: !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}执行一下,会有两次验证,需要分别点击提示链接,授权访问云盘,把授权码复制到提示框里就可以。 如图表示挂载完成: 使用 !ls 或者 !pwd 查看一下当前云盘路径,一般初始是随机分配的,自己输入代码指定drive作为起始。 !mkdir -p drive !google-drive-ocamlfuse drive指定完再 !ls 看一下。 3 切换到工作路径运行前需要提前将所需要的数据文件上传到云盘文件夹内,然后使用 os 切换到文件所在路径。路径是自己在云盘里创建好的。 import os os.chdir("/content/drive/colaboratory/ML")切换后可以使用 !ls 看一下当前路径下的文件,是不是已经切换了。 4 运行py文件工作路径切换完成后直接python xx.py即可运行上传到云端的文件。 如图: 构建一个tensorflow模型的例子: import tensorflow as tf W = tf.Variable(tf.random_normal(shape=(1, 4), mean=100, stddev=0.5), name="W") b = tf.Variable(tf.zeros([4]), name="b") sess = tf.Session() sess.run(tf.global_variables_initializer()) sess.run([W, b]) sess.run(tf.assign_add(b, [1, 1, 1, 1])) sess.run(b)保存:(注意路径要存在) saver = tf.train.Saver({'W': W, 'b': b}) saver.save(sess, '/content/drive/colaboratory/ML/TFout/test.ckpt', global_step=0)断点续训复用:如果模型和路径都存在了,就直接读取已有模型。没有的话就保存当前的参数信息。 ckpt = tf.train.get_checkpoint_state('/content/drive/colaboratory/ML/TFout/') if ckpt and ckpt.model_checkpoint_path: saver.restore(sess,ckpt.model_checkpoint_path) else: saver.save(sess, '/content/drive/colaboratory/ML/TFout/test1.ckpt', global_step=0) 总结Colaboratory是基于谷歌云端运行的,每次进入时会随机分配给你一个内存和硬盘,所以如果想在云端训练,就需要先把相关代码数据上传到谷歌云盘,然后每次运行都要把云端工程文件的路径挂载到随机分配的硬盘上去。然后才可以执行相关的程序,类似一个在云端的linux服务器,只不过命令行需要加 !,其他基本和linux系统下跑python程序一样。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |