11P by xguru 2022-09-30 | favorite | 댓글과 토론
  • 대형 신경망을 훈련하는 것은 대규모 계산 능력이 필요
    • OpenAI의 GPT-3 같은 경우 훈련에만 약 $5m 이상이 들었음
  • 엔지니어들이 이 비용 부담을 줄이기 위해 숫자를 표현하는 다른 방법을 고안
  • 2017년에 제안된 Posits는 오늘날 사용되는 부동 소수점 산술 프로세서에 대한 개선사항
  • 이걸 하드웨어적으로 구현한 첫번째 코어가 개발됨. 현재의 FP방식보다 계산 작업의 정확도가 최대 4배까지 증가

    무어의 법칙이 맞지 않게 되어가므로, 동일한 기계에서 더 많은 성능을 낼수 있는 방법을 찾아야함
    이 방법중의 하나는 실수(Real Number)를 인코딩 하는 방법과 실제 숫자를 나타내는 방법을 변경하는 것

  • 이 숫자를 바꾸는 시도를 하는 곳이 여기만은 아님. 얼마전 Nvidia, Arm, Intel은 머신러닝 어플리케이션을 위해 32/16비트 대신 8비트 부동 소수점 숫자를 사용하는 것으로 합의 했음
    • 더 작고 덜 정확한 형식을 사용하면 계산 정확도를 희생시키면서 효율성과 메모리 사용을 향상 시킴
  • 실수는 무한하기 때문에 하드웨어가 완벽하게 표현 불가능
  • 지정된 비트수에 맞추려면 많은 실수들은 반올림 되어야 함
  • Posits의 장점은 정확히 나타내려는 숫자가 숫자 라인을 따라 분포되는 방식에서 옴
    ( 실제 Posits의 분포 방식은 글에 포함된 그림을 보시기 바랍니다. )
  • 이를 통해 얻게 되는 정확도 향상은 부인할 수 없지만, 이게 실제로 GPT-3 와 같은 대형 AI의 훈련에 정확히 어떤 영향을 미칠지는 두고 봐야함