본문 바로가기

코딩/자연어처리

[생성형 AI]Chat GPT에게 '너 스스로를 정의해봐'라는 질문을 한다면

반응형

  Chat GPT에게  '너 스스로를 정의해봐'라는 질문을 올려봤다. 

 

 

 

  ChatGPT가 직접 본인을 소개하는 글에는 생성형 AI 특징들이 모두 들어가있다. 이 것을 몇가지로 추려보면 아래와 같이 5가지 특징으로 정리할 수 있다. 아래 특징들은 생성형 AI의 특징이라고도 말할 수 있다.

 

  • 대규모 언어 모델(Large Language Model)이다.
  • 방대한 데이터로 학습되었다.
  • 입력으로 주어진 문장을 이해하고 새로운 문장을 생성할 수 있다.
  • 텍스트를 기반으로 하는 상호작용을 다룬다.
  • 자아나 의식을 가지고 있지 않고 프로그래밍대로 움직인다.

 

1. 대규모 언어 모델(Large Language Model)이다.

 

  대규모 언어 모델(LLM, Large Language Model)이 무엇이라고 이야기 하기 전에 우리는 언어 모델(Language Model)이 무엇인지 이해할 필요가 있다. 언어 모델은 컴퓨터가 사람의 언어(자연어)를 이해하고 생성할 수 있는 모델이라고 할 수 있다. 그럼 어떻게 컴퓨터가 사람의 언어를 이해하고 생성할 수 있을까? 

 

  컴퓨터는 사람이 만든 단어와 문장이 어떻게 구성되는지, 어떤 문맥에서 어떻게 단어가 사용되는지를 학습한다. 예를 들어보자. "내일 날씨가 매우 춥습니다. ( )를 입으세요"라는 문장에서 사람은 '롱 패딩', '코트' 등을 자연스럽게 생각할 수 있다. 마찬가지로 언어모델은 ( ) 안에 들어갈 단어를 미리 학습하여 가장 나올 확률이 높은 단어를 선택한다.

 

 

2. 방대한 데이터로 학습되었다.

  여기서 언어 모델 앞에 '대규모'라는 단어가 붙은 이유를 알 수 있다. 대규모 언어 모델은 인터넷의 글, 책, 기사 등매우 방대한 양의 텍스트 데이터를 사용해 학습 된 모델이다. GPT3의 경우 약 45테라바이트의 텍스트 데이터를 수개월에 걸쳐 학습되었다고 전해진다. 이 엄청난 양의 데이터를 통해 언어 모델은 더 많은 단어, 문구, 문장 스타일을 경험하게 되며, 더 다양하고 정확한 언어 사용 능력을 갖추게 된다.

 

 

3. 입력으로 주어진 문장을 이해하고 새로운 문장을 생성할 수 있다.

 

  생성형 AI는 인간이 입력하는 질문이나 요청(프롬프트)를 이해하고 그에 따라 새로운 문장을 생성한다. 그럼 Chat GPT같은 생성형 AI는 어떤 원리로 문장을 이해하고 생성할 수 있는지 궁금해진다. 

  Chat GPT와 같은 대규모 언어 모델은 '기계 학습'이라는 방법을 통해 텍스트 데이터를 학습하게 된다. 기계 학습은 과거에 사람이 직접 조건에 따라 실행문을 결정하는 룰-베이스 코딩이 아닌 대량의 데이터에서 컴퓨터가 패턴을 스스로 학습하게 하는 구조이다. 컴퓨터는 수많은 문장들을 보고 어떤 단어가 자주 함께 쓰이는지, 문장의 어떤 구조가 자연스러운지 등의 패턴을 학습한다.

 

 

  예를 들어, 1번에서 예시로 들었던 "내일 날씨가 매우 추우니 ( )를 입으세요"라는 문장이 있다고 하자. 언어 모델이 빈칸인 ( ) 를 예측하는 방식을 대체적으로 확률론적인 접근을 기반으로 한다. 

 

