LLM 이 궁금하신가요?

강주희
2024-03-20
조회수 2117


안녕하세요 😆


요즘 제일 🔥핫한 🔥 키워드!! 바로바로 ‘LLM’ 입니다!!

어딜 가나 LLM 얘기만 나오는데, 그래서 LLM 이 뭔데?! 라고 하시는 분들을 위해 글을 작성해 보았습니다~


<Large Language Model (LLM)>


LLM 은 Large Language Model 의 약자로, 대규모 데이터 세트에서 훈련된 인공지능 언어 모델을 의미합니다.

다들 알고 계시는 ChatGPT 가 바로 LLM 이구나!! 라고 알고 계시면 될 것 같습니다.


0d5849fb9f521.png

LLM 의 대표적인 예로, OpenAI 의 ChatGPT, Meta 의 LLaMA, Google 의 PaLM 등이 있습니다.

GPT 는 약 1조 7,000억 개, LLaMA는 약 650억 개, PaLM 은 약 5,400억 개의 파라미터가 학습되어 있는데, 

여기서 파라미터란!! 모델이 데이터로부터 학습하는 값들을 의미합니다.


LLM 은 어디에서 사용될까요??


LLM 은 주로 자연어 처리 작업에 사용되는데요.

자연어 처리란 인간의 언어를 기계적으로 이해하고 처리하는 기술입니다!

예를 들어, 인간이 사용하는 언어로 작성된 문서를 자동으로 번역하거나, 인간의 음성을 인식하여 명령을 수행하는 기술입니다.


LLM 을 사용하여 텍스트 생성, 분류, 번역, 질문 응답, 감정 분석 등 자연어 처리로 할 수 있는 모든 분야에 응용할 수 있습니다!!


<LLM 작동 원리>


그럼 LLM 이 어떻게 작동하는 것인지 알아볼까요?!


대부분의 LLM 은 트랜스포머 딥러닝 모델을 사용합니다.

트랜스포머 모델은 단어나 문장과 같은 입력 데이터에서 중요한 정보를 추출하고, 출력 데이터를 생성하는 딥러닝 모델입니다!


db8f3dc7cfe02.png


트랜스포머는 어텐션이라는 주요 기술을 사용하는데요!!


예시를 들어볼게요~~

“Juhee found the mouse in her room.” 이라는 문장을 들었을 때, mouse 가 쥐를 의미하는 것인지 컴퓨터 마우스를 의미하는 것인지 분명하지 않습니다!

하지만, 해당 문장이 "Juhee found the mouse in her room and immediately called tech support." 였다면 추가된 문맥을 통해 mouse 가 컴퓨터 마우스를 의미한다는 것을 알 수 있습니다.

이와 마찬가지로 트랜스포머는 어텐션이라는 기술을 사용하여 앞뒤 문장의 문맥을 파악합니다!


이를 통해, 트랜스포머는 복잡한 언어 구조를 이해하고 새로운 문장을 생성할 수 있게 됩니다.

이 모델은 자연어 처리 분야에 활용되며, 대용량의 데이터를 학습하여 번역, 요약, 질문 응답 등 다양한 자연어 처리 태스크에서 높은 성능을 보입니다.


a9c3ddf986826.png


LLM 은 토크나이징이라는 기술도 필요합니다!

토크나이징이란 자연어 처리에서 텍스트를 처리할 때 최소 단위인 토큰 형태로 텍스트를 만드는 것입니다. 이는 텍스트 전처리 과정입니다.

LLM 을 학습시키기 위해서는 문자를 컴퓨터가 인식하는 숫자로 변환시키기 위한 작업이 필요한데요. 해당 변환 작업 전에 전체 문장을 작게 쪼개는 작업이 필요합니다!


LLM 은 토크나이징 작업으로 문자를 쪼개고, 앞서 말씀드린 트랜스포머 모델을 이용하여 문자 간의 상관관계를 파악하여 학습되는 것입니다!!


그렇다면 사람의 언어와 LLM 의 언어는 다른데 어떻게 서로 이해할 수 있을까요?

LLM 이 어떻게 우리의 언어를 이해하고 답변하는 걸까요??

3d3ea4cc5947d.png

