AWS PlatoBlockchain Data Intelligence에서 MosaicML Composer를 사용하여 딥 러닝 교육 시간과 비용을 줄입니다. 수직 검색. 일체 포함.

AWS 기반 MosaicML Composer로 딥 러닝 교육 시간 및 비용 절감

지난 XNUMX년 동안 우리는 AWS 고객이 엄청난 속도로 채택한 딥 러닝(DL) 과학. DL 모델의 풍부하고 공동으로 훈련된 매개변수는 이미지 및 음성 분석, 자연어 처리(NLP), 시계열 처리 등을 포함하여 수많은 고객 사용 사례에서 개선을 가져온 큰 표현 능력을 가지고 있습니다. 이 게시물에서는 특히 DL 교육에서 일반적으로 보고되는 문제와 오픈 소스 라이브러리가 어떻게 MosaicML 작곡가 그들을 해결하는 데 도움이됩니다.

DL 교육을 통한 도전

DL 모델은 중첩 for 루프에서 반복적으로 학습됩니다. 루프는 훈련 데이터 세트를 청크 단위로 반복하며 필요한 경우 전체 데이터 세트에 대해 이 루프를 여러 번 반복합니다. DL 교육에 참여하는 ML 실무자는 다음과 같은 몇 가지 문제에 직면합니다.

  • 학습 기간은 데이터 크기에 따라 늘어납니다. 데이터 세트가 영구적으로 증가하면 교육 시간과 비용도 증가하고 과학적 발견의 리듬이 느려집니다.
  • DL 스크립트에는 종종 상용구 코드가 필요합니다. 특히 앞서 언급한 이중 for 루프 구조는 데이터세트를 미니배치로, 훈련을 에포크로 분할합니다.
  • 선택의 역설: 여러 훈련 최적화 논문과 라이브러리가 출판되었지만 어떤 것을 먼저 테스트하고 그 효과를 결합하는 방법이 불분명합니다.

지난 몇 년 동안 다음과 같은 여러 오픈 소스 라이브러리가 케 라스, 파이 토치 번개, 포옹 얼굴 변압기레이 트레인 특히 코드 장황함을 줄임으로써 신경망이 프로그래밍되는 방식을 단순화함으로써 DL 교육에 더 쉽게 접근할 수 있도록 시도했습니다. 이러한 라이브러리의 대부분은 개발자 경험과 코드 압축성에 중점을 둡니다.

이 게시물에서는 DL 교육에 대해 다른 입장을 취하는 새로운 오픈 소스 라이브러리를 소개합니다. MosaicML 작곡가 알고리즘 혁신을 통해 신경망 훈련 스크립트를 더 빠르게 만드는 것이 주요 목표인 속도 중심 라이브러리입니다. 클라우드 DL 세계에서는 속도에 초점을 맞추는 것이 현명합니다. 컴퓨팅 인프라는 종종 사용량에 따라 비용이 지불되기 때문입니다. Amazon SageMaker 교육—그리고 속도 향상은 비용 절감으로 이어질 수 있습니다.

역사적으로 DL 교육 속도를 높이는 것은 대부분 병렬로 모델 반복을 계산하는 기계의 수를 늘리는 방식으로 이루어졌습니다. 데이터 병렬성. 데이터 병렬 처리는 때때로 훈련을 가속화하지만(다음에서 강조 표시된 것처럼 수렴을 방해하기 때문에 보장되지 Goyalet al.), 전체 작업 비용을 줄이지 않습니다. 실제로 분산 DL 머신에는 고급 네트워킹 및 서버 내 GPU 상호 연결이 장착되어 있기 때문에 머신 간 통신 오버헤드와 머신 단위 비용이 더 많이 들기 때문에 이를 증가시키는 경향이 있습니다.

MosaicML Composer는 데이터 병렬화를 지원하지만 핵심 철학은 데이터 병렬화 운동과 다릅니다. 목표는 과학 구현 수준에서 혁신하여 더 많은 기계를 필요로 하지 않고 교육을 가속화하는 것입니다. 따라서 AWS의 종량제 요금 구조로 인해 비용 절감으로 이어지는 시간 절약을 목표로 합니다.

