在谷歌Colab上使用免费GPU云端训练YOLO模型,十分方便!
本人的电脑显卡是3050
,大一点的数据集再加上大一点的模型,训练100多轮需要几个小时,电脑温度急剧上升,风扇嘎嘎响。盘也开始爆红,程序运行会借用部分外存作为虚拟内存使用,最初用C盘,经常爆红和pycharm
闪退,后来换了个盘,情况有所好转。但终究还是觉得放在云端训练更加无感,比较好。
引入
摸索使用谷歌的colab
进行云端训练,有免费的GPU
可以使用。本篇文章以yolov8
为例进行演示说明。网络、账号问题自行解决。时长问题,可以通过注册多个帐号进行解决。
Colab 是一个免费的云端 Jupyter 笔记本,可让您在浏览器中使用 Python 进行数据科学、机器学习和 AI 研究。您可以无需配置使用 GPU,轻松共享和导入数据,还可以观看示例和教程。
测试发现,更换训练类型(cpu
和gpu
)的话,之前下载的资源会丢失,需要重现导入,谷歌磁盘会重现挂载。
过程
登录
登录谷歌colab
后,选择在云端硬盘新建笔记本。
如果数据data.yaml
和模型model.yaml
在本地使用的是绝对路径配置,请更改为相对路径或者重新配置以/content/drive/My Drive/Colab Notebooks/
项目文件开头的绝对路径(不急,后面训练前再更改就行)
新建单元,使用下面的命令挂载网盘
from google.colab import drive
drive.mount('/content/drive')
image.png
弹出挂载请求后,登录与colab
相同的帐号即可。
然后在左侧就能看到自己的文件。注意:yolov8
模型文件可以在左侧上传,也可以在谷歌网盘中上传。
环境配置
切换到自己的工作目录,注意/content/drive/My Drive/Colab Notebooks/
import os
# 切换工作目录
os.chdir('/content/drive/My Drive/Colab Notebooks/ultralytics-main/')
# 验证工作目录是否已切换
print(os.getcwd()) # 打印当前工作目录
使用下面的命令安装所需要的库
pip install ultralytics
至此,环境已经配置完成
开始训练
默认使用CPU
进行训练,选择GPU
会报错。
from ultralytics import YOLO
# 加载模型
model = YOLO("yolo11n.pt")
# 训练模型
train_results = model.train(
data="coco8.yaml", # 数据集 YAML 路径
epochs=100, # 训练轮次
imgsz=640, # 训练图像尺寸
device="cpu", # 运行设备,例如 device=0 或 device=0,1,2,3 或 device=cpu)
点击菜单栏中的修改-笔记本设置,在下方界面中可以选择GPU
训练。
然后显示会断开连接,点击确认,然后保存。重新连接、装载
注意:需要重新执行环境配置、工作目录切换。否则报错。
输入以下代码测试
from ultralytics import YOLO
# 加载模型
model = YOLO("yolo11n.pt")
# 训练模型
train_results = model.train(
data="coco8.yaml", # 数据集 YAML 路径
epochs=100, # 训练轮次
imgsz=640, # 训练图像尺寸
device="0", # 运行设备,例如 device=0 或 device=0,1,2,3 或 device=cpu
)
开始使用GPU
训练,终端现实的内容与电脑本地训练无异。
其他
colab非常好用,支持多种格式的文件的查看(csv、png、jpg
等)、修改(yaml、txt、csv、py
等)。
十分方便修改yaml、py
文件。
支持查看资源使用情况,显存占用达到7个G,风扇再也不嘎嘎转了。
支持与google
家的GeminiAI
进行交互,有什么代码问题可以直接询问。
测试了一下,电脑上3个小时训练时间,直接压缩到了半个小时完事儿。
等等,还没完!
然而,当我引入注意力机制模块SEAM
的时候,却发生了报错。
下一期,讲讲怎么解决的。
以上就是本期的全部内容了,利用colab进行训练,无需复杂的环境配置即可完成。后续将会撰写其他类型的云端训练教程,欢迎关注。
这里是Andsoon,输入与输出~