Yêu cầu Thứ Hai, 8:10 SA 20 0 1
  • 20 0 1
0

GAP và Softmax trong ResNet

Chia sẻ
  • 20 0 1

Chào tất cả mọi người, hiện tại em đang tìm hiểu về ResNet và khi em nhìn vào paper, có 1 tấm hình về architecture của ResNet. Trong ảnh em thấy phần cuối cùng chính là Average Pool, 1000d-fc, softmax. Nhưng khi em thực hiện model như hình thì cho ra kết quả rất tệ (~10%) và rồi em tìm hiểu trên mạng thì thấy mọi người không sử dụng softmax và average pool mà chỉ sử dụng Flatten -> Linear Combination thì cho ra kết quả rất tốt (~95-98%). Anh chị cho em hỏi là tại sao lại không sử dụng softmax cho bài toán classification ạ. Em sử dụng: MNIST dataset Batch size: 32 optimize: SGD

1 CÂU TRẢ LỜI


Đã trả lời khoảng 19 giờ trước
Đã được chấp nhận
+1

Hàm softmax thường được sử dụng cho các bài toán phân loại, mình nghĩ vấn đề ở đây không phải là do softmax mà do lớp 1000d-fc. Bạn thử thay lớp đó thành bằng với num classes của tập dataset và thay optimizer bằng Adam thử xem

Chia sẻ
Avatar Pikaman @pikamanh
khoảng 12 giờ trước

Em có sử dụng Adam thì đúng là nó có hiệu quả hơn so với SGD nhưng mà khi test trên tập test thì cho ra kết quả rất tệ. Mặc dù accuracy Train > 95% nhưng khi test thì accuracy Test giảm từ 95% xuốngLoss của nó từ từ tăng lên. Có cách nào để khắc phục được tình trạng này không ạ.

Note: Em đã thay 1000d-fc -> 10 num classes

Avatar Hoài Nam @namtmh31
khoảng 11 giờ trước

@pikamanh Mình muốn hỏi là acc test đã giảm xuống còn bao nhiêu ấy tại vì thường acc test thấp hơn acc train là khá bình thường. Ví dụ acc vẫn ở trên 85% thì vẫn chấp nhận được. Bạn cho mình xin thêm thông tin là đang train với bao nhiêu epoch

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí