2025. 4. 2. 22:08ㆍ개발/👽 졸업 논문
연구 주제가 어느정도 정해지고 있다...!
요놈이 제일 가능성 높은 주제일 듯하다
실제 관측 데이터(측광 데이터+분광 데이터)와, 3D 시뮬레이션 데이터(시뮬 이미지 데이터+입력 데이터..?)를 사용해서
은하의 충돌 여부 예측
어떤 주제가 되었든 이미지 + 수치 멀티모달리티를 사용하게 될 듯해서
멀티모달의 대략적인 아키텍처가 어떤 식일지 조사해봤다
1. 멀티모달 딥러닝의 대략적인 아키텍처
전체적인 흐름
Data Input
다양한 형태의 데이터 입력받기
Encoding
피처 추출 및 벡터화 -> 잠재 공간 매핑 -> 차원 축소
Fusion
다른 타입의 데이터 잠재 공간과 합치기
Train/Test
학습 및 예측
우선 여러 형태의 데이터들을 컴퓨터가 잘 이해할 수 있는 범주 내로 끌고와야 하기 때문에 인코딩을 한다
이때 인코딩이란 데이터들로부터 특징을 추출, 벡터화하여 잠재공간에 매핑하는 것을 의미한다
ML에서는 특징을 인간이 직접 정의하여 추출하지만 DL에서는 모델이 알아서 잠재 패턴을 감지하여 특징을 추출해낸다
예를 들어, 이미지는 CNN 등이 픽셀값과 픽셀 간의 관계를 기반으로 엣지, 패턴, 형태들을 감지해서 피처를 추출하고
오디오나 비디오와 같은 시계열 데이터(시간의 흐름에 따라 달라지는 데이터)는 RNN 등을 이용하여
오디오는 시간에 따른 주파수를 기반으로, 비디오는 시간에 따른 프레임(이미지)를 기반으로 피처를 추출한다
이렇게 추출된 데이터들은 벡터 형태로 표현된다
잠재공간에 매핑한다는 것은 여러 형태의 데이터들을 같은 차원 수로 벡터화한다는 것을 의미한다
즉 수치 데이터, 이미지 데이터, 오디오 데이터 등을 모두 30차원에 맞춰서 벡터화한다는 것이다
이때 이미지 데이터나 시계열 데이터들은 엄청나게 큰 차원으로 벡터화될 가능성이 높다
고차원 데이터들은 희소성이 강해서 모델의 성능 저하의 원인이 되기 때문에 차원 축소를 해줘야 한다
이후에 다른 타입의 데이터들을 결합해주고 학습을 진행한다
데이터의 형태에 따라 순서는 달라진다
차원 축소 > 잠재 공간 매핑 > 결합
잠재 공간 매핑 > 차원 축소 > 결합
잠재 공간 매핑 > 결합 > 차원 축소
2. 데이터의 형태와 각 데이터 형태의 벡터화 방법
데이터 유형에 따른 벡터화 방법과 사용 가능한 프레임워크, 툴
데이터 유형 | 예시 | 벡터화 방법 | 사용 프레임워크, 툴 |
이미지 | 사진, 의료 영상, 위성 이미지 | CNN / Transformer 기반 특징 추출 | CLIP DINO |
텍스트 | 문서, 대화, 뉴스 기사 | Word Embedding / Transformer | Word2Vec BERT GPT FastText |
수치 데이터 | 키, 나이, 온도, 가격 | 표준화/정규화 or MLP | StandardScaler MinMaxScaler |
음성 | 음성 명령, 녹음 파일 | Mel-Spectrogram 변환 -> CNN | Librosa Wav2Vec2 |
비디오 | 유튜브 영상, 감시 카메라 | CNN + RNN / Transformer | SlowFast TimeSformer |
센서 데이터 | 가속도 센서, IoT 데이터 | 시계열 분석 -> LSTM / Transformer |
나중에 멀티모달 모델링할 때 바꿔가며 테스트해볼 것들
- 차원 축소 / 잠재 공간 매핑 / 결합 순서
- 잠재 공간 매핑할 때 차원 수
- 축소할 차원 수
- 데이터를 결합할지, 결합하지 않고 데이터 간의 관계를 따질지
- 벡터화 프레임워크
- 다중 분류 모델