셀프 어텐션이란 무엇인가요?

파란색 배경에 빨간색 점선이 있는 추상 일러스트

작성자

Vanna Winland

AI Advocate & Technology Writer

셀프 어텐션이란 무엇인가요?

셀프 어텐션은 머신 러닝 모델에 사용되는 일종의 어텐션 메커니즘입니다. 이 메커니즘은 입력 시퀀스에서 토큰의 중요성을 평가하여 이들 간의 관계를 더 잘 이해하는 데 사용됩니다. 이는 자연어 처리(NLP) 작업에 필수적인 강력한 인공 지능 아키텍처인 트랜스포머 모델의 중요한 부분입니다. 트랜스포머 아키텍처는 대다수 최신 대규모 언어 모델(LLM)의 기반입니다.

셀프 어텐션 메커니즘은 연구자들이 제안한 모델 신경망 아키텍처인 트랜스포머를 통해 도입되었습니다. 제안된 아키텍처의 목표는 컨볼루션 신경망(CNN)과 순환 신경망(RNN)을 사용하는 기존 머신 러닝 모델의 문제를 해결하는 것이었습니다.1

기존의 순차적 모델은 트랜스포머 모델과 동일한 인코더-디코더 아키텍처를 따르지만 데이터를 단계별로 또는 시퀀스 간(seq2seq) 처리합니다. 이 함수는 병렬화를 어렵게 만드는데, 병렬화란 입력 시퀀스의 모든 부분에 걸쳐 어텐션 가중치를 동시에 계산하여 계산 시간을 줄이고 아웃풋 생성을 향상하는 기능입니다.

셀프 어텐션은 훈련 예제 내에서 병렬화를 가능하게 함으로써 LLM의 발전에 핵심적인 역할을 했습니다. 이 방법은 시퀀스 길이가 길수록 더 많은 메모리 제약 조건으로 인해 학습 예제 전반에 걸쳐 일괄 처리가 제한되기 때문에 유용합니다. 셀프 어텐션을 사용하면 LLM 학습 데이터를 배치로 분할하고 여러 GPU에서 동시에 처리할 수 있습니다.1 셀프 어텐션은 병렬로 처리되는 효율적인 일괄 처리를 통해 머신 러닝 모델을 학습하는 데 필요한 계산 능력을 줄입니다.

셀프 어텐션은 계산 부하를 효율적으로 분산시키는 데 기여할 뿐만 아니라, 어텐션 가중치를 동시에 처리할 수 있게 합니다. 이 기능을 통해 모델은 입력 시퀀스의 관련 부분에 집중하여 시퀀스 내 각 요소의 중요성을 동적으로 예측할 수 있습니다. 셀프 어텐션은 기계 번역, 감정 분석 및 요약과 같은 NLP 작업에 유용합니다.  

셀프 어텐션은 어떻게 작동하나요?

머신 러닝 모델의 셀프 어텐션은 정보를 정확하게 처리하기 위해 더 큰 맥락 내에서 관련 요소에 초점을 맞추는 것을 포함한다는 점에서 인간 행동 개념과 유사합니다. 심리학에서 셀프 어텐션은 자신의 생각이나 행동에 집중하는 것이고, 딥 러닝에서는 입력 시퀀스의 관련 부분에 초점을 맞추는 것입니다.

트랜스포머 아키텍처에는 어텐션 프로세스가 통합된 셀프 어텐션 계층이 포함되어 있습니다. 단계는 Ashish Vaswani 등의 논문에서 제시된 대로 설명되며, 셀프 어텐션 계층 "Attention is All You Need"를 소개합니다.

입력 시퀀스 임베딩

입력 시퀀스는 임베딩 또는 숫자 표현으로 벡터화된 일련의 데이터 포인트로, 머신 러닝 알고리즘이 아웃풋 시퀀스를 생성하는 데 필요한 어텐션 점수를 계산하는 데 사용할 수 있습니다.

기계 번역에서 문장은 입력 시퀀스로 간주되며, 문장의 각 부분은 데이터 포인트 또는 토큰으로 간주됩니다. 토큰은 모델이 처리할 수 있는 의미론적 단위 역할을 하는 임베딩으로 변환됩니다.2 임베딩은 모델이 가장 관련성이 높은 입력 데이터에 주의를 기울여 우선 순위를 지정하는 데 도움이 되는 어텐션 가중치를 계산하는 데 사용됩니다.

