본문 바로가기
Artificial Intelligence/Deep Leaning

Sequence Modeling(시퀸스 모델링)

by YUNZEE 2024. 1. 26.
728x90

시퀀스 데이터 또는 시퀀스 모델링이라는 말을 할 때 정확히 무엇을 의미하는지 예를 들어 설명해 보겠습니다.

 

공이 움직이는 그림이 있다고 하고 , 이 공이 다음에 어디로 갈지 예측하는 것이 당신의 임무라고 했을 때 만약 공의 궤도, 움직임, 이력에 대한 정보가 전혀 없다면 다음 위치에 대한 어떤 추측이나 예측도 정확히 말하면 무작위 추측일 것이다. 하지만 공의 현재 위치뿐만 아니라 과거 어디로 움직였는지에 대한 정보도 알려준다면 문제가 훨씬 쉬워진다.

 

이는 정말 단순한 직관적인 예시지만, 시퀀스 데이터와 시퀸스 모델링이라는 개념은 실제 세계의 많은 문제에 적용할 수 있다.  예를 들어, 시계열 데이터(주식 가격, 날씨 데이터)를 예측하거나, 음악을 작곡하거나, 기계 번역을 하거나, 로봇을 제어하는 데 사용할 수 있다.

 

시퀸스 데이터는 우리 주변을 온통 에워싸고 있다. 우리가 평소에 누군가와 대화할 때 하는 나오는 말도 마찬가지이다. 입에서 나오는 소리는 순서 있는 음파 시퀀스 형성을 하여 소리를 만들어내고 있다. 이를 분류하면 시퀸스 데이터로 분석할 수 있다. 마찬가지로 텍스트나 언어도 단어의 시퀸스로 나타낼 수 있다.

 

보다 구체적으로 설명하자면, 시퀸스 데이터는 순서가 있는 데이터이다. 즉, 데이터의 각 요소는 이전 요소와 관련이 있으며 데이터의 전체적인 의미를 이해하기 위해서는 이러한 순서를 고려해야 한다. 시퀀스 모델링은 이러한 시퀸스 데이터의 패턴을 학습하고 예측하는 데 사용되는 알고리즘이다.

 

실제 세계에서 순차 모델링의 응용 사례를 고려해 볼 때, 우리는 다양한 유형의 문제 정의를 활용할 수 있다. 전에 있던 블로그들은 분류(classification)와 회귀(regression) 개념을 소개했으며, 고정된 단일 입력에 대해 단일 출력을 에측하는 피드포위드 모델에 대해 학습했다. 예를 들어 ''이 과목에서 내가 몇 점을 받을까요?'' 와 같은 질문은 이진 분류 예시에는 시간이나 순서 개념이 존재하지 않는다. 하지만 순차적 요소를 도입하면 시간적으로 정의된 입력을 처리하고 순차적 또는 시간적 출력을 생성할 수 있다.

 

한 가지 예시로 텍스트 언어를 고려해 볼 수 있다. 텍스트 시퀀스를 기반으로 긍정적인 감정인지 부정적인 감정인지 여부를 분류하는 것처럼 단일 예측을 생성할 수 있다. 반대로 단일 입력을 사용하여 해당 이미지에 대한 텍스트 또는 순차적 설명을 생성할 수도 있다. 예를 들어 " 야구 선수가 공을 던지는 이미지를 보고 이를 언어 캡션으로 생성하는 신경망을 만들 수 있을까요?" 

 

마지막으로 입력 시퀀스에서 출력 시퀀스를 생성하는 문제도 고려할 수 있다. 예를 들어'두 언어 간에 번역을 수행하고 싶은 경우 이러한 유형의 사고방식과 아키텍처가 스마트폰의 google번역기와 기타 많은 예시에서 기계 번역 작업을 구동한다.'

 

 

 

728x90