오픈 소스 라이브러리 MosaicML Composer 소개

MosaicML Composer는 최신 알고리즘을 간단하게 가져와 모델 교육 속도를 높이고 모델 품질을 개선하는 데 도움이 되는 새로운 레시피로 구성할 수 있도록 특별히 제작된 오픈 소스 DL 교육 라이브러리입니다. 이 글을 쓰는 시점에서 PyTorch를 지원하고 다음과 같은 25가지 기술을 포함합니다. 방법 표준 모델, 데이터 세트 및 벤치마크와 함께 MosaicML 세계에서

작곡가는 핍을 통해 사용 가능:

pip install mosaicml

Composer에 구현된 속도 향상 기술은 기능 API를 통해 액세스할 수 있습니다. 예를 들어 다음 스니펫은 블러 풀 TorchVision ResNet에 대한 기술:

import logging

from composer import functional as CF
import torchvision.models as models
logging.basicConfig(level=logging.INFO)

model = models.resnet50()
CF.apply_blurpool(model)

선택적으로 다음을 사용할 수도 있습니다. 훈련자 자신만의 기술 조합을 구성하려면:

from composer import Trainer
from composer.algorithms import LabelSmoothing, CutMix, ChannelsLast

trainer = Trainer(
    model=.. # must be a composer.ComposerModel
    train_dataloader=...,
    max_duration="2ep",  # can be a time, a number of epochs or batches
    algorithms=[
        LabelSmoothing(smoothing=0.1),
        CutMix(alpha=1.0),
        ChannelsLast(),
    ]
)

trainer.fit()

Composer에서 구현된 메서드의 예

Composer에서 사용할 수 있는 방법 중 일부는 컴퓨터 비전에만 해당됩니다(예: 이미지 확대 기술). 콜아웃, 컷아웃점진적 이미지 크기 조정. 다른 것들은 다음과 같이 시퀀스 모델링에만 해당됩니다. 시퀀스 길이 워밍업 or 구실. 흥미롭게도 일부는 사용 사례에 대해 불가지론적이며 컴퓨터 비전 및 NLP를 넘어 다양한 PyTorch 신경망에 적용될 수 있습니다. 이러한 일반적인 신경망 훈련 가속 방법에는 다음이 포함됩니다. 레이블 평활화, 선택적 백프롭, 확률 적 가중치 평균, 레이어 동결선명도 인식 최소화(SAM).

MosaicML 팀에서 특히 효과적인 것으로 밝혀진 몇 가지 방법을 자세히 살펴보겠습니다.

  • 선명도 인식 최소화(SAM) 각 최적화 단계에 대해 기울기를 두 번 계산하여 모델 손실 함수와 선명도를 모두 최소화하는 최적화 도구입니다. 처리량에 불이익을 주기 위해 추가 계산을 제한하기 위해 SAM을 주기적으로 실행할 수 있습니다.
  • 선형 편향 주의(ALiBi), 에서 영감을 받다 언론 외., Transformers 모델에만 해당됩니다. 이는 위치 임베딩의 필요성을 제거하고 이를 어텐션 가중치에 대한 학습되지 않은 편향으로 대체합니다.
  • 선택적 백프롭, 에서 영감을 받다 Jianget al.를 사용하면 손실 함수가 높은 레코드에서만 역전파(오차 기울기를 따라 모델 가중치를 개선하는 알고리즘)를 실행할 수 있습니다. 이 방법은 불필요한 계산을 피하고 처리량을 개선하는 데 도움이 됩니다.

단일 컴팩트 교육 프레임워크에서 이러한 기술을 사용할 수 있다는 것은 ML 실무자에게 상당한 가치를 더해줍니다. 또한 가치 있는 것은 MosaicML 팀이 테스트 및 평가한 각 기술에 대해 생성하는 실행 가능한 현장 피드백입니다. 그러나 이렇게 풍부한 도구 상자가 주어지면 어떤 방법을 사용해야 하는지 궁금할 수 있습니다. 여러 방법을 함께 사용하는 것이 안전한가요? MosaicML 탐색기를 입력합니다.