사람들이 사용하는 언어와 LLM 이 이해하는 언어는 다릅니다!

LLM 이 이해하는 언어를 임베딩이라고 부릅니다.


임베딩은 숫자열, 즉 벡터로 표기되어 있습니다.

임베딩 모델은 사람의 언어를 벡터화하여 LLM 모델이 이해할 수 있는 언어로 치환하고, 반대로 LLM 모델의 언어를 사람의 언어로 치환하는 역할을 해줍니다.


“동국시스템즈가 어디에 있어?” 라는 질문을 하였을 때 기계는 이해할 수 없기에, 임베딩 모델이 기계가 이해할 수 있게 숫자로 바꿔주고, 기계의 숫자 답변을 임베딩 모델이 다시 사람이 이해할 수 있도록 바꿔줍니다!


<LLM 의 한계>


그렇다면, LLM 의 한계는 무엇이 있을까요?? 


1. 편향 (Bias)


7bcfe67a42896.png


먼저, 편향에 대해 설명해 드릴게요~


데이터가 인터넷에서 긁어오다 보니 그 데이터에 내재된 사회적, 문화적 편향을 학습할 수 있어요.

예를 들어, 인종 차별, 성차별, 지역 차별 등이 학습되어 한쪽에 치우친 답변이 출력될 수 있습니다!


2. 환각 (Hallucination)


b3d255fe7d757.png


다음은 환각입니다!


ChatGPT 에게 이번에 개봉한 영화 ‘파묘’ 의 출연진을 물어보았습니다.

하지만 보시는 거와 같이 전혀 생뚱맞은 답변을 해주었네요,,

이처럼 잘못된 데이터를 실제 정보처럼 나타내주어 모르는 사람이 보았을 때 잘못된 정보들이 실제 정보인 것처럼 믿어질 수 있습니다!!


<Model Training>


이처럼 완벽해 보이는 ChatGPT 에도 한계가 존재합니다.

제가 예시를 하나 더 보여드릴게요~


81398ec1e4268.png


ChatGPT 에게 동국시스템즈의 연차 기준을 물어보았을 때 정보를 알 수 없다는 답변을 해주었네요,, 😂


ChatGPT 는 웹페이지나 책, 기타 문서 등 방대한 양의 텍스트 데이터로 학습한 모델이기 때문에 특정 회사에 대해 질문을 할 때 ChatGPT 가 데이터를 가지고 있지 않기 때문에 답변을 할 수 없습니다!


ChatGPT 를 적절하게 사용하면 개인의 업무를 효율화할 수 있겠지만, 기업에서 업무용으로 사용하기 위해서나 특정 제품이나 서비스에 관한 질문에 답변할 수 있는 챗봇을 만들기 위해서는 별도의 데이터를 트레이닝시켜야 합니다!!


그렇다면 어떻게 LLM 모델을 트레이닝하는지 알아볼까요??

트레이닝 방식에는 Fine-tuning 과 RAG 가 있습니다.


1. Fine-tuning

먼저, Fine-tuning 방식에 대해 설명 드리겠습니다!


4b3560e7bfb3f.png

쉽게 이해하기 위해 학교에서 보는 시험에 비유해서 설명해볼게요~~


다가오는 시험에 대비해 공부하고 있다고 상상해볼게요!

이미 그 시험 과목에 대한 기본 지식을 갖고 있지만, 특히 중요한 부분이나 자주 출제되는 주제에 더 집중해서 공부하려고 해요~

이때, 과거 기출문제를 풀면서 그 과목에 대한 이해도를 높이고 시험에서 더 좋은 성적을 얻기 위해 준비합니다.

공부를 마쳤으면, 시험을 봐야겠죠?

여기서 학생은 공부한 내용을 잘 기억해서 시험 문제에 맞는 정확한 답을 스스로 찾아내야 합니다~~


마찬가지로 Fine-tuning 은 이미 다양한 지식을 학습한 모델에게 특정 작업이나 도메인에 맞춰 추가 학습을 시키는 것입니다. 이는 모델이 그 분야에서 더 높은 성능을 발휘하게 해줍니다!

마치 시험에서 학생이 공부한 내용을 바탕으로 정확한 답을 찾아내듯이, Fine-tuning 을 통해 모델은 특정 작업에 최적화된 답을 생성하게 됩니다!!


