TensorFlow Cloud 워크플로 디버깅

다음은 예상치 못한 문제를 해결하기 위한 몇 가지 팁입니다.

유통 전략 범위 내에서 허용되지 않는 작업

다음과 같은 오류 : 전략 범위 내에서 생성기를 생성하는 것은 허용되지 않습니다. 생성기를 복제하는 방법에 모호성이 있기 때문입니다(예: 각 복제본이 동일한 난수를 얻도록 복사해야 하거나 각 복제본이 서로 다른 무작위를 얻도록 '분할'해야 함) 숫자).

해결 방법 : distribution_strategy='auto' 전달하여 API를 run 제공된 클러스터 구성을 기반으로 하는 TF 배포 전략의 모든 스크립트가 래핑됩니다. 어떤 이유로 배포 전략 범위 내에서 작업이 허용되지 않는 경우 위의 오류 또는 이와 유사한 오류가 표시됩니다. 오류를 수정하려면 None distribution_strategy 매개변수에 전달하고 예에 표시된 대로 훈련 코드의 일부로 전략 인스턴스를 생성하십시오.

Docker 이미지 빌드 시간 초과

다음과 같은 오류 : request.Exceptions.ConnectionError: ('연결이 중단되었습니다.', timeout('쓰기 작업 시간이 초과되었습니다'))

해결 방법 : 진입점으로 사용되는 디렉터리에 이미지를 성공적으로 빌드하기에는 너무 많은 데이터가 있을 가능성이 높으며 빌드에 관련 없는 데이터가 포함될 수 있습니다. 진입점이 포함된 폴더에 현재 프로젝트에 필요한 파일만 포함되도록 디렉터리 구조를 다시 포맷하십시오.

TPU 학습이 지원되지 않는 버전

다음과 같은 오류 : 작업을 제출하는 동안 오류가 발생했습니다. 필드: tpu_tf_version 오류: 지정된 런타임 버전 '2.3'은 TPU 학습에 지원되지 않습니다. 다른 런타임 버전을 지정하세요.

해결 방법 : TF 버전 2.1을 사용하세요. 클러스터 및 배포 전략 구성 섹션 에서 TPU 전략을 참조하세요.

TF 야간 빌드.

다음과 같은 경고 : Docker 상위 이미지 '2.4.0.dev20200720'이 존재하지 않습니다. 최신 TF Nightly 빌드를 사용합니다.

해결 방법 : docker_config.parent_image 매개변수를 제공하지 않으면 기본적으로 사전 빌드된 TF docker 이미지를 상위 이미지로 사용합니다. run 호출되는 환경에 TF가 설치되어 있지 않으면 latest 안정 릴리스용 TF docker 이미지가 사용됩니다. 그렇지 않으면 Docker 이미지 버전이 로컬에 설치된 TF 버전과 일치합니다. 그러나 사전 빌드된 TF Docker 이미지는 최신 버전을 제외하고 TF nightlies에 사용할 수 없습니다. 따라서 로컬 TF가 이전 Nightly 버전인 경우 자동으로 최신 Nightly 버전으로 업그레이드하고 이 경고를 발생시킵니다.

배포 전략 개체를 혼합합니다.

다음과 같은 오류 : RuntimeError: 서로 다른 tf.distribute.Strategy 개체를 혼합합니다.

해결 방법 : 모델 코드에 배포 전략이 이미 정의되어 있는 경우 distribution_strategy=None 제공하십시오. distribution_strategy'='auto' 지정하면 TensorFlow 배포 전략으로 코드가 래핑됩니다. 코드에 이미 사용된 전략 개체가 있는 경우 위의 오류가 발생합니다.