> For the complete documentation index, see [llms.txt](https://hhu-leons-organization.gitbook.io/uav_lodboost_docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hhu-leons-organization.gitbook.io/uav_lodboost_docs/user-guide/xun-lian-yolo-mo-xing/kai-shi-xun-lian.md).

# 开始训练

{% hint style="info" %}

*<mark style="color:blue;">1、训练前仔细检查自己的格式是否满足要求，该库要求数据集格式为VOC格式，需要准备好的内容有输入图片和标签 输入图片为.jpg图片，无需固定大小，传入训练前会自动进行resize。 灰度图会自动转成RGB图片进行训练，无需自己修改。 输入图片如果后缀非jpg，需要自己批量转成jpg后再开始训练。</mark>*

*<mark style="color:blue;">标签为.xml格式，文件中会有需要检测的目标信息，标签文件和输入图片文件相对应。</mark>*

*<mark style="color:blue;">2、损失值的大小用于判断是否收敛，比较重要的是有收敛的趋势，即验证集损失不断下降，如果验证集损失基本上不改变的话，模型基本上就收敛了。 损失值的具体大小并没有什么意义，大和小只在于损失的计算方式，并不是接近于0才好。如果想要让损失好看点，可以直接到对应的损失函数里面除上10000。 训练过程中的损失值会保存在logs文件夹下的loss\_%Y\_%m\_%d\_%H\_%M\_%S文件夹中</mark>*

*<mark style="color:blue;">3、训练好的权值文件保存在logs文件夹中，每个训练世代（Epoch）包含若干训练步长（Step），每个训练步长（Step）进行一次梯度下降。 如果只是训练了几个Step是不会保存的，Epoch和Step的概念要捋清楚。</mark>*
{% endhint %}

{% tabs %}
{% tab title="在PC机上使用集成开发环境训练" %}
**单卡模式：**

按照文档调整train.py内所需的参数，右键运行train.py即可。

**多卡模式：**

* DP模式在控制台输入（Windows系统下默认使用DP模式调用所有显卡，不支持DDP）

  ```
  CUDA_VISIBLE_DEVICES=0,1 python train.py
  ```
* DDP模式在控制台输入

  ```
  CUDA_VISIBLE_DEVICES=0,1 python -m torch.distributed.launch --nproc_per_node=2 train.py
  ```

{% endtab %}

{% tab title="服务器端/控制台训练" %}

{% endtab %}
{% endtabs %}
