实习·操作一些神秘的服务器和训练

2026-07-30 训练日志 --- SeaShips + RF-DETR

注意:本人学习记录,目前还没输出什么有价值的观点。

但我相信:日拱一卒,功不唐捐。

1. Q:GitLab 克隆数据集到服务器

两个 IP 在 <gitlab-host>.0/24 同一子网,网络通。

GitLab 禁止密码登录,只允许 Personal Access Token。去 <gitlab-host>/-/profile/personal_access_tokens 创建 token,勾 read_repository。

bash 复制代码
# token 直接嵌 URL,绕过 VS Code credential helper 的 socket 问题
git -c credential.helper= clone 'http://用户名:token@<gitlab-host>/datasets/seaships_7000.git'

安全清理:

bash 复制代码
# 1. 清 shell 历史
history | grep 'token'
history -d <行号>

# 2. 改 git remote(去掉 URL 里的 token)
cd seaships_7000 && git remote -v
git remote set-url origin http://<gitlab-host>/datasets/seaships_7000.git

2. 数据集格式转换 --- VOC → YOLO

SeaShips(7000) 是 Pascal VOC 格式,RF-DETR 需要 YOLO 格式。

转换公式(VOC → YOLO):

ini 复制代码
x_center = (xmin + xmax) / 2 / 图片宽
y_center = (ymin + ymax) / 2 / 图片高
width    = (xmax - xmin) / 图片宽
height   = (ymax - ymin) / 图片高

YOLO txt 每行:class_id x_center y_center width height(归一化到 0-1)

目录结构:

bash 复制代码
seaships_yolo/
├── data.yaml
├── train/images/ + labels/
├── valid/images/ + labels/    ← 注意 RF-DETR 要求 "valid" 不是 "val"
└── test/images/ + labels/

验证转换: 抽同一个 xml 和 txt,手算验算。


3. 训练

python 复制代码
from rfdetr import RFDETRMedium

model = RFDETRMedium()  # 权重自动下载到 ~/.roboflow/models/
model.train(
    dataset_dir="/opt/datasets/seaships_yolo",
    epochs=100,
    batch_size=4,
)
model.save("/opt/datasets/seaships_rfdetr_medium.pt")

监控:

bash 复制代码
nvidia-smi | grep python           # 进程在不在
tail -3 /opt/rf-detr/output/metrics.csv  # 看 mAP

训练慢的原因: DETR 比 YOLO 慢 3-5 倍(Transformer + 匈牙利匹配),加上 vLLM/Ollama 占显存。


4. 续训

每个 epoch 自动保存 checkpoint 到 output/checkpoint_N.ckpt。

python 复制代码
model.train(
    dataset_dir="/opt/datasets/seaships_yolo",
    epochs=100,
    batch_size=4,
    resume="/opt/rf-detr/output/checkpoint_19.ckpt",  # 改成最新编号
)

参数名是 resume,不是 ckpt_path。

5. AI辅助经验

基本全是问一句AI下一步做什么然后照做...经验就是,1问有危险吗,怎么解决(token,历史);2关键点自己check(对比txt,xml);3训练前先问整体流程而不是盲目跟着下一步

相关推荐
w_zero_one6 小时前
算法--模拟
java·数据结构·算法
秋天的怀念_David7 小时前
算法一千零一夜 · 第十三夜 幻方,武侠世界里的数学迷宫
java·程序人生·算法
秋天的怀念_David7 小时前
算法一千零一夜 · 第十四夜 幻方与奇妙的二进制
java·程序人生·算法
薛定e的猫咪7 小时前
(ICLR 2020)MAML 靠的不是快速学习,而是特征复用
人工智能·深度学习·学习·算法·机器学习
薛定e的猫咪8 小时前
(ICLR 2026)DF-META:面向 FJSP 的无导数元学习实例自适应调度
人工智能·深度学习·学习·算法·机器学习
小羊没烦恼!9 小时前
异步编程:线程概述及使用
java·开发语言·mysql·算法·c#
wanderist.10 小时前
202609CSP认证P3
算法
云淡风轻~窗明几净10 小时前
角谷猜想最接近严格证明的测试 Version1.1.1
人工智能·算法·机器学习·图论
机器学习之心10 小时前
PINN × SVM × NSGA-II × 熵权TOPSIS:一套跑通「建模—优化—决策」的多目标优化框架
算法·机器学习·支持向量机
别动我齐刘海11 小时前
机器人 C++ / 系统联调补强2——异常处理、Protobuf
linux·c++·人工智能·学习·算法·机器学习·机器人