1) 단어의 연속성 학습 

  언어 모델은 대량의 텍스트를 사용하여 학습한다. Chat GPT는 트랜스포머 모델을 기반으로 생성 된 모델이고 어텐션 메커니즘을 통해 문장 내 각 단어간의 관계를 학습하게 되어있다.  위 예시에서 "춥다"라는 단어와 "코트"사이의 강한 연관성을 인식하는 것이다. 트랜스포머 모델에 대해서는 나중에 기회가 되면 따로 정리하는 포스팅을 작성해보도록 하겠다.

 

2) 확률 할당

  트랜스포머 모델은 문장에서 각 단어에 대한 확률을 할당하게 되어있다. 이는 Softmax 함수를 통해 계산된다. '날씨가 추우니 ( )를 입으세요"라는 문장에서 빈칸 ( ) 에 올 수 있는 단어들의 가능성에 대해 확률을 할당한다. 예를 들어, "코트", "패딩", "내의" 등이 될 수 있겠다. 이 단어들 중 가장 높은 확률이 높은 단어가 다음 단어로 선택되는 것이다.

 

 

4. 텍스트를 기반으로 하는 상호작용을 다룬다.

 

  Chat GPT는 기본적으로 텍스트를 입력하고(프롬프트) 그에 따른 텍스트로 된 답변을 생성하는 상호작용을 한다. 주로, 질문에 대한 답변 제공,문서 작성,정보 요약,스토리텔링 등 다양한 형태로 나타난다. 최근에는 Chat GPT가 좀더 업데이트 되면서 텍스트를 통한 이미지 생성(DALLE3)도 가능하다.  Chat GPT 이외에 대표적인 아래와 같은 생성형 AI도 있다.

 

CHATGPT,BARD : TEXT-TEXT 생성

DALL-E, Midjourney : TEXT-IMAGE 생성

딥브레인 AI, Synthesia : TEXT-동영상 생성

 

  일반적으로 TEXT를 프롬프트로 입력하지만 꼭 TEXT일 필요는 없다. IMAGE-TEXT, IMAGE-IMAGE, VOICE-IMAGE 등 다양한 형태가 가능하다.

 

 

5. 자아나 의식을 가지고 있지 않고 프로그래밍대로 움직인다.

 

  자연어처리, 인공지능을 잘 모르는 사람들이라면 Chat gpt와 같은 생성형 AI를 보면서 인공지능이 무엇이든지 할 수 있고 사람의 모든걸 대체할 수 있다고 생각할 수 있다. 물론, 일반적으로 1명의 사람보다 방대한 데이터를 학습했기 때문에 어떻게 보면 사람보다 뛰어난 지식을 가지고 있다고 할 수 있다. 하지만, 아래와 같은 한계점은 있다.

  먼저, ChatGPT가 생성하는 데이터는 학습 한 데이터에 의존한다. 당연한 말이지만, 학습 된 데이터에 포함 된 정보 패턴, 스타일을 반영하여 응답하기 때문에 학습되지 않은 상황이나 데이터에 대해서는 적절하게 대응하기 어렵다.

 

  또한, 대표적으로 Chat GPT의 한계점으로 지적되는 부분이 '할루시네이션' 현상이다. '할루시네이션' 현상은 Chat GPT가 부적절한 허위 정보를 생성하는 것을 말한다.

 

GPT3.5 할루시네이션

 

  위 예시에서 Chat GPT3.5에 "감강찬 장군은 어떻게 거북선을 만들었지"라는 질문을 해보았다. 실제로 감강찬 장군이 아닌 이순신 장군이 거북선을 만들었음에도 불구하고 Chat GPT는 마치 감강찬 장군이 거북선을 만든 것처럼 허위정보를 생성한다. GPT4.0에서는 이 할루시네이션 현상을 어느정도 개선한 것으로 보인다.

(아직도 완전히 개선이 되지 않은 부분으로 주의해서 사용해야 할 필요가 있음.)

 

GPT4.0에게 같은 질문을 했을 때

 

 

728x90