keris2020 / hackathon

10 stars 7 forks source link

main.py의 관한 오류와 질문 #37

Closed ddkk0714 closed 4 years ago

ddkk0714 commented 4 years ago

기본 main.py 파일은 어떻게 생성하나요? 일단 쥬피터노트북을 통해 local-nsml 설정을 한 import keras import pytorch import nsml print (--) 인 파일을 main.py 파일로 저장한 후 cmd에서 nsml run -e main.py 로 실행을 하였더니 C:\Users\user>nsml run -e main.py time="2020/11/05 00:35:51.358" level=info msg=".nsmlignore check - start" time="2020/11/05 00:36:27.692" level=info msg=".nsmlignore check - done" time="2020/11/05 00:36:27.766" level=info msg="file integrity check - start" time="2020/11/05 00:36:27.772" level=info msg=".conda\environments.txt: invalid filename character" time="2020/11/05 00:36:27.776" level=info msg="directory whose name begins with \".\" is not allowed" time="2020/11/05 00:36:27.779" level=fatal msg="you can use a .nsmlignore file to ignore files and directories"

다음과 같은 코드가 출력이 됩니다. 정상적으로 세션명을 출력하기 위해서는 어떻게 해야 할까요?

또한 영화평점예측 연습문제에서 baseline code를 어떻게 활용해야 할지 궁금합니다. -> main.py파일 과 모델트레이닝을 위해서는 어떻해 해야 할까요?

Jun-Pyo-Park-PhD commented 4 years ago
  1. "기본 main.py 파일은 어떻게 생성하나요? 일단 쥬피터노트북을 통해 local-nsml 설정을 한 import keras import pytorch import nsml print (--) 인 파일을 main.py 파일로 저장한 후"

음 먼저 마지막 줄 print (--)의 경우, -- 를 출력하려고 하는 것 같은데 데이터 타입이 문자열(string) 인 경우, 'abcd' 와 같이 ' ' 안에 써주어야 합니다.

즉, 마지막 줄은 다음과 같이 수정하시기 바랍니다. print ('--')

image

  1. 위 내용만 수정하면 소스는 문제가 없을 것 같은데, 동일 폴더에 여러 파일들이 섞여있는 듯 하네요. 별도의 폴더 (예. c:\Users\user\hello) 를 만들어서 main.py만 넣고 같은 명령어로 run 시키면 정상적으로 돌아갈 듯 합니다.

  2. 정상적으로 수행되면 다음과 같은 메시지가 출력될텐데, 여기서 붉은색 안이 세션명입니다. image

  3. 영화평점예측 문제에서는 베이스라인 코드를 받아서 압축을 풀었다면 16_tcls_movie 폴더에서 마찬가지로 nsml run 명령을 실행해서 학습시킬 수 있습니다.

    ① 학습하기 방법 커맨드 창에서 cd c:\nsml\16_tcls_movie 명령어를 입력해서 16_tcls_movie 폴더로 이동 후 아래 명령어 실행 nsml run -e main.py -d 16_tcls_movie_small

    ② 학습 완료된 모델 확인 방법 nsml model ls YOUR_SESSION_NAME

    ③ 모델 제출 방법 nsml model submit YOUR_SESSION_NAME (단, 데이터셋 이름은 16_tcls_movie 로 해서 제출해야합니다.)

    영화평점예측 실행방법에 대한 내용은 AI 해커톤 안내 문서를 보면서 따라해보시면 됩니다 :)

okgosu commented 4 years ago

에러 메시지 : directory whose name begins with "." is not allowed 의 의미는 nsml 실행하는 폴더에 '.'으로 시작하는 파일이 있으면 안된다는 겁니다. 방법1) 다른 폴더에 소스코드(main.py 등)를 만들어서 실행 방법2) .nsmlignore파일을 만들어서 '.'으로 시작하는 파일명을 기재

방법1을 추천드립니다.

ddkk0714 commented 4 years ago

혹시 방법1)인 다른 폴더에 있는 소스코드를 실행하는 방법을 자세히 알려 주실 수 있나요?