어텐션 함수에 대한 벡터 생성

이 모델은 임베딩을 사용하여 각 토큰에 대해 쿼리(Q), 키(K), 값(V)의 세 가지 주요 벡터를 생성합니다. 이러한 값은 모델이 입력 문장 내에서 가장 강력한 의미 일치를 만드는 데 사용됩니다.

쿼리, 키 및 값 벡터를 얻기 위해 행렬 곱셈이 수행됩니다. 어텐션 메커니즘은 각 쿼리, 키 및 값 구성 요소의 가중치 행렬과 포함된 입력을 기반으로 가중치가 적용된 값 합계를 계산합니다.1 이 프로세스를 선형 변환이라고 합니다.

어텐션 점수 계산 

임베딩이 변환된 후에는 시퀀스의 각 요소에 대한 어텐션 점수가 계산됩니다. 어텐션 점수는 쿼리 벡터와 키 벡터 사이에 스케일링된 내적 어텐션 점수를 통해 도출됩니다. 이러한 어텐션 가중치는 특정 토큰이 시퀀스의 다른 토큰에 얼마나 많은 집중(또는 어텐션)을 주어야 하는지를 나타냅니다.

다음으로 어텐션 점수는 키 벡터의 차원의 제곱근에 의해 조정됩니다. 이 프로세스는 경사를 안정화하고 벡터의 차원이 증가함에 따라 경사가 너무 커져서 효율적으로 계산하지 못하게 되는 일을 방지하는 데 도움이 됩니다.

어텐션 점수를 확률로 변환 

질의 벡터와 키 벡터의 내적을 통해 산출된 어텐션 점수는 softmax 함수를 사용하여 확률로 변환됩니다. 이 프로세스를 정규화라고 합니다.

이러한 정규화된 확률을 통해 softmax 어텐션 블록을 통해 트랜스포머 아키텍처는 아웃풋 생성 중 각 입력 요소의 중요도를 평가할 수 있습니다.3 이러한 확률은 시퀀스에서 각 요소의 상대적 중요도를 찾는 데 사용됩니다. 어텐션 모델은 이러한 정규화된 가중치를 사용하여 입력의 어느 부분에 초점을 맞출지 결정합니다.

마지막으로, 이 프로세스에서 파생된 어텐션 가중치는 값 벡터의 가중치가 적용된 최종 합계에 기여합니다. 어텐션 점수가 높을수록 시퀀스에 더 많은 어텐션 가중치가 부여됩니다. 이는 시퀀스가 값 벡터의 가중치가 적용된 합계의 최종 아웃풋에 더 많은 영향을 미친다는 것을 의미합니다.

Mixture of Experts | 12월 12일, 에피소드 85

AI 디코딩: 주간 뉴스 요약

세계적인 수준의 엔지니어, 연구원, 제품 리더 등으로 구성된 패널과 함께 불필요한 AI 잡음을 차단하고 실질적인 AI 최신 소식과 인사이트를 확인해 보세요.

어텐션 모델로 컨텍스트 이해 향상 

어텐션 모델은 시퀀스 내에서 각 요소 또는 토큰 간 거리에 관계없이 장거리 종속성을 캡처하는 데 효과적입니다. 멀티헤드 어텐션은 입력 데이터 세트 내 다양한 요소에 동시에 주의를 기울여 이 기본 기능을 향상시키는 것으로, 셀프 어텐션의 중요한 확장입니다. 모델은 데이터의 고유한 측면이나 관계에 한 번에 주의를 기울일 수 있으며, 이를 통해 종속성이나 토큰 간 더 많은 컨텍스트를 가져올 수 있습니다.

트랜스포머의 양방향 인코더 표현(BERT)과 같은 초기 양방향 모델은 모델이 순방향 및 역방향 시퀀스의 정보를 모두 고려할 수 있도록 하여 컨텍스트 이해를 향상시켰습니다. 양방향 어텐션에서 모델은 주변 단어를 기반으로 단어의 의미를 이해하는 것을 목표로 합니다.4

GPT 모델은 생성 작업을 위한 확장된 컨텍스트 창의 이점을 강조하면서 셀프 어텐션을 대중화했습니다. 한 번에 더 많은 정보를 처리할 수 있는 능력으로 인해 정확성과 이해도가 향상되었습니다.

