1.进入某一路径
- cd /content
- %cd MACU-Net/
2.显示当前路径
pwd
3.下载github上的某个网络
!git clone https://github.com/lironui/MACU-Net.git
4.数据集复制或解压
直接将数据集布置在谷歌云盘传输速度太慢,因此我们需要将数据集复制到本地(/content)进行处理。
A.假如我们传入到谷歌云盘中数据集文件是压缩包的形式,我们需要输入下述代码进行文件的复制与解压。
- 首先执行的是删除指令,将当前网络文件中的空RSSCN7文件夹进行删除。
- 第一行代码先进行数据集压缩包文件的复制,当复制文件时可以使用该指令,中间一段是源文件地址, 最后面的./是需要复制到的位置,也就是faster-rcnn-tf2目录下, 然后进行解压
###解压zip文件
!rm -rf ./RSSCN7
!unzip '/content/drive/My Drive/test.rar' -d '/content/test'
###解压rar文件
!pip install pyunpack
!pip install patool
from pyunpack import Archive
Archive('/content/drive/My Drive/test.rar').extractall('/content/test')
B.假如我们上传的数据集是文件夹形式的话,那么可以直接通过复制文件夹的方式复制数据集到指定位置
import shutil
oldpath = '/content/drive/MyDrive/ColabNotebooks/VOCdevkit'
newpath = '/content/faster-rcnn-tf2/VOCdevkit'
shutil.copytree(oldpath,newpath)
5.深度学习网络的下载或复制
A.直接从github上下载网络
!git clone https://github.com/lironui/MACU-Net.git
B.网络是电脑上传到谷歌云盘里的,要把它按路径复制到/content中
oldpath是网络所在的谷歌云盘地址,newpath是content下的目标地址
import shutil
oldpath = '/content/drive/MyDrive/CNN
newpath = '/content/CNN
shutil.copytree(oldpath,newpath)
6.防止断线,把运行结果和谷歌云盘连接起来(可以理解成自动保存)
本文提供的代码默认的保存路径为logs文件夹,但Colab存在不稳定的问题,运行一段时间后会发生断线。如果将权值保存在原始根目录下的logs文件夹,发生断线网络就白训练了,浪费大量的时间。可以将google云盘软连接到根目录下,那么即使断线,权值也保留在云盘中。
由于之前已经在云盘中创建了logs文件夹。先将当前faster-rcnn-tf文件夹下的logs文件夹删除,再将谷歌云盘中的logs文件夹链接过来。执行完该代码后,当前文件夹下的logs就等同于谷歌云盘中的logs文件夹
!rm -rf logs
!ln -s /content/drive/MyDrive/ColabNotebooks/logs logs