7.4.4 TPU
최근 발표되는 딥러닝 모델은 서로 경쟁이라도 하듯 엄청난 수의 파라미터를 보유하고 있습니다. 모델이 학습해야 할 파라미터 수가 많을수록 모델의 크기가 커지고, 학습하는 데 시간이 많이 소요됩니다. 이 솔루션에서 다뤄볼 BERT 모델도 처음 세상에 알려졌을 때 성능도 큰 이슈였지만, 모델이 가진 엄청난 수의 파라미터도 화제가 되었습니다. BERT가 나오기 전에는 그런 파라미터를 가진 모델이 거의 존재하지 않았으니까요. 보통 사람이 가질 수 있는 일반적인 GPU 리소스, 또는 무료로 사용할 수 있는 GPU(Google Colab 또는 캐글 노트북)만으로는 BERT 모델을 원하는 대로 활용하는 데 많은 어려움이 따릅니다. 모델을 로드하는 것조차 버거울뿐더러, 가진 방법을 동원해 겨우 학습할 수 있도록 만들었다고 해도 언제 학습이 끝날지 알 수 없습니다. 고가의 컴퓨팅 리소스가 없다면 이렇게 큰 모델은 돌려보는 것조차 할 수 없는 것일까요? 여기 한 줄기 빛이 되어줄 대안이 있습니다. 바로 TPU입니다.
TPU(Tensor Process Unit: 텐서 처리 장치)는 구글에서 개발된 딥러닝 전용 연산 장치로 v3-8 기준 420테라플롭스(TFLOPS: 초당 1조 번 부동소수 연산)라는 엄청난 연산 능력과 더불어 총 128GB라는 웬만한 데이터는 다 넣을 수 있을 정도의 메모리를 가지고 있습니다. 이런 어마어마한 장치를 캐글 노트북에서 일정 제한 조건으로 무료로 사용할 수 있습니다.