AI 모델은 셀프 어텐션을 사용하여 긴 입력 시퀀스를 효율적으로 처리하고 메모리 사용량을 줄이면서 어텐션 정보를 대규모로 교환합니다.5 모델은 셀프 어텐션을 통해 모델 내 컨텍스트 창을 사용하여 더욱 심층적인 컨텍스트 이해를 얻을 수 있습니다. 컨텍스트 창이 클수록 모델이 한 번에 주의를 기울일 수 있는 토큰 수가 늘어납니다.

사용 사례

NLP 작업: 셀프 어텐션 메커니즘은 효율적이고 완전한 텍스트 전문 분석을 허용함으로써 머신 러닝 모델의 언어적 기능을 향상시킵니다. 연구에 따르면, 감정 분류가 발전한 것으로 나타났습니다.6 모델은 어텐션 계층을 통해 단어 사이의 거리에 관계없이 단어 간 관계를 계산할 수 있으므로 NLP 작업을 잘 수행할 수 있습니다.7

컴퓨팅 비전: 셀프 어텐션 메커니즘은 NLP 작업에만 국한되지 않으며, 이미지의 특정 부분에 초점을 맞추는 데에도 사용할 수 있습니다. 이미지 인식 모델의 발전은 셀프 어텐션이 강력성과 일반화를 높이는 데 중요한 구성 요소임을 시사합니다.8

각주

1. “Attention Is All You Need,” Ashish Vaswani et al., Proceedings of the 31st International Conference on Neural Information Processing Systems, arXiv:1706.03762v7, 2023년 8월 2일 개정.

2. “Tokenization,” essay, in Introduction to Information Retrieval, Christopher Manning, Prabhakar Raghavan and Hinrich Schutze, 2008년.

3. “Rethinking Softmax: Self-Attention with Polynomial Activations,” Hemanth Saratchandran et al., Australian Institute of Machine Learning, University of Adelaide, arXiv:2410.18613v1, 2024년 10월 24일

4. “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding,” Jacob Devlin et al., arXiv:1810.04805v2, 2019년 5월 24일 개정.

5. “Scaling of Search and Learning: A Roadmap to Reproduce o1 from Reinforcement Learning Perspective,” Zhiyuan Zeng et al., arXiv:2412.14135, 2024년 12월 18일.

6. “Bidirectional LSTM with self-attention mechanism and multi-channel features for sentiment classification,” Weijiang Li et al., Neurocomputing Vol 387, 2020년 4월 28일.

7. “Parallel Scheduling Self-attention Mechanism: Generalization and Optimization,” Mingfei Yu and Masahiro Fujita, arXiv:2012.01114v1, 2020년 12월 2일.

8. “Exploring Self-attention for Image Recognition,” Hengshuang Zhao, Jiaya Jia and Vladlen Koltun, Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, 2020년.

리소스

벡터 임베딩이란 무엇인가요?
관련 주제
어텐션 메커니즘이란 무엇인가요?
관련 주제
트랜스포머 모델이란 무엇인가요?
관련 주제
데이터 세트란 무엇인가요?
관련 주제
관련 솔루션
IBM® watsonx.ai

AI 빌더를 위한 차세대 엔터프라이즈 스튜디오인 IBM watsonx.ai로 생성형 AI, 파운데이션 모델 및 머신 러닝 기능을 학습, 검증, 조정 및 배포하세요. 적은 데이터로 짧은 시간 내에 AI 애플리케이션을 구축하세요.

watsonx.ai 살펴보기
인공 지능 솔루션

업계 최고의 AI 전문성과 솔루션 포트폴리오를 보유한 IBM과 함께 AI를 비즈니스에 활용하세요.

AI 솔루션 살펴보기
인공 지능(AI) 컨설팅 및 서비스

IBM Consulting AI 서비스는 기업이 AI 활용 방식을 재구상하여 혁신을 달성하도록 지원합니다.

AI 서비스 살펴보기
다음 단계 안내

AI 개발 라이프사이클 전반에 걸친 기능에 원스톱으로 액세스하세요. 사용자 친화적인 인터페이스, 워크플로, 업계 표준 API 및 SDK에 대한 액세스를 통해 강력한 AI 솔루션을 제작할 수 있습니다.

watsonx.ai 살펴보기 라이브 데모 예약