본문 바로가기

개발/ai

1. AI를 활용하자! (1) : AI 는 어떤 일을 잘할까?

편의상 글에서 llm을 ai 모델이라고 부릅니다. 틀린 내용이 있다면 편하게 댓글 달아주세요~!

너무 많은 ai 들

내게 대규모 언어모델은 Chat GPT3가 다였다. 이번에 찾아보니 gemini, gpt, claude, llama 등등 너무 많은 모델 및 서비스가 나와 당황스러웠다. 아니 2년 정도밖에 안 되었는데, 이렇게 순식간에 발전하다니. GPT3가 나와서 충격받은 게 엊그제 같은데..! 서비스 홈페이지마다 우리 모델이 최고이고 점수가 이렇게 높으니 선택하라고 말한다. 소개글만 잠깐 훑어보아도 내가 아는 수준(이전 직장이 기계독해 회사라 아-주 간단한 수준으로 언어모델에 대해 배웠었다)을 급격히 뛰어넘어 보였다.

단순히 종류만 많아진 것이 아니라 ai와 상호작용하는 방식(프롬프트)도 체계화되었다. claude 같은 경우는 공식 홈페이지에 프롬프트를 작성하는 방법도 굉장히 세부적으로 안내하고 있고, 프롬프트 엔지니어링이라는 개념도 일반 상식과도 같아지는 분위기였다. 당혹스러움이 번져갔지만, 그래도 프롬프트 한 줄이라도 쳐보자는 마음에 gpt와 gemini에게 일상적인 수준의 질문들을 던져보았다. 결과는 놀라웠다. 내 기억에 AI는 말만 그럴듯하게 하는 바보였는데, 그때와는 비교도 되지 않을 정도로 대부분의 질문에 똑똑하게 답했고, 정보성 대답을 할 때는 검색해서 출처도 표기해 줬다. 세상에.

이 정도면 정말로 ai를 통해 못하는 일들도 할 수 있게 되고, 할 수 있는 일도 생산성을 높일 수 있을 것 같았다. 앞으로는 ai 를 얼마나 활용할 수 있느냐가 개인에게 굉장히 중요한 역량이 되지 않을까 싶기도 했다. 그래서 당분간 AI를 활용하기 위한 배경지식을 쌓는 데 집중하기로 했고, 다음과 같이 주제를 구체화했다. 

AI를 활용하자 -> AI가 어떤 일을 잘하는지, 어떻게 일을 시켜야 하는지 알아보자 

 

ai는 어떤 일을 잘할까?

 사실 ai들을 살펴보며 놀랐던 점은 흔히 알려진 모델들보다 훨씬 다양한 모델들이 계속해서 나오고 있고, 유명한 모델들도 굉장히 짧은 텀으로 새로운 버전이 공개되고 있다는 것이다. 이렇게 빠르게 바뀌는 분야에서 어떤 모델이 어떤 일을 잘하는지 하나하나 파악하기란 너무 소모적인 일이다. 그래서 나라의 경제상황이 궁금할 때 경제지표를 보듯이, ai가 어떤 일을 잘하는지 알기 위해 벤치마크를 파악해 보기로 했다.

ai 모델이나 서비스를 소개하는 페이지에서는 반드시 벤치마크 표가 나온다. 조금씩 벤치마크 표의 내용은 달랐지만, 그래도 어느 정도 공통된 벤치마크들이 존재했고, 같은 종류의 모델이어도 수행한 방식에 따라, 그리고 모델 크기에 따라 결과가 달라졌다. 공통적으로 언급하는 벤치마크들을 몇 가지 추려 해당 벤치마크를 제안한 논문과 자료들을 살펴보았다.

MMLU

모델의 광범위한 지식과 문제 해결 능력을 평가하기 위해 제안된 테스트로, 57개의 다양한 학문 분야를 포함하고 있다. GRE(Graduate Record Examination) 같은 시험을 위한 연습 문제들이 포함되며, 학부 과정용 문제도 포함되으며, 난이도는 “초등학교 수준”, “고등학교 수준”, “대학 수준”, “전문가 수준”으로 구분된다고 한다. 다음은 문항 예시이다.

 논문에서는 테스트 결과 GPT-3이 분야별 편차가 크다고 밝혔다. 예를 들어 College Chemistry 나 Moral Scenario 에선 무작위적인 점수와 비슷한 수준(찍어서 맞춘 거랑 별다를 바 없다는 뜻으로 이해했다)이지만, High School Psychology 나 Marketing 에선 높게 나왔다. 또한 절차적인 지식을 습득하기 어렵다고 하며, 계산이 많이 요구되는 초등 수학에서 매우 낮은 점수를 보여준다고 했다. (아래 GSM8K 벤치마크에서 초등 수학과 관련된 내용을 추가로 다룬다). 이 논문에선 GPT는 사람처럼 다양한 분야에서 지식을 습득하기 어려운 걸 비롯해 여러 부족한 점들이 있어 다양한 방식으로 개선해야 한다고 했다.

