데브허브 | DEVHUB | [머신러닝+딥러닝 기초 강의] 24강. 순환 신경망으로 IMDB 리뷰 분류하기[머신러닝+딥러닝 기초 강의] 24강. 순환 신경망으로 IMDB 리뷰 분류하기
- IMDB 리뷰 데이터셋은 순환 신경망(RNN) 학습에 적합한 대표적인 순차 데이터로, 긍정/부정 리뷰 각각 25,000개로 구성된 이진 분류 문제입니다. 🎬
- 케라스는 IMDB 데이터셋을 단어가 숫자로 매핑된(토큰화된) 형태로 제공하여, 자연어 처리(NLP)의 전처리 과정을 간소화합니다. 🔢
- 텍스트 데이터는 '말뭉치(Corpus)'로 불리며, 각 단어에 고유 번호를 부여한 '어휘 사전(Vocabulary)'을 통해 컴퓨터가 처리할 수 있는 형태로 변환됩니다. 📚
- 다양한 길이의 리뷰 데이터를 처리하기 위해
pad_sequences 함수를 사용하여 모든 시퀀스의 길이를 통일하며, 실제 텍스트의 의미 보존을 위해 패딩(0)은 시퀀스 앞부분에 추가됩니다. 📏
- 순환 신경망(RNN)은 3차원 데이터를 입력받으며, 각 단어를 벡터로 표현하는 방식에는 '원-핫 인코딩'과 '워드 임베딩' 두 가지 주요 방법이 있습니다. ↔️
- '원-핫 인코딩'은 각 단어를 고유한 차원의 희소 벡터(대부분 0)로 표현하여 직관적이지만, 고차원 및 메모리 비효율성 문제가 있습니다. 📈
- '워드 임베딩'은 단어를 고정된 크기의 실수 벡터로 표현하여 단어 간의 의미적 유사성을 학습하며, 메모리 효율적이고 더 나은 성능을 제공하는 현대 NLP의 핵심 기술입니다. 🧠
- 케라스의
Embedding 층은 어휘 사전 크기와 임베딩 차원을 지정하여 단어 임베딩을 쉽게 구현하고, 모델 훈련 과정에서 최적의 임베딩 벡터를 학습합니다. ✨
- 기본적인
SimpleRNN 층을 활용하여 IMDB 리뷰 분류 모델을 구축하고, binary_crossentropy 손실 함수와 조기 종료 콜백을 사용하여 훈련합니다. ⚙️
- 워드 임베딩을 사용한 모델은 원-핫 인코딩 방식보다 파라미터 수가 적고 메모리 효율성이 높으며, 일반적으로 더 우수한 분류 성능을 보입니다. 🚀