XNUMXD덴탈의 Amazon SageMaker Python SDK 머신 러닝(ML) 모델을 교육하고 배포하기 위한 오픈 소스 라이브러리입니다. 아마존 세이지 메이커. 의료 및 금융과 같이 엄격하게 통제되는 산업의 기업 고객은 데이터가 암호화되고 트래픽이 인터넷을 통과하지 않도록 보안 가드레일을 설정합니다. ML 모델의 SageMaker 교육 및 배포가 이러한 가드레일을 따르도록 하려면 계정에 제한을 설정하거나 AWS 조직 서비스 제어 정책을 통해 수준 및 AWS 자격 증명 및 액세스 관리 (IAM) 특정 IAM 역할의 사용을 시행하는 정책, 아마존 가상 프라이빗 클라우드 (Amazon VPC) 구성 및 AWS 키 관리 서비스 (AWS KMS) 키. 이러한 경우 데이터 과학자는 서브넷, 보안 그룹 및 KMS 키를 기록하여 이러한 매개 변수를 ML 모델 교육 및 배포 코드에 수동으로 제공해야 합니다. 이로 인해 데이터 과학자는 이러한 구성을 지정하고 작업을 성공적으로 실행하고 액세스 거부 오류가 발생하지 않도록 기억해야 할 책임이 있습니다.
SageMaker Python SDK 버전 2.148.0부터 이제 IAM 역할, VPC 및 KMS 키와 같은 파라미터의 기본값을 구성할 수 있습니다. 관리자와 최종 사용자는 YAML 형식의 구성 파일에 지정된 기본값으로 AWS 인프라 프리미티브를 초기화할 수 있습니다. 일단 구성되면 Python SDK는 이러한 값을 자동으로 상속하고 다음과 같은 기본 SageMaker API 호출에 전파합니다. CreateProcessingJob()
, CreateTrainingJob()
및 CreateEndpointConfig()
, 추가 작업이 필요하지 않습니다. 또한 SDK는 여러 구성 파일을 지원하므로 관리자는 모든 사용자에 대한 구성 파일을 설정할 수 있으며 사용자는 다음 위치에 저장할 수 있는 사용자 수준 구성을 통해 이를 재정의할 수 있습니다. 아마존 단순 스토리지 서비스 (아마존 S3), 아마존 탄성 파일 시스템 (아마존 EFS) 아마존 세이지 메이커 스튜디오, 또는 사용자의 로컬 파일 시스템.
이 게시물에서는 Studio에서 기본 구성 파일을 생성 및 저장하고 SDK 기본값 기능을 사용하여 SageMaker 리소스를 생성하는 방법을 보여줍니다.
솔루션 개요
엔드투엔드로 이 새로운 기능을 시연합니다. AWS 클라우드 포메이션 필요한 인프라를 생성하고 배포된 VPC에 Studio 도메인을 생성하는 템플릿입니다. 또한 교육 및 처리 작업에 사용되는 볼륨을 암호화하기 위한 KMS 키를 생성합니다. 단계는 다음과 같습니다.
- 계정에서 CloudFormation 스택을 시작합니다. 또는 기존 SageMaker 도메인 또는 노트북에서 이 기능을 탐색하려면 이 단계를 건너뜁니다.
- 그 (것)들을 채우십시오
config.yaml
파일을 기본 위치에 저장합니다. - 데이터 처리, 모델 교육 및 추론을 포함하여 종단 간 ML 사용 사례로 샘플 노트북을 실행합니다.
- 기본 구성 값을 재정의합니다.
사전 조건
시작하기 전에 AWS 계정과 IAM 사용자 또는 관리자 권한이 있는 역할이 있는지 확인하십시오. 현재 노트북의 리소스에 인프라 매개 변수를 전달하는 데이터 과학자인 경우 환경 설정의 다음 단계를 건너뛰고 구성 파일 생성을 시작할 수 있습니다.
이 기능을 사용하려면 다음을 실행하여 SageMaker SDK 버전을 업그레이드해야 합니다. pip install --upgrade sagemaker
.
환경 설정
네트워킹 및 Studio 도메인을 포함한 전체 인프라를 배포하려면 다음 단계를 완료하십시오.
- 클론 GitHub 저장소.
- AWS 계정에 로그인하고 AWS CloudFormation 콘솔을 엽니다.
- 네트워킹 리소스를 배포하려면 다음을 선택합니다. 스택 생성.
- 아래에 템플릿을 업로드합니다.
setup/vpc_mode/01_networking.yaml
. - 스택의 이름을 제공합니다(예:
networking-stack
) 나머지 단계를 완료하여 스택을 생성합니다. - Studio 도메인을 배포하려면 다음을 선택합니다. 스택 생성 또.
- 아래에 템플릿을 업로드합니다.
setup/vpc_mode/02_sagemaker_studio.yaml
. - 스택의 이름을 제공합니다(예:
sagemaker-stack
), 다음을 묻는 메시지가 표시되면 네트워킹 스택의 이름을 제공합니다.CoreNetworkingStackName
매개 변수입니다. - 나머지 단계를 진행하고 IAM 리소스에 대한 승인을 선택하고 스택을 생성합니다.
두 스택의 상태가 CREATE_COMPLETE, 다음 단계로 진행합니다.
구성 파일 만들기
SageMaker Python SDK의 기본 구성을 사용하려면 SDK에서 예상하는 형식으로 config.yaml 파일을 생성합니다. config.yaml 파일의 형식은 다음을 참조하십시오. 구성 파일 구조. Studio 노트북, SageMaker 노트북 인스턴스 또는 로컬 IDE와 같은 작업 환경에 따라 구성 파일을 기본 위치에 저장하거나 구성 파일 위치를 전달하여 기본값을 재정의할 수 있습니다. 다른 환경의 기본 위치는 다음을 참조하십시오. 구성 파일 위치. 다음 단계는 Studio 노트북 환경 설정을 보여줍니다.
쉽게 생성하려면 config.yaml
파일에서 Studio 시스템 터미널에서 다음 셀을 실행하여 자리 표시자를 이전 단계의 CloudFormation 스택 이름으로 바꿉니다.
이 스크립트는 자리 표시자를 인프라 기본값으로 대체하여 YAML 파일을 자동으로 채우고 홈 폴더에 파일을 저장합니다. 그런 다음 파일을 Studio 노트북의 기본 위치에 복사합니다. 결과 구성 파일은 다음 형식과 유사해야 합니다.
기존 도메인과 네트워킹 구성이 설정되어 있는 경우 config.yaml
필요한 형식으로 파일을 만들고 Studio 노트북의 기본 위치에 저장합니다.
이러한 기본값은 적절한 SageMaker SDK 호출에 대한 구성 값을 자동으로 채우고 사용자에게 특정 VPC, 서브넷 또는 역할을 적용하지 않습니다. 관리자로서 사용자가 특정 구성이나 역할을 사용하도록 하려면 다음을 사용하십시오. IAM 조건 키 기본값을 적용합니다.
또한 각 API 호출에는 고유한 구성이 있을 수 있습니다. 예를 들어 앞의 구성 파일 샘플에서 다음을 지정할 수 있습니다. vpc-a
및 subnet-a
학습 작업에 대해 지정하고 vpc-b
및 subnet-c
, subnet-d
작업을 처리하기 위해.
샘플 노트북 실행
이제 구성 파일을 설정했으므로 대부분의 SDK 기능에 대해 네트워킹 및 암호화 매개변수를 명시적으로 설정할 필요 없이 평소와 같이 모델 구축 및 학습 노트북 실행을 시작할 수 있습니다. 보다 지원되는 API 및 매개변수 지원되는 API 호출 및 매개변수의 전체 목록을 확인하세요.
Studio의 탐색 창에서 파일 탐색기 아이콘을 선택하고 03_feature_engineering/03_feature_engineering.ipynb
다음 스크린 샷에 표시된대로
노트북 셀을 하나씩 실행하고 추가 구성을 지정하지 않았는지 확인합니다. 프로세서 개체를 생성하면 다음 예제와 같은 셀 출력이 표시됩니다.
출력에서 볼 수 있듯이 사용자의 추가 입력 없이 기본 구성이 처리 작업에 자동으로 적용됩니다.
다음 셀을 실행하여 프로세서를 실행할 때 SageMaker 콘솔에서 작업을 확인하여 기본값이 설정되었는지 확인할 수도 있습니다. 선택하다 작업 처리 아래에 처리 다음 스크린샷과 같이 탐색 창에서
프리픽스가 있는 처리 작업을 선택합니다. end-to-end-ml-sm-proc
, 이미 구성된 네트워킹 및 암호화를 볼 수 있어야 합니다.
나머지 노트북을 계속 실행하여 모델을 교육하고 배포할 수 있으며 인프라 기본값이 교육 작업과 모델 모두에 자동으로 적용됨을 알 수 있습니다.
기본 구성 파일 재정의
예를 들어 공용 인터넷 액세스를 실험하거나 서브넷에 IP 주소가 부족한 경우 네트워킹 구성을 업데이트하기 위해 사용자가 기본 구성을 재정의해야 하는 경우가 있을 수 있습니다. 이러한 경우 Python SDK를 사용하면 로컬 스토리지에서 구성 파일에 대한 사용자 지정 위치를 제공하거나 Amazon S3의 위치를 가리킬 수 있습니다. 이 섹션에서는 예제를 살펴봅니다.
열기 user-configs.yaml
홈 디렉토리에 파일을 저장하고 업데이트하십시오. EnableNetworkIsolation
가치 True
아래 TrainingJob
안내
이제 동일한 노트북을 열고 노트북 시작 부분에 다음 셀을 추가합니다.
이 셀을 사용하여 구성 파일의 위치를 SDK로 지정합니다. 이제 프로세서 개체를 생성하면 네트워크 격리를 활성화하도록 기본 구성이 재정의되었으며 네트워크 격리 모드에서 처리 작업이 실패함을 알 수 있습니다.
VSCode와 같은 로컬 환경을 사용하는 경우 동일한 재정의 환경 변수를 사용하여 구성 파일의 위치를 설정할 수 있습니다.
디버그 및 기본값 검색
빠른 문제 해결을 위해 노트북에서 API 호출을 실행할 때 오류가 발생하면 이전 섹션에 표시된 대로 셀 출력에 적용된 기본 구성이 표시됩니다. 기본 구성 파일에서 전달된 속성 값을 보기 위해 생성된 정확한 Boto3 호출을 보려면 Boto3 로깅을 켜서 디버그할 수 있습니다. 로깅을 켜려면 노트북 상단에서 다음 셀을 실행합니다.
모든 후속 Boto3 호출은 로그의 본문 섹션 아래에 표시되는 전체 요청과 함께 기록됩니다.
다음을 사용하여 기본 구성 모음을 볼 수도 있습니다. session.sagemaker_config
값은 다음 예와 같습니다.
마지막으로 Boto3를 사용하여 SageMaker 리소스를 생성하는 경우 다음을 사용하여 기본 구성 값을 검색할 수 있습니다. sagemaker_config
변하기 쉬운. 예를 들어 다음에서 처리 작업을 실행하려면 03_feature_engineering.ipynb
Boto3를 사용하여 동일한 노트북에 다음 셀의 내용을 입력하고 셀을 실행할 수 있습니다.
구성 파일 생성 자동화
관리자의 경우 구성 파일을 생성하고 파일을 각 SageMaker 노트북 인스턴스 또는 Studio 사용자 프로필에 저장해야 하는 작업이 어려울 수 있습니다. 사용자에게 기본 S3 위치에 저장된 공통 파일을 사용하도록 권장할 수 있지만 데이터 과학자에게 재정의를 지정하는 추가 오버헤드가 발생합니다.
이를 자동화하기 위해 관리자는 SageMaker 수명 주기 구성(LCC)을 사용할 수 있습니다. Studio 사용자 프로필 또는 노트북 인스턴스의 경우 다음 샘플 LCC 스크립트를 사용자의 기본 Jupyter 서버 앱에 대한 기본 LCC로 연결할 수 있습니다.
만나다 Amazon SageMaker Studio의 수명 주기 구성 사용 or 노트북 인스턴스 사용자 정의 기본 수명 주기 스크립트 생성 및 설정에 대한 지침은 다음을 참조하십시오.
정리
이 기능에 대한 실험을 마치면 추가 비용을 지불하지 않도록 리소스를 정리하십시오. 이 게시물에 지정된 대로 새 리소스를 프로비저닝한 경우 다음 단계를 완료하여 리소스를 정리하십시오.
- 사용자 프로필에 대한 Studio 앱을 종료합니다. 보다 SageMaker Studio 및 Studio 앱 종료 및 업데이트 지침을 위해. 스택을 삭제하기 전에 모든 앱이 삭제되었는지 확인하십시오.
- Studio 도메인용으로 생성된 EFS 볼륨을 삭제합니다. 다음을 사용하여 도메인에 연결된 EFS 볼륨을 볼 수 있습니다. 설명도메인 API 호출.
- Studio 도메인 스택을 삭제합니다.
- Studio 도메인에 대해 생성된 보안 그룹을 삭제합니다. 다음에서 찾을 수 있습니다. 아마존 엘라스틱 컴퓨트 클라우드 (Amazon EC2) 콘솔, 이름이 security-group-for-inbound-nfs-d-xxx 및 security-group-for-outbound-nfs-d-xxx인 콘솔
- 네트워킹 스택을 삭제합니다.
결론
이 게시물에서는 SageMaker Python SDK를 사용하여 주요 인프라 매개변수의 기본값 구성 및 사용에 대해 논의했습니다. 이를 통해 관리자는 데이터 과학자를 위한 기본 구성을 설정할 수 있으므로 사용자와 관리자의 시간을 절약하고 매개 변수를 반복적으로 지정하는 부담을 제거하여 더 간결하고 관리하기 쉬운 코드를 생성할 수 있습니다. 지원되는 매개변수 및 API의 전체 목록은 다음을 참조하세요. SageMaker Python SDK로 기본값 구성 및 사용. 질문 및 토론이 필요하시면 기계 학습 및 AI 커뮤니티.
저자에 관하여
주세페 안젤로 포첼리 Amazon Web Services의 주요 기계 학습 전문가 솔루션 설계자입니다. 수년 간의 소프트웨어 엔지니어링 ML 배경을 가진 그는 모든 규모의 고객과 협력하여 비즈니스 및 기술 요구 사항을 깊이 이해하고 AWS 클라우드 및 Amazon Machine Learning 스택을 최대한 활용하는 AI 및 기계 학습 솔루션을 설계합니다. 그는 MLOps, Computer Vision, NLP를 비롯한 다양한 도메인에서 다양한 AWS 서비스와 관련된 프로젝트에 참여했습니다. 여가 시간에 Giuseppe는 축구를 즐깁니다.
브루노 피스톤 밀라노에 본사를 둔 AWS의 AI/ML 전문 솔루션 아키텍트입니다. 그는 모든 규모의 고객과 협력하여 기술 요구 사항을 깊이 이해하고 AWS 클라우드 및 Amazon 기계 학습 스택을 최대한 활용하는 AI 및 기계 학습 솔루션을 설계하도록 돕습니다. 그의 전문 분야는 기계 학습 엔드 투 엔드, 기계 학습 산업화 및 MLOps입니다. 그는 친구들과 시간을 보내고 새로운 장소를 탐험하고 새로운 목적지로 여행하는 것을 즐깁니다.
두르가 수리 Amazon SageMaker Service SA 팀의 ML 솔루션 아키텍트입니다. 그녀는 모든 사람이 기계 학습에 접근할 수 있도록 만드는 데 열정적입니다. AWS에서 4년 동안 그녀는 기업 고객을 위한 AI/ML 플랫폼 설정을 도왔습니다. 그녀는 일하지 않을 때 오토바이 타기, 미스터리 소설, 5살짜리 허스키와 함께 하는 긴 산책을 좋아합니다.
- SEO 기반 콘텐츠 및 PR 배포. 오늘 증폭하십시오.
- PlatoAiStream. Web3 데이터 인텔리전스. 지식 증폭. 여기에서 액세스하십시오.
- 미래 만들기 w Adryenn Ashley. 여기에서 액세스하십시오.
- PREIPO®로 PRE-IPO 회사의 주식을 사고 팔 수 있습니다. 여기에서 액세스하십시오.
- 출처: https://aws.amazon.com/blogs/machine-learning/configure-and-use-defaults-for-amazon-sagemaker-resources-with-the-sagemaker-python-sdk/
- :있다
- :이다
- :아니
- :어디
- $UP
- 1
- 10
- 100
- 20
- 30
- 60
- 7
- 9
- a
- 할 수 있는
- 소개
- ACCESS
- 얻기 쉬운
- 계정
- 행위
- 더하다
- 또한
- 추가
- 구애
- 관리자
- 다시
- AI
- AI / ML
- All
- 허용
- 수
- 이미
- 또한
- 이기는하지만
- 아마존
- Amazon EC2
- 아마존 머신 러닝
- 아마존 세이지 메이커
- Amazon Web Services
- an
- 및
- 어떤
- API를
- API
- 앱
- 적용된
- 적당한
- 앱
- 있군요
- AS
- At
- 붙이다
- 자동화
- 자동적으로
- 피하기
- AWS
- AWS 클라우드 포메이션
- 배경
- 기반으로
- BE
- 된
- 전에
- 처음
- BEST
- 몸
- 두
- 넓은
- 건물
- 부담
- 사업
- by
- 전화
- 통화
- CAN
- 케이스
- 가지 경우
- CD
- 셀
- 왼쪽 메뉴에서
- 클라이언트
- 클라우드
- 암호
- 수집
- 공통의
- 완전한
- 계산
- 컴퓨터
- 컴퓨터 비전
- 조건
- 구성
- 콘솔에서
- 내용
- 계속
- 제어
- 통제
- 비용
- 수
- 만들
- 만든
- 생성
- 만들기
- 현재
- 관습
- 고객
- 데이터
- 데이터 처리
- 데이터 과학자
- 태만
- 기본값
- 보여
- 의존
- 배포
- 배포
- 배치
- 전개
- 디자인
- 목적지
- 다른
- 논의 된
- 토론
- 디스플레이
- 하지 않습니다
- 도메인
- 도메인
- 한
- 말라
- 아래 (down)
- 마다
- 용이하게
- 에코
- 중
- 제거
- 가능
- 암호화
- 암호화
- end
- 끝으로 종료
- 종점
- 억지로 시키다
- 엔지니어링
- 확인
- 엔터 버튼
- Enterprise
- 환경
- 환경
- 오류
- 사람
- 예
- 현존하는
- ~을 기대하는
- 실험
- 전문적 지식
- 탐험
- 탐색기
- 탐색
- 실패
- 그릇된
- 특색
- 들
- 입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에
- 파일
- 재원
- Find
- 따라
- 수행원
- 다음
- 축구
- 럭셔리
- 체재
- 무료
- 친구
- 에
- 가득 찬
- 기능
- 얻을
- 점점
- 힘내
- 여러 떼
- 있다
- 데
- he
- 건강 관리
- 도움
- 도움이
- 그녀의
- 그의
- 홈
- 방법
- How To
- HTML
- HTTP
- HTTPS
- ICON
- 통합 인증
- if
- import
- in
- 포함
- 산업
- 인프라
- 입력
- 설치
- 예
- 명령
- 인터페이스
- 인터넷
- 인터넷 액세스
- 으로
- 참여
- IP
- IP 주소
- 격리
- IT
- 그
- 일
- 작업
- 어울리다
- JPG
- 키
- 키
- 넓은
- 배우기
- 레벨
- 도서관
- wifecycwe
- 처럼
- 명부
- 지방의
- 위치
- 위치
- 기록
- 로그인
- 로깅
- 긴
- 보기
- loves
- 기계
- 기계 학습
- 확인
- 유튜브 영상을 만드는 것은
- 구축
- 수동으로
- 밀라노
- ML
- MLOps
- 모드
- 모델
- 모델
- 배우기
- 가장
- 모터사이클
- 여러
- 신비
- name
- 이름
- 카테고리
- 필요
- 필요
- 필요
- 요구
- 네트워크
- 네트워킹
- 신제품
- 다음 것
- nlp
- 아니
- 수첩
- 알아채다..
- 지적
- 지금
- 대상
- of
- on
- 일단
- ONE
- 열 수
- 오픈 소스
- or
- OS
- 기타
- 아웃
- 출력
- 보수
- 자신의
- 빵
- 매개 변수
- 매개 변수
- 합격
- 통과
- 열렬한
- 지불하는
- 장소
- 플랫폼
- 플라톤
- 플라톤 데이터 인텔리전스
- 플라토데이터
- 연주
- 포인트 적립
- 정책
- 게시하다
- 연습
- 너무 이른
- 교장
- 사설
- 권한
- 처리
- 프로세서
- 프로필
- 프로필
- 프로젝트
- 제공
- 공개
- 퍼츠
- Python
- 문의
- 빠른
- 권하다
- 나머지
- 기억
- 의뢰
- 필수
- 제품 자료
- 응답
- 제한
- 결과
- 직위별
- 역할
- 달리기
- 달리는
- s
- SA
- 현자
- 같은
- 찜하기
- 절약
- 과학자
- 과학자
- SDK
- 섹션
- 보안
- 참조
- 서비스
- 서비스
- 세션
- 세트
- 설정
- 설치
- 몇몇의
- 그녀
- 영상을
- 표시
- 소개
- 표시
- 비슷한
- 단순, 간단, 편리
- 간단히
- 크기
- 소프트웨어
- 소프트웨어 공학
- 솔루션
- 무언가
- 전문가
- 구체적인
- 지정
- 지출
- 스택
- 스택
- 스타트
- 시작
- Status
- 단계
- 단계
- 저장
- 저장
- 저장
- 스튜디오
- 서브넷
- 서브넷
- 후속의
- 성공적으로
- 이러한
- 지원
- 지원
- 체계
- 태스크
- 팀
- 테크니컬
- 이 템플릿
- 단말기
- 그
- XNUMXD덴탈의
- 그들의
- 그들
- 그때
- 그것에 의하여
- Bowman의
- 이
- 을 통하여
- 단단히
- 시간
- 에
- 상단
- 교통
- Train
- 트레이닝
- 회전
- 선회
- 아래에
- 밑에 있는
- 이해
- 업데이트
- 업그레이드
- 용법
- 사용
- 유스 케이스
- 익숙한
- 사용자
- 사용자
- 사용
- 가치
- 마케팅은:
- 확인
- 버전
- 를 통해
- 관측
- 보기
- 온라인
- 눈에 보이는
- 시력
- 음량
- 볼륨
- 필요
- we
- 웹
- 웹 서비스
- 잘
- 언제
- 의지
- 과
- 없이
- 작업
- 일
- 일하는
- 일
- 얌
- 년
- 자신의
- 너의
- 제퍼 넷