좋은 소식은 이게 데이터 세트 큐레이션에 관한 마지막 영상이라는 거예요
데이터 세트 큐레이션이 지겨웠을 거예요
이제 하나만 더 하면 끝이에요
그래서 우린 아주 훌륭한 데이터 세트를 만들었어요 아주 자랑스럽게 여겨야 하죠
마지막으로 살짝 보죠
궁금한 게 하나 있어요
그래도 물어볼 거예요
물건의 가격과 관련이 있을까요?
물건의 길이에 따라 관련이 있어요
가격이 높은 물건일수록 정보가 더 많은 상황을 상상할 수 있죠
그걸 이해해야 해요
모델에게 그런 걸 빨리 배울 수 있거든요
어떻게 접근할지 전통적인 접근법을 보면 좋은 감이 오죠
이건 멋진 산란도예요 엑스 축의 개별 크기를 보여줄 거예요
설명의 길이를 보여줄 거예요 y축에서는 가격을 보여주고요
전체 샘플 데이터 세트를 살펴보죠
자, 시작하죠
여기 잘 나온 사진이 있어요
이 그림에는 400,000점이 있어요
볼거리도 많고요
보시다시피 소화할 게 많아요
흥미로운 패턴이 일어나고 있어요 가격이 이런 경계선에서 더 자주 나타나죠
799달러짜리 상품도 있고요 보다시피 더 저렴한 제품도 많아요
분명히 상관관계가 있는 게 보이실 거예요 설명이 긴 물건들은 때때로
더 비싼 물건이라는 추세를 보이는 거죠
하지만 그 일과 관련해서 중요한 상관관계가 있는지는 확실하지 않아요
뭔가 있긴 한데 심각한 건 아니에요
전통적인 머신 러닝을 적용하면 큰 상관관계를
찾지 못할 거예요
일종의 다이어그램을 예로 들게요 데이터의 다양한 양상에 대한 통찰력을 얻기
위한 거죠 Get it
잠시 더 얘기하고 싶은 건 토큰이에요
오픈 소스 모델에 대해 실제로 훈련하게 되면 Get 토큰으로 더 많이 작업할 겁니다
지금 토큰을 살펴볼 가치가 있어요
함수 리포트를 작성했는데 아이템을 하나 가져와서 프롬프트를 프린트합니다
훈련 때 사용될 전체 훈련 프롬프트죠
마지막 10개의 토큰을 프롬프트에 입력하면 디코딩이 되는 것이죠
마지막 10개의 토큰까지의 행적을 볼 수 있어요
왜 마지막 10개가 있는지 궁금하시다면 잠시 후에 보여드리죠
무작위로 40,000번을 선택해 실행해보죠
네
여기 이건∙∙∙ 여기 있는 텍스트 전부 죄송해요
LLM으로 보내져 배울 수 있는 프롬프트죠
최대한 비용이 많이 들 거라고 할 거예요
그런 다음 설명을 get 하죠
가격은 이겁니다 가격은 1달러로 반올림한 거고요
아이템 코드를 보시면 훈련 프롬프트를 만들 때 가장 가까운 달러로 회전하는 것을
알 수 있죠
마지막 10개의 토큰을 보면 어떻게 된 건지 알 수 있죠 아래에 프린트했어요
그 10패는 뭐죠?
이제 마지막 몇 개의 토큰을 보여드릴게요 가격은 하나의 토큰에 매핑되고
워드 스페이스의 시작을 가진 토큰을 받습니다 워드의 시작과 함께 달러의 시작을 가진 토큰이죠
그리고 숫자 34는 하나의 특정 토큰에 매핑되고요
이건 라마 토큰라이저의 기능 중 하나예요
GPT처럼 세 자리 숫자마다 토큰을 갖고 있어요
다른 모델의 토큰이 그렇지 않은 경우도 있어요
우리 프로젝트에 필수적인 건 아니지만 나중에 비트를 보면 좀 더 간단해질 거예요
마침표는 토큰 하나와 더불어∙∙∙ 더불어∙∙∙ 0은 토큰을 받아요
샘플을 하나 더 해 보죠
완전히 다른 장소에서 뭔가 해 보자고요
10,000번요
이건 가격이 저렴해요
9천 달러인데 가격이 9천 달러예요
데이터셋 398,000의 끝에 있는 것으로 가보죠
이건 코일오버 댐퍼 키트예요
가격은 765달러예요
또 한 번 765가 토큰 하나에 매핑되는 걸 보실 수 있어요
이제 만족하셔야 해요 이 샘플은 가장 싼 것부터 분류했어요 각
항목의 샘플을 다 살펴봤거든요
가장 가까운 달러로 동그랗게 돌려요
가장 싼 제품은 낮은 제품군으로 분류하고 가장 비싼 제품은 높은 제품군으로
분류해요
이렇게 효과를 얻는다고 만족하실 수 있습니다 1부터 999까지의 숫자는 모두 토큰 하나에
매핑됩니다 여기 나와 있는 것처럼요
다시 한번 말씀드리지만 수량이나 감마 혹은 피 쓰리 토큰라이저를 보면 그렇지 않다는
걸 알 수 있어요
나중에 비트가 좀 유용할 것 같긴 한데 꼭 필요한 건 아니고 나중엔 꼭 필요해요
양자 제미니 3호 같은 다른 모델을 실험하고 싶다면 스위치만
켜면 돼요
여기 보면 여러 개의 토큰에 매핑되어 있습니다. 하나의 3자리 토큰이 아니라요.
안도의 한숨을 내쉬네요
데이터 큐레이션을 통과했어요
마지막 단계는 마무리하고 허브에 업로드 하는 거죠
가장 먼저 할 일은 데이터 세트를 섞는 겁니다 가장 싼 순서대로 분류하면
전혀 좋지 않으니까요
먼저 잘 뒤섞인 데이터 집합이 필요해요
먼저 무작위 씨앗을 설정했어요 항상 정확히 같은 데이터로 작업하도록 확실히 하려고요
그래야 제가 하려는 것과 정확히 같은 걸 복제해서 같은 결과를 얻을 수 있으니까요 get
it
랜덤을 사용해요 섞어서 섞은 다음 첫 400,000개를 훈련 데이터로 가져가요
그 다음 2000년은 테스트 세트죠
이제 알겠어요
데이터 과학자들은 울죠
보통 테스트 데이터는 최소 5%에서 10%가 필요해요
얼마든지 그렇게 하셔도 돼요 여기 데이터 포인트가 8,000개
있거든요
더 많은 샘플을 채취해 더 큰 데이터를 얻을 수도 있죠
우리한테는 필요 없을 거예요 왜냐하면 테스트에 몇백 개만 사용할 거니까요
그럼 아주 정확한 결과가 나오죠
계속 더 많이 시험하면 결과도 감소하죠 Get it
이 프로젝트의 목적에는 충분하지만 최선의 관행이죠
최선의 관행인지는 모르겠어요
일반적인 관행은 적어도 5%를 테스트 데이터 집합에 비축하는 것이고 때로는 5%를
테스트에 비축하고 5%를 유효성 검증에 비축하는 것이죠
이 목적에는 필요 없지만 원한다면 얼마든지 할 수 있어요 관리할 추가 데이터
집합으로 가질 수 있죠
어쨌든 그렇게 할 거예요
전부 뒤섞을 거예요
훈련 데이터 400,000개와 테스트 세트 2000개로 나뉘었죠
그럼 첫 번째 테스트 요소를 보죠
여러분이 기억하는 테스트 프롬프트는 답을 공개하지 않은 프롬프트죠
이게 전송될 프롬프트∙∙∙ 죄송합니다 훈련 프롬프트를 먼저 보고 테스트 프롬프트를
보죠
훈련 시기가 해답을 갖고 있어요
훈련용 문자가 가장 가까운 비용으로 얼마가 드는지를 보여주죠
델포이 연료 펌프 모듈이에요
그리고 네
어때요?
227달러예요
전 전혀 몰랐을 거예요
이건 훈련의 일부로 LM으로 보내질 것의 예입니다 설명과
가격이 포함돼 있거든요
테스트 프롬프트를 보죠
테스트 프롬프트는 사용될 뭔가를 보여줄 겁니다 설명은 있지만
가격은 없죠
이게 테스트 세트의 첫 번째 항목이에요
자, 됐어요
첫 250가지 테스트 포인트들의 가격 분배를 빠르게 살펴봅시다. 왜냐하면 이 포인트들은 모델
테스트에 가장 많이 사용되는 포인트들이거든요.
다양한 가격대가 잘 분포돼 있어요
높은 영역에서는 이 모델이 비싼 물건을 다룰 수 있는지 테스트할 것들이 많아요
그리고 다수가 저렴한 제품으로 테스트 데이터에 다양한 가격대가 포함되어
있죠
자, 마지막으로 이제 이걸 일련의 훈련과 테스트 프롬프트로 바꿀게요
방금 본 테스트 프롬프트와 가격표를 뽑아내는 거죠
이 코드는 포옹하는 얼굴에 업로드 돼요
안는 얼굴 허브에 적합한 데이터셋 객체로 바꿀 겁니다 데이터셋에 대한 Fromex를 호출하고
dataset 독감에 넣는 거죠
마지막으로 이 라인은 데이터 세트를 안아주는 페이스 허브에 업로드 합니다 계속 사용하거나
앞으로 다운로드 할 수 있도록요
get me fine 튜닝이 끝나면요 하지만 이미 작동했으니 실행하진 않을 거예요
그리고 이건 당신의 사용자이름을 입력하세요.
업로드해 놨어요, 제 어, 죄송합니다 제 사용자 이름에 업로드해 놨어요
그렇게 데이터를 검색할 수도 있어요
이 모든 데이터 큐레이션을 합선시키고 싶다면요 그런 일은 없길 바라지만요
마지막으로 이 기차를 돌려서 피클 파일로 만들어 볼게요
절여서 파일에 넣을 거예요 앞으로 로드할 수 있게요 목록 작성하는
이 복잡한 과정을 다시 거칠 필요가 없도록요
파이썬 을 잘 아신다면 파이썬 을 파일에 덤프하는 아주 쉬운 방법이에요
이제 실행하면 새 파일이 두 개 생기죠 test.pickle과 Tack.pickle이요
트레이닝과 테스트 데이터 세트를 포함하죠
이로써 데이터 큐레이션을 마쳤어요
데이터 집합을 더 살펴보고 확인하기 위해 이 작업을 진행할 텐데요. 서로
다른 데이터 포인트를 토큰화하는 작업입니다. 그러면 항상 세 자릿수가 하나의
토큰으로 토큰화되고 토큰의 감각을 얻을 수 있죠.
그럼 마무리로 슬라이드로 다시 만나죠