그러나 GPT-4 모델이 80점대를 기록했으며 (영어를 비롯한 다양한 언어에서도 높은 점수를 얻었는 데, 참고로 한국어로는 77% 정확도를 보였다고 한다.) 이후 벤치마크 점수들에서 차례로 나오겠지만 Chemistry에서도 매우 전문적인 수준을 보이고 인간과 비슷한 수준의 상식을 보여주고 있다. 논문이 나오고 나서 얼마나 많은 발전이 있었는지 느껴졌다. 참고로 gemini ultra 가 90점으로 가장 높다고 한다.

TLDR9+

이 벤치마크는 긴 소셜 미디어 게시물을 한 문장으로 요약하는 극단적인 텍스트 요약에 중점을 둔다. 데이터셋은 Reddit에서 수집했고,  900만 개 이상이라 가장 큰 데이터셋 중 하나라고 한다. 아래는 데이터 예시인데, 너무 귀엽다.

We go to school together, we have three lessons a week together. She normally sits at the front and I sit at the back... She doesn’t seem like the cuddling type of friend, and I’m very worried she has a crush on me. I don’t want to ruin a friendship, I don’t like her back. Should I just ignore it until she asks me? What if she thinks that was a date?
TL;DR I took my friend to see a show, she leant on my shoulder the whole time. I’m not into her but I think she has a crush on me?

MMLU(Massive Multitask Language Understanding)는 AI 모델의 이해력과 사실적 지식을 다룬 다양한 학문 분야에서 평가하는 반면, TLDR9+는 길고 노이즈가 많은 비공식적인 텍스트를 짧고 고도로 추상적인 요약으로 압축하는 모델의 성능에 중점을 둔다. 다른 벤치마크보다 더 어렵게 느껴지는 게, 사람과 모델 결과의 일치도를 평가하는 ROUGE 방식으로 백분율과 다르기 때문이다.

GSM8K

8,500개의 초등학교 수준 수학 문제로 구성된 GSM8K 데이터셋으로, 모델이 2~8단계 거쳐 자연어로 풀이를 해야 하는 문제이다. 사람이 작성한 문제들로 언어적으로 다양하고 자연스럽다고 한다. 난이도는 초등학생 수준이라고 하는데, 실제로도 그렇게 어렵지 않다. 다음은 문항 예시인데, 사칙연산만 알면 풀 수 있는 간단한 문제이다.

논문에선 벤치마크를 통해 모델의 언어적 추론 능력을 평가하고, 데이터셋의 다양한 문제와 해법을 통해 모델의 수학적 추론 성능을 개선할 수 있을 것이라고 기대한다고 말한다. 논문이 나왔을 때 GSM8K 는 꽤 어려운 문제였던 것 같다. 풀이 과정에서 계산 오류가 하나라도 발생하면 오답이 되는데, 큰 모델에서도 종종 계산 오류가 발생했다고 하며, 자연어의 의미를 해석하면서 동시에 정확한 계산을 수행하는 방식이 높은 언어적 이해가 필요하다고 한다.

 GPT-3은 60점도 넘지 못했지만 최근 모델들(Caude 3 Opus, GPT-4) 은 90점이 넘는 점수들을 보여준다. 종종 CoT(Chain of Thought)가 눈에 보였는 데, Claude의 프롬프트 가이드에서 본 적이 있어 좀 더 찾아보았다. Chain of Thought 프롬프팅은 프롬프트에 추론 단계를 포함하는 것을 말한다. 이를 통해 대형 언어 모델의 복잡한 추론 작업 수행 능력을 향상할 수 있으며,  수학 문제 해결, 상식 추론, 기호적 추론 등의 성능을 개선할 수 있다는 걸 실험으로 보여준다. 

Q: There are 15 trees in the grove. Grove workers will plant trees in the grove today. After they are done, there will be 21 trees. How many trees did the grove workers plant today?
A: There are 15 trees originally. Then there were 21 trees after some more were planted. So there must have been 21 - 15 = 6. The answer is 6.
Q: If there are 3 cars in the parking lot and 2 more cars arrive, how many cars are in the parking lot?
A: There are originally 3 cars. 2 more cars arrive. 3 + 2 = 5. The answer is 5.
Q: Leah had 32 chocolates and her sister had 42. If they ate 35, how many pieces do they have left in total?

