2017-12-22 4 views
0

로컬 트레이너를 실행하려고 시도하여 Google Cloud Machine Learning (ML) Engine으로 발을 구르려고합니다. 나는 구글의 설치 지침을 따라이 명령을 발행 한 :Google Cloud Machine 학습 엔진에서 로컬 실행을위한 트레이너 모듈을 찾을 수 없음

gcloud ml-engine local train \ 
    --module-name trainer \ 
    --package-path $(pwd) \ 
    --job-dir $JOB_DIR 

내 트레이너 파일 $(pwd)/trainer.py에 존재하는, 그러나 나는이 오류 메시지가 나타납니다

~/cmle-quickstart/bin/python: No module named trainer 

내가 잘못하고있는 중이 야 무엇을?

답변

3

코드는 유효한 Python package이어야하며 __init__.py이 비어 있어야합니다.

먼저 __init__.py을 만듭니다. 실행 위에서와 같은 디렉토리에서 :

touch __init__.py 

지역 교육을 실행하려면, 당신은 지금 모듈의 상위 디렉토리를 포함하는 정규화 된 이름으로 모듈을 참조해야합니다. 이 경우 디렉토리 구조는 다음과 같습니다

- my_model 
    - __init__.py 
    - trainer.py 

그런 다음 패키지 이름은 my_model하고 모듈 이름은 물론, trainer입니다. 그래서 교육을 실행하기 위해 다음 명령을 사용합니다 :

gcloud ml-engine local train \ 
    --module-name my_model.trainer \ 
    --package-path $(pwd) \ 
    --job-dir $JOB_DIR 

을 여기에서 gcloud을 말하는 것 : 나는 $(pwd)에서 유효한 파이썬 패키지가 있습니다. 난 당신이 실행하려는 패키지 내의 정규화 된 모듈 이름이 다음 명령에 해당한다는 my_model.trainer

주 :

(cd $PACKAGE_PATH/.. && python -m my_model.trainer) 

어디 my_model 디렉토리에 PACKAGE_PATH 점.

recommended project structure의 설명서도 참조하십시오.

관련 문제