Naver-AI-Hackathon / AI-Vision

67 stars 34 forks source link

submit 으로 제출할 시 cpu와 gpu 개수 #212

Closed DevKiHyun closed 5 years ago

DevKiHyun commented 5 years ago

submit으로 서버에서 infer를 돌리고 있는 경우 할당되는 cpu 개수가 어떻게 됩니까? nsml run과 마찬가지로 -c 를 통해 cpu를 정해서 할당할 수 있었는데 submit 에서는 고정으로 6개 정도를 할당하나요? 데이터가 너무 많아져서 cpu가 많이 필요할 것 같습니다..

nsml-admin commented 5 years ago

안녕하세요.

submit 에서는 cpu개수가 4개로 고정되어있고 따로 지정할수는 없습니다. 만약 데이터가 많아져서 메모리가 문제가된다면 generator를 활용해보시면 어떨까요? https://github.com/AiHackathon2018/AI-Vision/issues/197

감사합니다.

DevKiHyun commented 5 years ago

최적화를 잘 해야된다는 것은 의견이 없지만 개인적으로 데이터양이 상당히 커졌는데 제출 시 주어지는 1시간이 너무 짧은 것 같네요...

ttagu99 commented 5 years ago

안녕하세요.

submit 에서는 cpu개수가 4개로 고정되어있고 따로 지정할수는 없습니다. 만약 데이터가 많아져서 메모리가 문제가된다면 generator를 활용해보시면 어떨까요? #197

감사합니다.

이건 질문은 아니고 제안인데요. submit ** -t 옵션이 query 10개 + refer 10개 만하는건데. 전체 set으로 infer 함수 로그찍어가면서 해볼 수 있는 옵션이 하나 있었으면 좋겠습니다. 저는 local에 전체 set수 array를 만들고, infer 함수 실행해보고, 시간 오래걸리는 부분 줄이고 있긴하지만, 위 같은 기능 있으면 다른 분들도 저처럼 하지 않고, infer 함수 개선하기 편할거 같아요~.

nsml-admin commented 5 years ago

@DevKiHyun

제한된 1시간의 submit 시간은 abusing을 막기 위한 최대 한도로 책정한 사안입니다. 혹시 이전 예선과 비교해서 timeout 시간이 얼마나 더 필요하신지 알 수 있을까요?

@ttagu99 말씀은 submit -t로했을때 10개의 데이터셋이 아니라, 전체 set으로(트레이닝 셋이겠죠?) infer함수 로그를 찍어봤으면 좋겠다는건가요? 좋은아이디어인것 같습니다. 저희팀에서 따로 논의해보도록 하겠습니다.

두분다 좋은의견 감사합니다.

ttagu99 commented 5 years ago

@DevKiHyun

제한된 1시간의 submit 시간은 abusing을 막기 위한 최대 한도로 책정한 사안입니다. 혹시 이전 예선과 비교해서 timeout 시간이 얼마나 더 필요하신지 알 수 있을까요?

@ttagu99 말씀은 submit -t로했을때 10개의 데이터셋이 아니라, 전체 set으로(트레이닝 셋이겠죠?) infer함수 로그를 찍어봤으면 좋겠다는건가요? 좋은아이디어인것 같습니다. 저희팀에서 따로 논의해보도록 하겠습니다.

두분다 좋은의견 감사합니다.

네 감사합니다. 나중에 생각한거긴 한데. 단순 infer함수의 속도 개선이 목적이라면, 아래처럼 10개 제공된 image list를 아래처럼 갯수만 맞춰줘도 가능합니다. 참고하세요~.

debuging all set size

    # queries = query_img x 901
    # references = references x 3674
    # query_img = query_img x 901
    # reference_img = reference_img x 3674

training set으로 submit 해보는 옵션이 있다면 최고 일거 같습니다. mAP@1000까지 계산된다면, test 점수가 안나올때 overfit 되서 안나오는건지, underfit 되서 안나오는건지, train 자체를 잘못한건지, 모델링할때 디버깅하기가 훨씬 수월해질거 같습니다~.

DevKiHyun commented 5 years ago

nsml 서버가 설계한 제출 구조에 대해 말씀해주신걸 들어보니 1시간 제한과 1시간 이내 끝나도록 하는게 타당한 것 같습니다. 1시간 안에 최대한의 능력을 발휘해보도록 하겠습니다!