하이퍼파라미터에서 훈련을 계속하죠
다음 단계는 아주 중요한 학습률이에요
여러분 중 데이터 과학자들이 이걸 너무 잘 알 거예요
아주 잠깐, 이것에 덜 익숙한 분들을 위해 설명하자면 훈련의 목적은 여러분의 모델을
트레이닝 데이터 포인트를 취하는 거죠
전진 패스라는 걸 하는데요 모델을 살펴보고 다음
토큰이 올지 예측하는 겁니다 예측된 다음 토큰을 주는 거죠
아니면 가능한 모든 다음 패의 확률을 주죠
그걸 사용하면 실제 있어야 할 다음 토큰이 생기죠
이 두 가지를 예견하고 실제 손실을 계산해 보세요
실제 비트를 예측하는 데 얼마나 형편없었는지를요 그런 다음 할 수 있는 건 손실을 받아들이고
그것의 역전파를 할 수 있습니다 모델로 돌아가서 각 비트를 얼마나 민감하게 조정해야
하는지 알아내는 거죠 다음에 좀 더 잘하기 위해 각 비트를 얼마나 조정할까요?
그 방향으로 한 걸음씩 나아가야 해요
역기를 옮겨야 해요 다음번엔 더 잘하도록 한 걸음씩 나아가는 거죠
비트를 좋은 방향으로 많이 옮겨야 다음번에 더
잘 걸리죠
훈련 데이터 포인트를 마주했을 때 학습률이라고 하죠
일반적으로 0 정도 돼요 0001이나 0요 00001년요
살펴보면 몇 가지 예가 보일 거예요
또 학습률 스케줄러라는 기능도 있습니다 여러
개혁을 거치면서 학습률을 한 숫자로 시작해서 점점
낮추는 거죠 모델이 훈련될수록 학습률이
점점 낮아져서 네트워크에 아주 작은 변화만
줄어드는 거예요
거의 맞혔다고 확신하고 있잖아요
이게 학습률이에요
데이터 과학을 전공한 많은 사람들에겐 익숙한 일이겠죠
다른 사람에겐 생소할 수 있죠
그러데이션 축적도 방법이에요
훈련 속도를 높이는 기술이에요 이렇게 말할 수 있죠 우리가
뭘 할 거냐면 보통은 앞으로 패스해요
방금 말한 것처럼 get 손실이 발생하죠
그리고 뒤로 가는 그러데이션을 계산해서 올바른 방향으로 한 걸음씩 나아가는 거죠
그러한 그러데이션 누적 현상을 반복해 보면 이렇게 말할 수 있죠 앞으로 패스해서
얻으면 어떨까? 한 걸음씩 가지 않고 두 번째 패스해서 얻으면 어떨까?
그 과정을 몇 번 더 반복하는 거죠
이런 그러데이션을 계속 축적하고 한 단계씩 나아가 네트워크를 최적화하세요
이 단계를 비정상적으로 수행하면 비트 코드가 더 빨라지죠
비트 크기와 비슷할 거예요
개념적 유사점이 있어요 왜냐하면 함께 그룹을 이루고
약간 더 큰 단계를 밟으니까요
제가 설정한 hyperpaameter에는 그러데이션 축적을 사용하지 않아요
1로 설정했어요
하지만 전에 해봤는데 속도가 빨라지는 걸 봤어요
그러니 이 방법으로 실험해 보고 어떻게 되는지 보세요
이게 그러데이션 축적이에요
마지막은 최적화 장치예요
최적화 프로그램은 적절한 때에 사용하는 공식이에요 그러데이션이 되면 학습률이
올라가죠
이제 신경망을 업데이트할 시간이에요 모든 걸 좋은 방향으로 약간씩 바꾸면
다음에는 올바른 토큰을 예측할 가능성이 커지죠 비트
그 과정을 최적화 장치라고 하죠
그 방법에 관한 잘 알려진 공식이 아주 많은데 각각 장단점이 있죠 그중 하나를
선택할게요
비트는 성능 면에서 조금 더 비싸죠
비트 박스는 좀 힘들지만 좋은 결과를 낳아요
이 제품부터 시작하시길 추천해요
그리고 메모리 문제가 발생하면 메모리 소모량을 줄여주는
대안이 있어요
하지만 그 과정을 최적화라고 하죠
그 작업을 위해 선택한 알고리즘을 최적화 장치라고 해요
또 다른 hyperperameter죠 다양한 걸 시도해보고 어떤지 보세요
말이 너무 많다는 걸 깨달았어요
hyperperameter에 대한 대화도 비트로 사용했어요 훈련 프로세스에 대해 설명하려고요
지금까지 배운 배경이 도움이 됐길 바랍니다 앞으로 일어날
일에 대비해서요 구글 Colab으로 돌아가 SFT 트레이너를
시작할 겁니다 우리만의 LM을 세밀하게 조정하기 위해서요