Skip to content
This repository was archived by the owner on Nov 2, 2024. It is now read-only.

Commit c12dcdd

Browse files
committed
docs(finetune): 模型微调实现
1 parent 2725011 commit c12dcdd

File tree

2 files changed

+160
-0
lines changed

2 files changed

+160
-0
lines changed

docs/微调模型.md

Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
2+
# 微调模型
3+
4+
本工程通过`PyTorch`库进行卷积网络训练,其微调实现参考[迁移学习](https://blog.zhujian.life/posts/c7511b44.html)
5+
6+
## 预训练模型
7+
8+
`PyTorch`提供了`AlexNet`的预训练模型
9+
10+
## python文件
11+
12+
* 微调实现:`py/finetune.py`
13+
* 自定义微调数据集类:`py/utils/data/custom_finetune_dataset.py`
14+
* 自定义批量采样器类:`py/utils/data/custom_batch_sampler.py`
15+
* 辅助函数:`py/utils/util.py`
16+
17+
## 训练参数
18+
19+
* 批量处理:每次训练`128`个图像,其中`32`个正样本,`96`个负样本
20+
* 输入模型图像:缩放到`(227, 227)`,随机水平翻转,进行归一化操作
21+
* 优化器
22+
* 使用`SGD`:学习率为`1e-3`,动量大小为`0.9`
23+
* 随步长衰减:每隔`7`轮衰减一次,衰减因子为`0.1`
24+
* 迭代次数:`25`
25+
26+
## 训练结果
27+
28+
```
29+
$ python finetune.py
30+
...
31+
...
32+
Epoch 0/24
33+
----------
34+
train Loss: 0.1906 Acc: 0.9163
35+
val Loss: 0.3662 Acc: 0.8692
36+
37+
Epoch 1/24
38+
----------
39+
train Loss: 0.1204 Acc: 0.9499
40+
val Loss: 0.4081 Acc: 0.8701
41+
42+
Epoch 2/24
43+
----------
44+
train Loss: 0.0958 Acc: 0.9608
45+
val Loss: 0.4002 Acc: 0.8719
46+
47+
Epoch 3/24
48+
----------
49+
train Loss: 0.0825 Acc: 0.9663
50+
val Loss: 0.4505 Acc: 0.8725
51+
52+
Epoch 4/24
53+
----------
54+
train Loss: 0.0726 Acc: 0.9707
55+
val Loss: 0.5031 Acc: 0.8697
56+
57+
Epoch 5/24
58+
----------
59+
train Loss: 0.0662 Acc: 0.9733
60+
val Loss: 0.5340 Acc: 0.8681
61+
62+
Epoch 6/24
63+
----------
64+
train Loss: 0.0611 Acc: 0.9754
65+
Qval Loss: 0.5102 Acc: 0.8714
66+
67+
Epoch 7/24
68+
----------
69+
train Loss: 0.0505 Acc: 0.9799
70+
val Loss: 0.5529 Acc: 0.8725
71+
72+
Epoch 8/24
73+
----------
74+
train Loss: 0.0489 Acc: 0.9806
75+
val Loss: 0.5540 Acc: 0.8728
76+
77+
Epoch 9/24
78+
----------
79+
train Loss: 0.0479 Acc: 0.9810
80+
val Loss: 0.5818 Acc: 0.8717
81+
82+
Epoch 10/24
83+
----------
84+
train Loss: 0.0465 Acc: 0.9815
85+
val Loss: 0.5819 Acc: 0.8727
86+
87+
Epoch 11/24
88+
----------
89+
train Loss: 0.0452 Acc: 0.9821
90+
val Loss: 0.5765 Acc: 0.8732
91+
92+
Epoch 12/24
93+
----------
94+
train Loss: 0.0456 Acc: 0.9819
95+
val Loss: 0.5957 Acc: 0.8725
96+
97+
Epoch 13/24
98+
----------
99+
train Loss: 0.0449 Acc: 0.9823
100+
val Loss: 0.5857 Acc: 0.8724
101+
102+
Epoch 14/24
103+
----------
104+
train Loss: 0.0438 Acc: 0.9827
105+
val Loss: 0.5943 Acc: 0.8723
106+
107+
Epoch 15/24
108+
----------
109+
train Loss: 0.0442 Acc: 0.9823
110+
val Loss: 0.5874 Acc: 0.8730
111+
112+
Epoch 16/24
113+
----------
114+
train Loss: 0.0443 Acc: 0.9824
115+
val Loss: 0.5950 Acc: 0.8720
116+
117+
Epoch 17/24
118+
----------
119+
train Loss: 0.0437 Acc: 0.9828
120+
val Loss: 0.5945 Acc: 0.8729
121+
122+
Epoch 18/24
123+
----------
124+
train Loss: 0.0434 Acc: 0.9828
125+
val Loss: 0.5975 Acc: 0.8725
126+
127+
Epoch 19/24
128+
----------
129+
train Loss: 0.0435 Acc: 0.9827
130+
val Loss: 0.5900 Acc: 0.8730
131+
132+
Epoch 20/24
133+
----------
134+
train Loss: 0.0432 Acc: 0.9828
135+
val Loss: 0.5922 Acc: 0.8730
136+
137+
Epoch 21/24
138+
----------
139+
train Loss: 0.0426 Acc: 0.9832
140+
val Loss: 0.5977 Acc: 0.8720
141+
142+
Epoch 22/24
143+
----------
144+
train Loss: 0.0426 Acc: 0.9832
145+
val Loss: 0.5974 Acc: 0.8726
146+
147+
Epoch 23/24
148+
----------
149+
train Loss: 0.0435 Acc: 0.9828
150+
val Loss: 0.6019 Acc: 0.8718
151+
152+
Epoch 24/24
153+
----------
154+
train Loss: 0.0432 Acc: 0.9828
155+
val Loss: 0.5996 Acc: 0.8718
156+
157+
Training complete in 461m 14s
158+
Best val Acc: 0.873228
159+
```

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ nav:
3232
- Home: index.md
3333
- 工程解析: './工程解析.md'
3434
- 数据集创建: './数据集创建.md'
35+
- 微调模型: './微调模型.md'
3536
- '算法解析': './算法解析.md'
3637
- '数据集':
3738
- '创建': './create_data.md'

0 commit comments

Comments
 (0)