Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
一汁程序喵
ssd-pytorch
提交
f1adbbc5
S
ssd-pytorch
项目概览
一汁程序喵
/
ssd-pytorch
与 Fork 源项目一致
从无法访问的项目Fork
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
ssd-pytorch
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
f1adbbc5
编写于
6月 06, 2020
作者:
B
Bubbliiiing
提交者:
GitHub
6月 06, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add files via upload
上级
2ca5a9e2
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
20 addition
and
8 deletion
+20
-8
train.py
train.py
+20
-8
未找到文件。
train.py
浏览文件 @
f1adbbc5
from
nets.ssd
import
get_ssd
from
nets.ssd_training
import
Generator
,
MultiBoxLoss
from
torch.utils.data
import
DataLoader
from
utils.dataloader
import
ssd_dataset_collate
,
SSDDataset
from
utils.config
import
Config
from
torchsummary
import
summary
from
torch.autograd
import
Variable
...
...
@@ -17,20 +19,26 @@ def adjust_learning_rate(optimizer, lr, gamma, step):
return
lr
if
__name__
==
"__main__"
:
Batch_size
=
4
# ------------------------------------#
# 先冻结一部分权重训练
# 后解冻全部权重训练
# 先大学习率
# 后小学习率
# ------------------------------------#
lr
=
1e-
4
lr
=
1e-
5
freeze_lr
=
1e-5
Cuda
=
True
Start_iter
=
0
Freeze_epoch
=
25
Epoch
=
50
Batch_size
=
4
#-------------------------------#
# Dataloder的使用
#-------------------------------#
Use_Data_Loader
=
True
model
=
get_ssd
(
"train"
,
Config
[
"num_classes"
])
print
(
'Loading weights into state dict...'
)
...
...
@@ -56,8 +64,13 @@ if __name__ == "__main__":
np
.
random
.
seed
(
None
)
num_train
=
len
(
lines
)
gen
=
Generator
(
Batch_size
,
lines
,
(
Config
[
"min_dim"
],
Config
[
"min_dim"
]),
Config
[
"num_classes"
]).
generate
()
if
Use_Data_Loader
:
train_dataset
=
SSDDataset
(
lines
[:
num_train
],
(
Config
[
"min_dim"
],
Config
[
"min_dim"
]))
gen
=
DataLoader
(
train_dataset
,
batch_size
=
Batch_size
,
num_workers
=
8
,
pin_memory
=
True
,
drop_last
=
True
,
collate_fn
=
ssd_dataset_collate
)
else
:
gen
=
Generator
(
Batch_size
,
lines
,
(
Config
[
"min_dim"
],
Config
[
"min_dim"
]),
Config
[
"num_classes"
]).
generate
()
criterion
=
MultiBoxLoss
(
Config
[
'num_classes'
],
0.5
,
True
,
0
,
True
,
3
,
0.5
,
False
,
Cuda
)
...
...
@@ -80,7 +93,6 @@ if __name__ == "__main__":
for
iteration
,
batch
in
enumerate
(
gen
):
if
iteration
>=
epoch_size
:
break
start_time
=
time
.
time
()
images
,
targets
=
batch
[
0
],
batch
[
1
]
with
torch
.
no_grad
():
if
Cuda
:
...
...
@@ -105,7 +117,8 @@ if __name__ == "__main__":
print
(
'
\n
Epoch:'
+
str
(
epoch
+
1
)
+
'/'
+
str
(
Freeze_epoch
))
print
(
'iter:'
+
str
(
iteration
)
+
'/'
+
str
(
epoch_size
)
+
' || Loc_Loss: %.4f || Conf_Loss: %.4f ||'
%
(
loc_loss
/
(
iteration
+
1
),
conf_loss
/
(
iteration
+
1
)),
end
=
' '
)
print
(
'Saving state, iter:'
,
str
(
epoch
+
1
))
torch
.
save
(
model
.
state_dict
(),
'logs/Epoch%d-Loc%.4f-Conf%.4f.pth'
%
((
epoch
+
1
),
loc_loss
/
(
iteration
+
1
),
conf_loss
/
(
iteration
+
1
)))
...
...
@@ -125,7 +138,6 @@ if __name__ == "__main__":
for
iteration
,
batch
in
enumerate
(
gen
):
if
iteration
>=
epoch_size
:
break
start_time
=
time
.
time
()
images
,
targets
=
batch
[
0
],
batch
[
1
]
with
torch
.
no_grad
():
if
Cuda
:
...
...
@@ -152,4 +164,4 @@ if __name__ == "__main__":
print
(
'iter:'
+
str
(
iteration
)
+
'/'
+
str
(
epoch_size
)
+
' || Loc_Loss: %.4f || Conf_Loss: %.4f ||'
%
(
loc_loss
/
(
iteration
+
1
),
conf_loss
/
(
iteration
+
1
)),
end
=
' '
)
print
(
'Saving state, iter:'
,
str
(
epoch
+
1
))
torch
.
save
(
model
.
state_dict
(),
'logs/Epoch%d-Loc%.4f-Conf%.4f.pth'
%
((
epoch
+
1
),
loc_loss
/
(
iteration
+
1
),
conf_loss
/
(
iteration
+
1
)))
torch
.
save
(
model
.
state_dict
(),
'logs/Epoch%d-Loc%.4f-Conf%.4f.pth'
%
((
epoch
+
1
),
loc_loss
/
(
iteration
+
1
),
conf_loss
/
(
iteration
+
1
)))
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录