2. RAG (Retrieval-Augmented Generation) 


이번엔 RAG 방식에 관해 설명해드릴게요~!

56257ec6b2ebd.png

마찬가지로 RAG 를 시험에 비유해서 설명해볼까요?!


RAG 는 오픈북 시험과 비슷해요!!

오픈북 시험은 모든 교재나 자료를 참고할 수 있기에 시험 문제를 보고 모르는 부분이 있으면 책에서 답을 찾아낼 수 있습니다.


RAG 는 질문에 답하기 위해 대규모의 문서 데이터베이스에서 관련 정보를 검색하고, 그 정보를 바탕으로 답을 생성하는 과정입니다.

오픈북 시험에서 자료를 찾아 시험을 보듯이, RAG 는 필요한 정보를 찾아내어 그에 기반한 답을 생성합니다!!


마지막으로, Fine-tuning 과 RAG 두 가지 트레이닝 방식의 장단점에 대해 알려드릴게요~~


1. Fine-tuning


1) 장점

Fine-tuning 방식은 모델이 특정 도메인에 맞추어 학습하다 보니 정확한 답변을 얻을 수 있습니다.

예를 들어, IT 분야에 특화된 모델을 만들고자 할 때, IT 관련 데이터로 Fine-tuning 을 진행하면 해당 분야에 대한 답변의 정확도가 높아지게 됩니다!


2) 단점

과적합(Overfitting) 의 위험이 있습니다.

즉, 모델이 학습 데이터에 지나치게 최적화되어 있어 새로운 데이터나 다른 도메인의 데이터에 대해서는 대응력이 떨어집니다.

또한, 학습을 위해 상당한 양의 계산 리소스가 필요하고, 시간이 많이 소요돼요~

많은 데이터로 학습시키고, 모델을 조정하는 과정이 복잡하고 무거워질 수 있기 때문입니다!!


2. RAG (Retrieval-Augmented Generation)


1) 장점

RAG 는 데이터베이스에 저장된 다양한 문서를 바탕으로 답변을 생성하는 방식입니다!

모델이 직접 정보를 검색하고 그에 기반하여 답변을 생성하기 때문에 다양한 종류의 질문에 대해 유연하게 대응할 수 있습니다~


2) 단점

반면, 정보 검색과 생성 과정이 복잡하여 시간이 오래 걸릴 수 있습니다.

모델이 답변을 생성하기 위해 많은 문서를 검색하고, 그중에서 적절한 정보를 찾아내야 하니까요!

또한, 특정 도메인에 대한 전문 지식이 상대적으로 부족할 수 있으며, 다양한 정보가 때로는 일관성이 떨어질 수 있습니다.


이렇게 Fine-tuning 과 RAG 는 각각의 장단점을 가지고 있어, 사용하고자 하는 목적과 요구 사항에 따라 적절히 선택하는 것이 중요합니다.

어떤 방식을 선택하더라도, 그 방식의 특성을 잘 이해하고 최대한 활용하는 것이 좋겠죠!


또한, Fine-tuning은 특정 도메인에 대한 성능을 향상하는 데 효과적일 수 있으며, RAG는 다양한 질문에 대한 광범위한 대응이 필요할 때 유용하기에, 이 두 가지 방법을 적절히 조합하여 사용하면 더욱 효과적인 학습 결과를 얻을 수 있습니다~!


여기까지 요즘 🔥핫한🔥 LLM 에 대해 설명해 드렸습니다.

저도 현재 열심히 LLM 트레이닝 중인데 너무 어렵네요 😅

이 글을 읽고 조금이라도 LLM 에 대해 알 수 있으셨으면 좋겠습니다!!




c54ebcf627d44.png


     

이용약관 ㅣ 개인정보취급방침 ㅣ 마케팅활용동의

동국시스템즈 ㅣ 주소: (04539)서울특별시 중구 을지로5길 19 페럼타워 9층  대표이사: 김오련

사업자등록번호: 102-81-42611  전화: 02) 2101-0900  팩스: 02) 3789-8780 Copyright 2020 DONGKUK SYSTEMS  All rights reserved