File size: 3,523 Bytes
0141cf8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
Config
======



.. autoclass:: yolo.config.config.Config
    :members:
    :undoc-members:

.. automodule:: yolo.config.config
    :members:
    :undoc-members:



.. mermaid::

    classDiagram
    class AnchorConfig {
        List~int~ strides
        Optional~int~ reg_max
        Optional~int~ anchor_num
        List~List~int~~ anchor
    }

    class LayerConfig {
        Dict args
        Union~List~int~~ source
        str tags
    }

    class BlockConfig {
        List~Dict~LayerConfig~~ block
    }

    class ModelConfig {
        Optional~str~ name
        AnchorConfig anchor
        Dict~BlockConfig~ model
    }

    AnchorConfig --> ModelConfig
    LayerConfig --> BlockConfig
    BlockConfig --> ModelConfig

.. mermaid::

    classDiagram
    class DownloadDetail {
        str url
        int file_size
    }

    class DownloadOptions {
        Dict~DownloadDetail~ details
    }

    class DatasetConfig {
        str path
        int class_num
        List~str~ class_list
        Optional~DownloadOptions~ auto_download
    }

    class DataConfig {
        bool shuffle
        int batch_size
        bool pin_memory
        int cpu_num
        List~int~ image_size
        Dict~int~ data_augment
        Optional~Union~str~~ source
    }

    DownloadDetail --> DownloadOptions
    DownloadOptions --> DatasetConfig

.. mermaid::

    classDiagram
    class OptimizerArgs {
        float lr
        float weight_decay
    }

    class OptimizerConfig {
        str type
        OptimizerArgs args
    }

    class MatcherConfig {
        str iou
        int topk
        Dict~str~ factor
    }

    class LossConfig {
        Dict~str~ objective
        Union~bool~ aux
        MatcherConfig matcher
    }

    class SchedulerConfig {
        str type
        Dict~str~ warmup
        Dict~str~ args
    }

    class EMAConfig {
        bool enabled
        float decay
    }

    class TrainConfig {
        str task
        int epoch
        DataConfig data
        OptimizerConfig optimizer
        LossConfig loss
        SchedulerConfig scheduler
        EMAConfig ema
        ValidationConfig validation
    }

    class NMSConfig {
        int min_confidence
        int min_iou
    }

    class InferenceConfig {
        str task
        NMSConfig nms
        DataConfig data
        Optional~None~ fast_inference
        bool save_predict
    }

    class ValidationConfig {
        str task
        NMSConfig nms
        DataConfig data
    }

    OptimizerArgs --> OptimizerConfig
    OptimizerConfig --> TrainConfig
    MatcherConfig --> LossConfig
    LossConfig --> TrainConfig
    SchedulerConfig --> TrainConfig
    EMAConfig --> TrainConfig
    NMSConfig --> InferenceConfig
    NMSConfig --> ValidationConfig


.. mermaid::

    classDiagram
    class GeneralConfig {
        str name
        Union~str~ device
        int cpu_num
        List~int~ class_idx_id
        List~int~ image_size
        str out_path
        bool exist_ok
        int lucky_number
        bool use_wandb
        bool use_TensorBoard
        Optional~str~ weight
    }

.. mermaid::

    classDiagram
    class Config {
        Union~ValidationConfig~ task
        DatasetConfig dataset
        ModelConfig model
        GeneralConfig model
    }

    DatasetConfig --> Config
    DataConfig --> TrainConfig
    DataConfig --> InferenceConfig
    DataConfig --> ValidationConfig
    InferenceConfig --> Config
    ValidationConfig --> Config
    TrainConfig --> Config
    GeneralConfig --> Config