여러분
무슨 생각하는지 알아요
이번 주는 훈련 주간이었어야 해요
개척 시대 모델들을 세심하게 조정하는 일을 시작했죠
우리가 안 한 게 뭐죠?
개척 시대 모델은 잘 몰라요
좋은 소식이 있어요
오늘이 그날이에요
하지만 오늘 우리가 실망할 수도 있다는 걸 미리 알려드리죠
곧 알게 되겠죠
하지만 그걸 각오해야 해요 완전히 새로운 세상에 나가 드디어 훈련을 시작하니까요
간단히 요약하자면 프런티어 모델과 API로 텍스트와 코드를 생성할 수 있고
파이프라인과 하위 레벨 트랜스포머 API를 서로 끌어안는 오픈 소스 모델을 사용할 수 있죠
모델을 직접 사용하는 것처럼 랭 체인이 아닌 래그 파이프라인을 만들 수 있어요
가장 중요한 건 큐레이팅에 많은 시간을 들이는 문제 해결을 위한 5단계 전략을
따를 수 있다는 거죠
많은 시간을 데이터를 큐레이팅하고 기준 모델을 만드는 데 할애하죠
훈련을 좀 했지만 기본 모델 훈련이었어요
전통적인 ML은 아직 완성되지 않았어요 미세하게 훈련된 개척지 모델이죠
오늘 그걸 할 거예요
모델 앞에서 미세 튜닝 과정을 이해하고 데이터 세트를 생성하고 미세
튜닝을 실행한 후 새 미세 튜닝 모델을 테스트하는 거죠
훈련에 대해 설명하자면 이런 모델에서 세밀한 조정은
훈련과 동의어입니다 물론 처음부터 훈련하진 않습니다
그러면 수억 달러가 들 테니까요
우리는 항상 훈련된 기존 모델을 사용합니다 미리 훈련된 모델이죠 전송 학습을
활용해 더 많은 훈련을 합니다 이 이론은 기존에 훈련된
모델을 가지고 더 많은 훈련을 하면 새 작업에서 더 낫다는
거죠
그걸 미세 조정이라고 하죠
이제 어휘력 문제를 해결했으니 오픈AI를 조정하는 세 가지 단계에 대해 이야기해 보죠
GPT 40과 4 미니를 받아들이려면 세 가지를 따라야 합니다 이 세
가지를 잘 조율해야 하죠
첫 단계는 훈련에 사용할 훈련 데이터를 준비하는 거예요
전통적인 모델의 맥락에서 훈련 데이터를 사용합니다 선형 회귀 같은 거죠
훈련용 견본을 구해서 선형 회귀 모델로 주입했어요
훈련 데이터를 만들어야 해요
이제 오픈AI에 업로드 해야 해요
JSON L이라는 특정한 포맷의 훈련 데이터를 기대합니다 JSON 라인을 약자로 하죠
미묘하게 달라요 일반적인 JSON을 보여드리죠
그다음 훈련과 미세한 조율을 실시할 겁니다 이 도표들은 모두 아래를 가리키죠
당신이 곤란해질지도 몰라요
뭔가 잘못되고 있는 것처럼 보이지만 그 반대입니다 훈련할 때 여러분의 상대는 지켜보고 있죠
훈련의 손실이죠
물론 손실이 줄어들길 바라죠
상황이 나아지고 있다는 뜻이죠
그래서 매의 눈으로 도표를 보면서 손실이 줄어드는지 확인할
거예요
가장 중요한 것은 한 배치에서 트레이닝 손실과 유효성 검증 손실입니다.
데이터 집합에 있는 것이죠.
저것도 내려가요?
훈련 데이터에 과부하가 걸릴 수 있으니까요
사실 우리 경우엔 그게 문제가 아닙니다 트레이닝 데이터로 한 개의 epoch만 실행할
테니까요
이포크라고도 하죠
훈련 데이터를 통해 완전한 훈련을 한 다음 같은 데이터를
반복해서 실행하는 거죠
그런 걸 두 번째 수련 시대라고 하죠
하지만 그렇게 하지 않을 겁니다 훈련 데이터가 너무 많아서 그럴 필요가 없으니까요
트레이닝 데이터를 더 활용해 하나의 시대를 만드는 게 낫겠어요 비트 코스트
모든 데이터는 항상 새로운 데이터이기 때문에 훈련의 손실은 검증의 손실만큼이나
유용하죠
그리고 마지막으로 결과를 평가하죠
그걸 바탕으로 수정하고 반복해서 계속하는 거죠
그게 무대예요
말씀드렸듯이 첫 번째는 데이터를 준비하는 거죠
OpenAI는 JSON L이라는 포맷에서 그걸 기대합니다 JSON 데이터의 일련의 라인이라는
뜻이죠
JSON 데이터와 똑같다고 생각하실지도 몰라요
아니에요
컬렉션에 있는 게 아니에요
목록에 없군요
쉼표가 붙은 대괄호로 시작하진 않아요
이 파일의 각 행, 각 줄은 중괄호로 시작하고 끝나는 별개의 JSON 객체예요
미묘한 차이점이지만 JSON 개체를 작성하지 않을 거라는 기대는 안 할 경우에
걸릴 수 있어요 주변에 리스트가 있을 테니까요
이 파일에 JSON 행을 작성하는 거죠 그럼 각각의 행은 우리에게 아주 익숙한
것이 돼요
메시지라는 하나의 특성을 갖게 되죠
그 안에는 우리가 잘 아는 것이 들어있습니다 각 사전마다 역할과 내용이 있는
사전 목록이죠
대화예요
각 행에 들어가는 거죠
보다시피 업로드를 위한 이 특정 유형의 데이터 세트를 만들 거예요
좋아요
잡담은 이 정도면 충분해요
주피터 연구소로 가요
실제로 실행해보죠
그리고 처음으로 개척지 모델을 훈련할 거예요
시작하죠