Habana Gaudi에서 Transformers 시작하기
Hugging Face와 Habana Labs는 Transformer 모델 학습을 가속화하기 위해 파트너십을 맺었으며, Habana Gaudi 가속기를 활용해 최신 GPU 기반 Amazon EC2 인스턴스에 비해 최대 40% 더 나은 가격 대비 성능을 제공합니다.
AWS에서 Habana Gaudi 배포
Habana Gaudi 가속기에 접근하는 가장 효율적인 방법은 8개의 Habana Gaudi 프로세서를 탑재한 Amazon EC2 DL1 인스턴스를 이용하는 것입니다. 환경을 설정하려면 사용자는 Habana Deep Learning Amazon Machine Image(AMI)를 활용할 수 있으며, 이 이미지에는 Habana SynapseAI® SDK와 Gaudi 가속 Docker 컨테이너 실행에 필요한 도구가 사전 설치되어 있습니다.
인스턴스 구성
- Instance Type:
dl1.24xlarge(유일하게 사용 가능한 크기). - Region: us-east-1.
- Storage: 최소 50GB의 Amazon EBS 스토리지를 권장합니다. 기본 8GB는 학습 작업에 충분하지 않기 때문입니다.
- Cost Management: Spot 인스턴스를 활용하면 비용을 크게 절감할 수 있습니다; 예를 들어, 시간당 요금을 $13.11에서 $3.93으로 낮출 수 있습니다(70% 절감).
소프트웨어 환경
SSH를 통해 인스턴스를 시작한 후, 사용자는 호환성을 보장하기 위해 PyTorch용 특정 Habana Docker 컨테이너를 가져와야 합니다. 이 설정에 권장되는 이미지는 vault.habana.ai/gaudi-docker/1.5.0/ubuntu20.04/habanalabs/pytorch-installer-1.11.0:1.5.0-610입니다.
Optimum Habana를 사용한 Transformers 미세조정
Habana Gaudi에서 Transformer 모델을 학습하는 것은 optimum-habana 라이브러리를 통해 용이해집니다. 이 패키지는 사용자가 텍스트 분류와 같은 작업에 Gaudi 하드웨어를 활용할 수 있게 합니다.
구현 워크플로우
모델을 미세조정하기 위해서는 다음 단계가 필요합니다:
- Install Optimum Habana:
optimum-habana저장소를 복제하고 소스에서 패키지를 설치합니다. - Prepare Environment: 텍스트 분류 예제 디렉터리의
requirements.txt파일을 통해 필요한 Python 종속성을 설치합니다. - Execute Training:
run_glue.py스크립트를 사용해 학습 작업을 시작합니다.
성능 예시: BERT 텍스트 분류
GLUE 벤치마크의 MRPC 작업에서 bert-large-uncased-whole-word-masking 모델을 미세조정한 데모에서 다음과 같은 결과를 얻었습니다:
- Training Time: 2분 12초.
- F1 Score: 0.9181.
- Training Throughput: 초당 82.824 샘플.
- Evaluation Accuracy: 0.8505.
사용자는 Hugging Face 허브의 Habana 조직에서 BERT 및 기타 인기 모델에 대한 Habana Gaudi 구성을 직접 가져올 수 있습니다.