모자이크ML 탐색기

DL 교육 방법의 가치와 호환성을 정량화하기 위해 MosaicML 팀은 블록체인 탐색기, XNUMX개의 데이터 세트와 XNUMX개의 모델에 대한 수십 개의 DL 교육 실험을 보여주는 최초의 라이브 대시보드입니다. 대시보드는 파레토 최적 프론티어 비용/시간/품질 절충안에서 최고 득점의 방법 조합을 탐색하고 찾을 수 있습니다. 조리법 주어진 모델 및 데이터세트에 대해 MosaicML 세계에서. 예를 들어, 다음 그래프는 125M 파라미터 GPT2 교육의 경우 24.11의 복잡도를 유지하는 가장 저렴한 교육이 AliBi, Sequence Length Warmup 및 Scale Schedule을 결합하여 얻어지며 AWS 클라우드에서 약 $145.83의 비용에 도달함을 보여줍니다! 그러나 이 비용 계산과 이 게시물에서 이어지는 계산은 EC2 온디맨드 컴퓨팅만을 기반으로 하며 환경 및 비즈니스 요구 사항에 따라 다른 비용 고려 사항이 적용될 수 있습니다.

GPT-2 교육용 MosaicML Explorer의 스크린샷

AWS 기반 Composer의 주목할만한 성과

MosaicML 팀은 AWS에서 Composer 라이브러리를 실행하여 많은 인상적인 결과를 얻었습니다. MosaicML 팀에서 보고한 예상 비용은 주문형 컴퓨팅 요금으로만 구성되어 있습니다.

결론

노트북에서 대규모 GPU 장착 클라우드 서버에 이르기까지 호환되는 모든 플랫폼에서 Composer를 시작할 수 있습니다. 라이브러리는 직관적인 기능을 제공합니다. 웰컴 투어시작 가이드 문서 페이지. AWS에서 Composer를 사용하면 스팟 컴퓨팅(Amazon EC2, 아마존 세이지 메이커), 저축 계획, SageMaker 자동 모델 튜닝, 그리고 더. MosaicML 팀은 지도 시간 Composer on AWS. MLPerf 결과를 재현하고 AWS의 ResNet-50을 단 76.6분 만에 표준 1% top-27 정확도로 훈련시키는 방법에 대한 단계별 데모를 제공합니다.

학습 속도가 너무 느린 신경망으로 인해 어려움을 겪고 있거나 DL 교육 비용을 통제하려는 경우 AWS에서 MosaicML을 사용해 보고 무엇을 구축했는지 알려주십시오!


저자 소개

AWS PlatoBlockchain Data Intelligence에서 MosaicML Composer를 사용하여 딥 러닝 교육 시간과 비용을 줄입니다. 수직 검색. 일체 포함.반디쉬 샤 MosaicML의 엔지니어링 관리자로 효율적인 딥 러닝과 대규모 분산 시스템 및 성능 컴퓨팅을 연결하기 위해 노력하고 있습니다. Bandish는 머신 러닝 및 엔터프라이즈 애플리케이션을 위한 시스템 구축 경험이 XNUMX년이 넘습니다. 그는 친구 및 가족과 시간을 보내고 영감을 얻기 위해 반복적으로 스타 트랙을 요리하고 시청하는 것을 즐깁니다.

AWS PlatoBlockchain Data Intelligence에서 MosaicML Composer를 사용하여 딥 러닝 교육 시간과 비용을 줄입니다. 수직 검색. 일체 포함.올리비에 크루 샹 프랑스에 기반을 둔 AWS의 기계 학습 전문가 솔루션 아키텍트입니다. Olivier는 소규모 신생 기업에서 대기업에 이르기까지 AWS 고객이 프로덕션 수준의 기계 학습 애플리케이션을 개발하고 배포할 수 있도록 지원합니다. 여가 시간에는 연구 논문을 읽고 친구 및 가족과 함께 황야를 탐험하는 것을 즐깁니다.

타임 스탬프 :

더보기 AWS 기계 학습