인공지능으로 하이퍼 클로바, 빙, 코파일럿 등등 여러개가 있겠지만 Open AI에 대해 알아보는 것이니 gpt3를 기준으로 알아보겠다.
1. pre training 단계 - 미리 기본 지식들을 학습시키는 단계이다. 보통 위키피디아로 트레이닝 시킨다.
2. fine tuning - 전체적인 지식에 대한 정확성은 떨어질 수 있지만 더 전문적인 질문에 대한 답변을 생성할 수 있도록 하는 단계이다.
3. tokenization - 유저에게 실시간으로 텍스트를 받는 단계이다.
예를들어 유저에게 받은 질문을 가지고 tokenzie라는 프로세스를 거친다.
띄어쓰기도 다 없애고 단어의 가장 기본적인 형태를 만들어서 읽는 것을 토큰화한다고 말한다.
이 단어를 가지고 벡터를 만드는데, 여기에 embedding이라는 개념으로 각 단어가 갖고 있는 벡터들의 거리를 측정한다
.
4. context window - 순서를 가진 토큰화된 데이터들로, 그 다음에 어떤 단어가 올지 예측하는 단계이다.
gpt의 버전이 높아질수록 메모리에 있는 토큰 수도 더 커질테고 이로인한 정확도도 올라갈 것이다.
5. generative process - context window 단계에서 예측한 단어들을 가지고 문맥을 파악한 후, 단어들을 생성한다.
예를 들어 문장의 다음에 올 단어들 2000개를 쭉 나열하고, 그 중 가장 높은 확률로 뒤에 나올 단어들을 예측한다.
이렇게 생성한 단어들을 포함하여 다시 예측하고, 이것도 포함하여 또 예측해서 계속 시퀀스를 늘려나간다.
이렇게 생성된 문장들은 원래 나온 단어들과의 차이를 줄이기 위해 최적화된다.
기본적인 단계는 이렇고, 여기에 나온 각 단계에 여러가지 기술이 추가된다. embedding이라거나..
추가로
gpt를 공부하면 temperature라는 단어가 나오는데, 이것이 높으면 모델이 흥분되었다는 의미로
예측되지 않은 랜덤적인 단어가 나와서 창의적인 답변을 받을 확률이 올라간다.
반대로 temperature가 낮으면 창의적이지 않은, 당연히 뒤에 나와야 할 단어들이 나온다.
이것을 기반으로 사실적인 대답을 듣고 싶다면 low temperature, 창의적인 답변은 temperature를 높이는 방식으로 사용한다.
레퍼런스
inflearn에서 미쿡엔지니어 님의 강의 정리
'Open AI' 카테고리의 다른 글
Scikit-learn과 머신러닝 모델의 성능문제 (0) | 2024.05.09 |
---|---|
history를 사용해서 text completion 앱 만들기 (0) | 2024.05.09 |
OpenAI API 기본 - gpt 모델, Completion API의 parameter 소개 (0) | 2024.04.29 |
OpenAI API 기본 - 파이썬으로 gpt 사용하기 (0) | 2024.04.29 |
DALL - E2 인공지능 모델이 만들어지는 방법 (0) | 2024.04.29 |