모션 키포인트 검출 AI 경진대회

운동 | Keypoint Detection | 비전 | RMSE

  • moneyIcon Prize : 400만원
  • 837명 마감

 

Pytorch baseline code 공유합니다.

2021.02.24 21:23 8,535 Views language

Pytorch로 구현한 baseline입니다.
Pytorch 공식 문서를 참고해서 만들었고, 자유롭게 사용하셔서 더 좋은 결과 내시면 좋겠습니다.
Image-keypoints augmentation을 어려워하시는 분들도 계실 것 같아 albumentations을 이용한 augmentations 부분도 포함했습니다.
파라미터 조정에 따라 75-85 정도의 error가 나오는 것 같습니다.

Code
로그인이 필요합니다
0 / 1000
최정명
2021.02.24 22:20

albumentations에서 A.OneOf 함수 있는걸 처음 알았네요. 배워갑니다. ㅎㅎ

코드공유 감사합니다.

호구너
2021.03.03 09:01

코드 공유 감사합니다!
코랩환경에서 돌릴시에
! pip install albumentations==0.4.6
버젼을 새로 받으셔야 ToTensorV2 돌릴수 있습니다 다른분들 참고하시기 바랍니다 ㅎㅎ

호구너
2021.03.03 19:50

제가 코랩에서 실행했을때, neptune 부분에서 오류가 나오는데 혹시 neptune부분은 어떻게 활용되는지 올려주실 수 있을까요??

몽실이
2021.03.04 00:19

제가 사용하던 환경을 그대로 가져와서 혼란을 만들었네요 ㅠㅠ 죄송합니다.. neptune은 mlops 서비스중 하나로 neptune.ai라는 곳에서 사용하실 수 있고, 파라미터들을 정리하는 용도로 사용하고 있습니다. 굳이 사용하지 않으셔도 되고, 제거하셔도 됩니다! 혹시 관심이 있으시면 링크를 참고해주세요! https://zzsza.github.io/mlops/2020/03/22/ml-experiment-management-using-neptune-ai/ 

Domin
2021.03.03 15:22

코랩 환경에서
!pip install albumentations
!pip install --upgrade albumentations
하신 분들께서는 ToTensorV2를 아래와 같이 대체하시면 잘 작동하실꺼에요
from albumentations.pytorch.transforms import ToTensor 
ToTensorV2 -> ToTensor로 대체

MLE귀염둥이
2021.03.04 02:58

코드 공유 감사합니다! 
혹시 시간이 어느 정도 소요되셨는지 알 수 있을까요? 
저는 1에폭에 40분 가량 걸리는데 제가 뭘 잘못한건가,,,싶어서 질문 드립니다 :)

몽실이
2021.03.04 10:57

input size, augmentation 개수, gpu 사용 여부를 알 수 있을까요? 위의 예제 그대로 실행시 제 기준 1 epoch 2분 내외로 처리됩니다. (colab, 1070ti 환경 모두) input과 augmentaiton이 민감하신 사항이라면 gpu 사용 여부에 따라 다를 것 같아요, 중간에 device 를 한번 체크해보시면 좋을 것 같습니다!

MLE귀염둥이
2021.03.04 14:10

답변 감사합니다. 
베이스코드 그대로 모델만 101로  바꿔서 코랩 프로 gpu사용하고 있습니다. 
smi로 알아보니까 tesla T100이라고 하네요

몽실이
2021.03.04 14:58

보통 그런 경우 크게 두가지 정도를 의심해볼 수 있는데요.
1. 저 코드로 101 정도로 깊은 모델은 사용을 안 해서, 모델 자체가 느릴 수도 있구요. (이럴 가능성은 좀 낮습니다.)
2. 첫번째 epoch라면 코랩이 구글 드라이브에서 코랩 vm의 ram으로 데이터를 로딩하느라 시간이 오래 걸립니다. 두번째 에폭부터는 ram에 올라간 메모리를 사용하기 때문에 빨라지는 경우가 있습니다.

resnet 18로 한번 실험을 해보시고, 마찬가지로 느리다면 2번의 경우일 것 같습니다!

MLE귀염둥이
2021.03.04 15:24

답변 감사합니다 :)
덕분에 많은 공부 되고 있습니다! 
좋은 하루 되세요 ~

몽실이
2021.03.04 14:58

삭제된 댓글입니다

orangeblue
2021.03.06 23:56

혹시 acc이 얼마나 나오나요? 

몽실이
2021.03.10 02:21

본 대회는 acc가 아닌 loss로 보는데, 위의 코드에서 파라미터만 적절히 변경시 loss 70까지는 나오는 것 같습니다.

orangeblue
2021.03.10 13:50

감사합니다. 코드에 acc까지 있어서 혹시 제가 놓친 부분이 있는지 여쭈어보려고 댓글을 남겼습니다. 답변 감사드립니다!

mina_riing
2021.03.19 12:33

train and evaluate 구간에서 계속 image must be numpy array type 와 같은 에러가 뜨는데 왜그러는걸까요...ㅠㅠ

밍슈슈
2021.03.31 20:48

loss_function으로 왜 mse를 사용한건지 여쭤봐도 될까요??