이렇게 단계별로 사고하는 방식의 정답을 예시로 보여주고 질문하면 같은 방식으로 답변을 하고, 성능 자체도 올라간다고 한다.

CoT 이후에는 zero-shot CoT 가 등장했으며, 최근의 모델들(GPT-4, Claude 3)에겐 예시를 보여줄 필요 없이 "단계별로 생각해 봐"와 같은 지시문만 넣어줘도 모델이 중간 추론을 포함해 답변한다. GSM8K는 너무 간단하고 잘 알려진 문제라 그런지 GPT에게 단계별로 생각해 봐나 예시를 보여줄 필요 없이 단계별로 추론해서 답변해 준다. 나중에 Claude 가이드를 보고 좀 더 전문적이고 복잡한 업무에 사용하는 방법을 한번 따라 해봐야겠다. 

ARC Challenge

새로운 기술을 효율적으로 습득하고 미해결 문제를 해결할 수 있는 AI, 즉 인공 일반지능을 평가하기 위한 벤치마크이다. 얼마나 새로운 기술을 효율적으로 습득하는 가를 중요하게 여기는 데, 아래 문항 예시를 보면 추구하는 방향을 알 수 있다.

홈페이지에서는 6개의 문항을 예시로 보여주는 데, 주어지는 2~3개의 예시들을 보고 규칙을 찾아내, 테스트로 주어지는 문제를 해결하는 방식이다. 2~3개에서 예시에서 규칙을 찾아내기엔 그렇게 어렵지 않았는 데(사람을 대상으로 수행하면 85%~100% 정확도를 보인다고 한다), 캐글에서 대부분 절반을 넘기지 못하는 걸 보니 AI 에겐 어려운 문제들인 것 같다. 사실 풀면서도 어떻게 내가 규칙을 찾아내는 지를 논리적으로 설명하긴 어려웠는 데, AI 가 사람만큼 이 문제들을 풀게 된다면 정말로 대부분의 문제들을 사람처럼 해결할 수 있지 않을까 하는 생각이 들었다. 조금 소름. 

GPQA

AI의 추론 능력을 평가하기 위한 매우 어려운 질문들로 구성되었으며, 이 데이터셋은 생물학, 물리학, 화학 분야에서 448개의 대학원 수준의 객관식 질문을 포함한다. 이 분야의 박사들이 평균 65% 정확도로 답을 맞히는 반면, 비전문가(다른 분야의 박사)는 인터넷 검색을 무제한으로 사용해도 34%의 정확도에 그친다고 한다. GPQA는 Google-Proof Q&A 의 약자인데, 논문에서는 단순한 인터넷 검색으로는 문제를 풀 수 없다는 걸 Google-proof라고 표현하고 있다. 

"Methylcyclopentadiene(메틸사이클로펜타디엔)이 메틸 이소아밀 케톤과 피롤리딘 촉매 하에 반응하여 밝은 노란색의 교차 결합된 폴리알켄 유기화합물이 생성되었습니다. 최종 생성물에는 몇 가지 화학적으로 구별되는 이성질체가 포함됩니까?"
(a) 2(b) 16(c) 8(d) 4
정답: (b)

위는 화학분야의 문항 예시이다. 논문에서 비전문가가 34프로의 정확도를 보였지만, 일반인들을 대상으론 훨씬 낮아질 것이라고 말하는 데, 개인적으론 5퍼센트가 나와도 대단할 것 같다. 전혀 무슨 소리인지 모르겠다,,,

어쨌든 이 논문에선 이렇게 전문가 수준으로 데이터셋을 구성하고 실험한 이유를 이렇게 설명한다. 미래의 AI 시스템이 인간의 능력을 초과할 텐데, AI의 답변이 진실된지를 파악하는 게 주요한 문제가 될 것이기 때문에, 전문가들을 포함해 이를 검증할 데이터를 언제든지 만들어낼 수 있도록 했다고 한다. 한계로는 GPQA 가 여전히 사람이 알고 있는 질문들로 제한되는데, AI 가 초인간적인 시스템이 되어 완전히 새로운 질문을 해결하기 위해선 충분치 않다고 말한다. 

