일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 프로토콜 예시
- tcp/ip 4계층 단위
- 혼자 공부하는 네트워크
- 네트워크 애플리케이션 정리
- 소켓구별
- 컴퓨터 네트워킹 하향식 접근 요약 8판 요약
- 이진탐색트리 c
- 헤더 트레일러
- tcp/cp 4계층
- 캡슐화역캡슐화
- 컴퓨터 네트워킹 하향식 접근 8판
- CPU
- 라우터 뜻
- 네트워크 pdf
- computer networking a top-down approach
- 컴퓨터 네트워크 정리
- 프로토콜 개념
- 패킷교환방식
- lan 뜻
- wan 뜻
- dns 뜻
- 컴퓨터 네트워크 요약
- osi7계층 단위
- 메시지교환방식
- 계층별 프로토콜
- tcp/ip 4계층 구조
- tracert #네트워크경로추적
- 컴퓨터 네트워킹: 하향식 접근(8판)
- computer networking a top-down approach 8판
- computer networking a top-down approach 요약정리
- Today
- Total
진강이의 성장일지
지금 당장 활용해야 하는 생성형 AI의 모든 것 - 용어 정리 본문
ChatGPT를 시작으로 지난 1년 동안은 생성형 AI의 시대라고 해도 과언이 아닙니다.
우리 앞에 등장한 이 생성형 AI 기술로 인해 크리에이터가 되기 위한 장벽이 낮아지고 있으며 누구나 아이디어나 영감만 있으면 전문적인 지식이 없어도 AI 도구를 활용해 내 작품을 만들 수 있는 시대가되었습니다.
앞으로 이 생성형 AI를 잘 활용할 수 있는 능력이 분야에 상관없이 매우 중요한 능력이 될 것입니다.
따라서 오늘은 생성형 AI에 대해 잘 모르거나 처음 써 보는 분들을 위해 이 기술과 관련된 용어들을 간단하게 설명하려고 합니다. 기본적인 내용부터 더 어려운 내용까지 다룰 예정이니, 이 글을 통해 생성형 AI에 대해 더 알아가는 시간이 되었으면 좋겠습니다.
1. AI란?
AI는 인간의 생각하는 방식을 모방하여 입력된 정보를 바탕으로 결과를 판단해 제공하는 기술입니다. 생성형 AI를 이해하기 위한 용어와 구조를 쉽게 설명하자면 다음과 같습니다.
- 인공지능(AI: Artificial Intelligence)
인공지능은 인공적으로 사고하고 행동하는 컴퓨터 시스템으로 인간의 학습능력, 추론 능력, 지각 능력을 포함하고 있습니다. 인공지능은 머신러닝과 딥러닝을 포함하고 있는 광범위한 개념입니다.
- 머신러닝(Machine Learning)
머신러닝은 인공지능의 하위 분야로, 스스로 학습하여 대상의 패턴을 인식하고 예측합니다. 쉽게 설명하자면, 기계에 문제 해결을 위한 결과를 입력하여 학습시키는 것으로, 이후 유사한 문제가 생기면 스스로 풀어낼 수 있는 능력을 갖출 수 있게 합니다.
- 딥러닝(Deep Learning)
딥러닝은 머신러닝의 하위 집합으로, 더 복잡한 패턴을 인공신경망(인간의 뇌가 정보를 처리하는 방식을 구현한 시스템)을 통해 처리할 수 있는 머신러닝의 유형입니다.
즉, AI는 머신러닝과 딥러닝을 포함하고 있는 광범위한 개념입니다. 동시에 머신러닝은 다양한 학습 방법을 포함하고 있는 넓은 분야이며, 머신러닝의 포함되어 있는 유형 중 하나가 딥러닝인 것입니다.
2. 생성형 AI란?
생성형 AI는 머신러닝을 통해 학습한 내용들을 조합하고 딥러닝함으로써 복잡한 내용도 원하는 요구사항에 맞춰 텍스트, 이미지, 오디오, 합성 데이터 등의 콘텐츠로 도출해 내는 인공지능의 형식입니다. 정리하자면 생성형 AI는 딥러닝의 하위 개념에 포함되어 있는 인공지능 중 하나인 것입니다.
이러한 생성형 AI는 다양한 모델을 사용하여 독창적인 콘텐츠들을 만들어내게 됩니다. 대표적인 모델의 종류는 초거대 언어 모델(LLM: Large Language Model), 적대적 생성 신경망(GAN: Generative Adversarial Network), 변이형 자동 인코더(VAE: Variational Autoencoder)가 있습니다. 세 가지 모델의 정의는 다음과 같습니다.
- 초거대언어모델(LLM: Large language model)
인간의 언어를 이해하고 생성하도록 훈련된 인공지능
- 적대적 생성 신경망(GAN: Generative Adversarial Network)
실제에 가까운 이미지나 사람이 쓴 것과 같은 글 등 여러 합성 데이터를 생성하는 인공지능
- 변이형 자동 인코더(VAE: Variational Autoencoder)
여러 분포로부터 샘플링하여 디코딩을 통해 의미 있는 출력으로 연결시켜 새로운 창의적인 데이터 생성 및 잠재 표현을 조작하는 인공지능
이처럼 인공지능은 다양한 하위 유형이 존재하며, 하위 유형의 인공지능이 모여 하나의 결과를 도출해 내는 밀접한 관계를 가지고 있습니다.
3. 대형 언어 모델(LLM, Large Language Model)
대형 언어 모델은 생성형 AI를 설명할 때 가장 먼저 이해해야 하는 개념입니다. 대형 언어 모델이란, 말 그대로 광범위한 양의 텍스트 데이터를 학습한 모델을 뜻하는데요. 이 개념은 인간의 언어 능력 성장 과정을 생각하면 이해하기 쉽습니다.
어렸을 때는 언어에 대한 학습량이 적어 제한된 단어와 짧은 문장 위주의 대화만 가능하지만, 이후 교육 과정, 일상생활 속에서의 대화, 독서, 인터넷 등 학습을 통해 언어 능력이 자연스럽게 성장합니다. 이 과정에서 이해력과 추론 능력도 함께 높아지며, 대화 수준과 답변의 정확도가 향상됩니다.
대형 언어 모델도 이와 유사하게 방대한 양의 언어 데이터를 학습하면서, 기본적인 지식을 습득하게 됩니다. 인간의 글과 대화 방식을 받아들이며 더욱 정교하고 자연스러운 대화 능력을 갖춰갑니다. 오늘날 대부분의 텍스트 기반 생성형 AI 서비스는 이 대형 언어 모델을 기반으로 작동합니다.
4. GPT(Generative Pre-trained Transformer)
앞에서 대형 언어 모델이 거대한 양의 언어 데이터를 학습한 모델이라고 말씀드렸는데요. 단순하게 많은 양의 데이터를 학습했다고 해서 인간과 유사하게 대화할 수는 없습니다. 이 개념 역시 인간의 학습 과정으로 예를 들어보도록 하겠습니다.
인간의 경우 언어 학습을 많이 할수록 작문 능력도 동시에 향상될 수 있지만, 항상 비례하는 것은 아닙니다. 지식을 쌓는 일과 작문 능력은 또 다른 능력이기 때문입니다. 인간이 작문 실력을 키우기 위해 별도의 훈련을 하듯, 대형 언어 모델도 단순한 학습을 넘어 인간처럼 말하기 위한 전문적인 훈련이 필요로 하는데요. 이를 잘 수행한 모델이 바로 미국의 인공지능 연구소 OpenAI에서 만든 ‘ChatGPT’입니다.
ChatGPT는 채팅을 뜻하는 ‘Chat’과 ‘GPT’를 결합한 용어로, 여기에서 말하는 ‘GPT’는 대형 언어 모델의 대표적인 예시이자, 인간처럼 말할 수 있도록 잘 훈련된 모델입니다. GPT는 이름에서 알 수 있듯 ‘트랜스포머(Transformer)’라는 아키텍처를 기반으로 하며, 이는 인간의 언어 처리 방식을 모방한 자연어 처리 분야의 심층 신경망 구조를 말합니다.
5. 매개변수(Parameter)
앞서 설명한 ChatGPT를 시작으로 생성형 AI의 시대가 열리자, 경쟁 기업에서는 뒤처지지 않기 위해 저마다 자체 개발한 대형 언어 모델을 하나둘씩 발표하기 시작합니다. 이때 가장 많이 주목받았던 용어 중 하나가 ‘매개변수(파라미터)’인데요.
ChatGPT와 같은 서비스의 핵심 경쟁력은 사용자가 원하는 최적의 답을 제공하는 데에 있는데요. 질문에 관한 최적의 답변을 산출하기 위해서는 정밀하게 설계된 함수가 필요로 합니다. 그리고 이 함수는 결괏값에 영향을 미치는 ‘매개변수’로 이루어져 있습니다. 매개변수는 요리의 레시피라고 생각하면 쉽게 이해할 수 있습니다.
예를 들어, 김치찌개를 끓인다고 할 때 가장 먼저 재료를 선택해야 합니다. 단순히 물에 김치를 넣어 끓이는 것보다는 육수와 조미료, 파, 양파 등의 부재료가 들어갈 때 훨씬 더 깊고 풍부한 맛을 낼 수 있죠. 음식에 들어가는 부재료가 바로 매개변수에 해당합니다. 새롭게 출시되는 대형 언어 모델들이 파라미터 수를 강조했던 이유도 매개변수가 많아질수록 보다 정교한 답을 생성할 수 있기 때문입니다.
그러나 단순히 재료가 많다고 해서 맛이 보장되는 것은 아닙니다. 물의 양이 많으면 맛이 싱거워질 수 있고, 김치보다 부재료가 많아진다면 김치찌개 본연의 맛이 변질될 수도 있죠. 즉, 재료의 양과 조리 시간에 따라 맛이 천차만별로 바뀔 수 있다는 뜻인데요.
매개변수도 답변의 정확도를 높이기 위해서는 각 변수의 가중치를 적절히 조정해야 하며, 어떤 변수들은 입력 데이터에 의존하지 않고 고정된 값을 가지도록 편향시키기도 합니다. 어떤 김치찌개를 끓이더라도 물의 양은 일정 수준 이상 필요한 것처럼 말이죠.
일반적으로 매개변수의 양이 많을수록 정답에 가까운 답을 도출할 수 있지만, 오히려 너무 많으면 과적합(Overfitting) 문제가 발생할 수 있습니다. 과적합이란, 모델이 훈련 데이터에 지나치게 적응해 버려 새로운 데이터나 일반적인 상황에 대해서는 오히려 성능이 떨어지는 현상을 말합니다.
6. 프롬프트 엔지니어링(Prompt Engineering)
생성형 AI 시대가 도래하면서 영어가 가장 중요한 역량이 될 것이라는 의견도 있었는데요. 이는 생성형 AI 서비스의 작동 방식에 기인한 것입니다. 생성형 AI 서비스는 사용자의 특별한 행위 없이 오로지 질문과 요청에 의해 원하는 결과를 제공하고, 초기 모델의 경우 영어 기반의 학습 데이터 비중이 높기 때문입니다. 특히 영어로 대화했을 때 가장 효과적인 답변을 받을 수 있었고요. 이때 AI에 주어지는 입력, 즉 질문이나 명령을 ‘프롬프트(Prompt)’라 부릅니다.
즉, 어떻게 질문을 하느냐에 따라 결과가 크게 달라질 수 있는데요. 많은 기업이 이를 효과적으로 활용하여 업무 생산성을 높이기 위해 ‘프롬프트 엔지니어’라는 직업이 탄생하기도 했습니다. 프롬프트 엔지니어는 최적의 결괏값을 얻어낼 수 있도록 효과적인 프롬프트 값을 입력하는 업무를 담당하며, 이 과정에서 사용되는 기술을 ‘프롬프트 엔지니어링’이라고 부릅니다.
프롬프트 엔지니어링에 관한 간단한 예시를 들어보겠습니다.
효과적이지 못한 질문: “이탈리아 여행 계획을 세워주세요.”
= 이 질문은 목적지만 명시되어 있을 뿐, 여행 기간, 선호하는 활동, 방문하고 싶은 도시 등에 대한 정보가 없기 때문에, AI는 사용자의 선호도와 관심사에 대해 추측해야 합니다. 따라서 불분명하거나 사용자의 기대에 부합하지 않는 계획을 제안할 확률이 높습니다.
효과적인 질문: “이탈리아 여행을 위한 7일 일정 계획을 세워주세요. 저는 로마, 피렌체, 베니스를 꼭 방문하고 싶으며, 역사적인 장소와 현지 음식을 경험하고 싶습니다. 계획표는 표 형태로 작성해 주세요.”
= 이 질문은 여행 목적지, 기간, 관심사 등 구체적인 정보를 포함하고 있기 때문에, AI는 이 정보를 바탕으로 구체적인 여행 계획을 제안할 수 있습니다. 또한 표 형태로 출력을 요청하여 별도의 정리 없이 바로 출력할 수 있습니다.
7. 토큰(Token)
토큰은 대형 언어 모델의 핵심 구성 요소 중 하나로 언어 데이터를 처리하는 기본 단위를 말하며, 일반적으로 단어, 문자, 또는 문장의 일부를 포함합니다. 여기까지 보고 ‘형태소’를 떠올리시는 분들이 계실 것 같은데요. 형태소의 개념과는 명확한 차이가 있습니다.
‘Unbelievably’라는 단어를 예시로 두 개념의 차이를 설명해 보겠습니다. ‘Unbelievably’를 형태소로 구분하면 다음과 같으며, 각 형태소는 단어에 명확한 의미가 부여됩니다.
Un- : 부정을 의미하는 접두사
believe : 믿다라는 동사
-able : 가능함을 의미하는 접미사
-ly : 부사를 만드는 접미사
반면, AI 모델에서는 ‘Unbelievably’를 다양한 토큰으로 나눌 수 있으며, 이는 모델의 토큰화 방식에 따라 달라집니다. 예를 들어, 형태소와 마찬가지로 “Un-”, “believe”, -able”, “-ly”와 같이 나눌 수도 있지만, “Unb”, “elie”, “vably”와 같이 전혀 다른 형태로 나눌 수도 있다는 의미입니다.
이처럼 토큰은 반드시 명확한 의미를 내포하지 않을 수 있다는 점에서 형태소와 차이점이 있습니다. 또한 토큰을 구분하는 방식은 모델의 설계와 목적에 따라 달라지기 때문에, 그 명확한 기준을 알기 쉽지 않습니다.
우리가 토큰에 대해 알아야 하는 이유 중 하나는 돈과 연관되어 있다는 점인데요. ChatGPT의 API를 사용할 때 토큰을 기준으로 사용량을 측정합니다. 또한 같은 의미의 내용을 영어로 작성할 때 사용되는 토큰보다, 한글로 작성할 때 더 많은 토큰이 사용된다는 특징이 있는데요. 이를 바꿔 말하면, 한글로 입/출력을 할 때 상대적으로 더 많은 비용이 발생할 수 있다는 것을 의미합니다. 이러한 가격 정책은 우리가 자체적으로 한글에 특화된 대형 언어 모델을 만들어야 하는 이유로 꼽히기도 합니다.
8. 플러그인(Plugins)
플러그인은 기본적으로 기존의 소프트웨어나 시스템에 추가적인 기능을 제공하는 소프트웨어 컴포넌트를 말합니다. 웹 브라우저에 설치되어 특정 기능을 확장하는 확장 프로그램이 플러그인의 좋은 예시인데요. 플러그인 자체로는 이미 오래된 개념이지만, ChatGPT가 인기를 끌면서 재조명 받고 있는 개념이기도 합니다.
2023년 12월 초까지 출시된 ChatGPT 플러그인 개수는 약 940여개에 달하며, 계속해서 증가하고 있습니다. OpenAI에서 대표적으로 설명하는 플러그인은
익스피디아(Expedia), 웹 브라우저(Web Browser), 코드 인터프리터(Code Interpreter) 정도가 있습니다.
9. GPU(Graphics processing unit)
GPU는 Graphic Processing Unit(그래픽 처리 장치)의 약어로, 그래픽 처리, 특히 3D 모델링을 위한 프로세서로 탄생하였습니다. 1990년대 중반까지만해도 3D 그래픽은 주로 CPU로 구현하였으나, 게임 등의 수요가 높아짐에 따라 더 빠르고 실시간 그래픽 처리가 필요했습니다.
1999년 NVIDIA사에서 GeForce 256을 세계 최초의 GPU라고 판매하며 'GPU'라는 명칭이 대중적으로 사용되었습니다.
GPU의 강점은 ‘병렬 처리 능력’에 있습니다. 전통적인 CPU의 경우 강력한 연산 능력을 가지고 있지만, 주로 한 번에 하나의 작업을 처리하는 데에 최적화되어 있다면, GPU는 수백 또는 수천 개의 작은 코어를 가지고 있어 많은 양의 연산을 동시에 처리할 수 있다는 특징이 있습니다.
‘1+2+3+4+5+6+7+8+9’라는 더하기 연산을 예로 들어보겠습니다.
CPU
1. CPU는 1+2, 그다음 3, 그다음 4, … 9까지 순차적으로 더합니다.
2. 이 과정에서 총 8번의 연산을 수행해야 최종 결과를 도출할 수 있습니다.
GPU
1. 세 그룹으로 나눠 (1+2+3) (4+5+6), (7+8+9)의 연산을 동시에 수행합니다.
2. 각 그룹의 연산이 완료된 후, 그 세 결과를 더 하는 최종 연산을 수행합니다.
3. 결과적으로 2단계에 걸쳐 최종 결과를 얻을 수 있습니다.
이처럼 단일 연산에서는 CPU의 속도가 더 빠를 수 있지만, 대량의 계산이 필요할 때는 GPU의 병렬 처리 능력으로 인해 전체적인 시간을 줄이는 데에 크게 기여할 수 있습니다.
10. 일반 인공 지능(Artificial General Intelligence, AGI)
현재 널리 사용되는 AI의 경우 정확하게는 ‘좁은 의미의 인공지능’을 말하는데요. 이는 특정 작업이나 기능에 최적화된 인공지능을 의미하며, 예를 들어 언어 번역, 이미지 인식, 게임 등 특정 영역에서만 인간을 능가하는 성능을 보입니다. 이세돌을 바둑에서 이긴 알파고가 실생활에 사용될 수 없는 것과 같은 논리입니다.
일반 인공 지능은 특정 분야에만 특화되어 있는 것이 아닌, 기본적으로 인간과 유사한 지능 수준을 가진 인공 지능을 말합니다. 예를 들어, 평범하게 교육 과정을 밟아 온 성인이 회사에서 새로운 업무를 맡게 됐을 때, 그동안 쌓은 기본적인 지식과 경험을 바탕으로 약간의 교육을 통해 업무를 수행할 수 있는 것과 같습니다.
ChatGPT를 개발한 OpenAI의 궁극적인 목표도 일반 인공 지능을 개발하는 데에 있습니다. OpenAI는 일반 인공 지능이 인류에게 도움을 줄 수 있다는 믿음으로 기술을 개발하고 있으며, ChatGPT는 이러한 목표의 중간 단계라고 볼 수 있죠.
참고로 슈퍼 인공 지능 (Artificial Super Intelligence, ASI)은 일반 인공 지능보다 한 단계 발전한 개념으로 인간보다 더 똑똑한 인공지능을 말합니다.