최근의 벤치마크를 보면 데이터셋에서 가장 어려운 수준의 문항들에 대해 zero-shot으로 50%가 넘는 정확도를 보인다. 이제 전문적인 내용에서도(예를 들어 최신 논문) AI 모델이 일반인이나 비전문가보다는 훨씬 더 성능이 좋다는 의미이며, 이는 학습된 분야에 한정되지 않는다는 것이다. 이쯤 되면 대부분의 사람의 추론능력을 훨씬 상회할 텐데, AI 가 틀렸을 때 어떻게 이를 검증할 수 있는지가 점점 더 중요한 문제가 될 것 같다.

HellaSwag

문맥: "나는 배가 고파서 냉장고를 열었다. 냉장고에는 우유, 빵, 사과가 있었다. 나는..."
선택지: (A) 책을 읽기 시작했다. (B) 샌드위치를 만들어 먹었다. (C) 잠자리에 들었다. (D) 컴퓨터 게임을 시작했다.
정답: 일반적인 상식으로 볼 때, 배가 고픈 사람은 음식을 먹을 가능성이 높으므로 (B) 샌드위치를 만들어 먹었다가 가장 적절한 결말입니다.

상식적 추론(Common Sense Inference) 능력, 즉 얼마나 인간처럼 상황을 이해하고 판단하는가를 검증하기 위해 구성된 데이터셋이다.  이전 데이터셋 Swag는 문맥과 상관없이 모델이 문제를 맞히는 경향이 있었다. 이를 방지하기 위해 ActivityNet Captions와 WikiHow 데이터셋을 기반으로, 사람에겐 쉽지만 모델에겐 어려운 오답들을 Adversarial Filtering을 통해 생성해 냈다.
ActivityNet Captions 은 비디오에서 일어나는 사건을 설명하는 캡션이며, 위의 문항과 같은 형태이다. 문항들은 다양한 맥락과 복잡한 문장들로 구성되어 있고, 모델들은 보통 ActivityNet Captions에서 더 낮은 점수를 보인다.

아래는 논문에서 Bert-Lage 모델이 예측한 답이 오답인 경우 예시의 일부이다. 빨간색 하이라이트가 오답이고, 볼드가 실제 정답이다. 

 

최근 벤치마크에선 HellaSwag는 zero-shot 방식으로 채점되는 편으로 보인다. 2023년 GPT4 모델의 벤치마크는 논문에서 사람을 대상으로 도출한 점수를 거의 따라잡았다. 이는 모델들이 사람과 매우 비슷하게 상황을 판단하고, 이 판단은 학습된 범위를 넘어 새로운 상황에 대해서도 이루어진다는 것이다.

 

 글을 마치며

벤치마크들을 살펴보며, ai 가 어떤 일을 잘하는지에 대한 궁금증이 많이 해결되었다. 이제 ai에게 어떤 일은 기대하면 안 되는지 알게 되었고, 앞으로 ai 서비스 구매를 앞두고 고민할 때 모델 간에 비교해 볼 수 있다. 이런 점에서 목표를 어느 정도 달성했다고 생각한다. 벤치마크마다 고안한 목적과 평가하려는 내용이 다른 점들이 인상 깊었다. 인간의 능력을 훨씬 뛰어넘길 바라거나, 또는 인간과 비슷한 정도의 상식과 사고방식을 갖길 원하거나 말이다. 그리고 GPT3과 현재의 GPT4의 격차도 놀라웠다. 시장의 관심이 AI에 쏠려 있는 지금, 이런 발전은 더욱 가속화될 것 같아 기대도 되고 두렵기도 하다.

한편, 논문을 읽을 때 GPT를 활용하니 체감하기로 시간 효율이 거의 4배는 높아진 것 같다. 논문을 읽고, 요지를 파악하고, 연관된 개념들을 찾아보는 그 모든 과정을 GPT에게 질문하며 해결했는 데, 마치 전 학기에 그 과목을 들어 이미 배경지식이 있는 선배의 하드캐리를 받는 기분이었다. 이 글을 준비하는 데 3~4일이 걸렸는 데, 잘 모르는 도메인이라는 걸 감안하면 굉장히 생산적이라고 느껴진다. 이런 말도 안 되는 효율 덕분에 GPT pro를 결제했다. ㅎ. 어쩔 수 없는 게 이젠 검색할 때 GPT에게 먼저 하지 않으면 번거롭고 힘들기 때문이다...

멀티모달 모델을 평가하기 위한 다양한 벤치마크들이 존재한다. 다음 글은 그런 벤치마크들에 대해 다루거나, 이번에 다룬 벤치마크들을 활용해 보는 내용일 것 같다.