더북(TheBook)

① 앞서 임베딩을 다루었지만, 임베딩은 텍스트를 양의 정수로 변환해 주는 역할을 하며 파라미터는 다음과 같습니다.

ⓐ 첫 번째 인자: 단어 사전의 크기로, 단어 종류가 총 5000개라는 의미입니다. 이 값은 앞서 imdb.load_data() 메서드의 num_words 파라미터 값과 동일해야 합니다.

ⓑ 두 번째 인자: 단어를 인코딩한 후 나오는 벡터 크기입니다. 이 값이 50이라면 단어가 50차원의 기하 공간에 표현되었다는 의미입니다.

input_length: 단어 수, 즉 문장 길이를 나타냅니다. 임베딩층의 출력 크기는 샘플 개수×(output_dim)×(input_length)가 됩니다. 임베딩층 다음에 플래튼(flatten)층이 온다면 반드시 input_length를 지정해야 합니다. 플래튼층이라면 입력 크기를 알아야 이를 1차원으로 만들어서 밀집층에 전달할 수 있기 때문입니다.

② 문장 해석을 위해 합성곱층(Conv1D)을 이용합니다. 합성곱층은 위치를 무시하고 지역적인 특성을 잘 뽑아냅니다. 합성곱을 문장에 적용한다면 주요 단어가 문장 앞뒤에 있더라도 전후 문맥을 고려하여 특성을 뽑아낼 수 있습니다. 글로벌 최대 풀링(GlobalMaxPooling1D)층은 합성곱층이 문장을 훑어 가면서 뽑아낸 특성 벡터 중 가장 큰 벡터를 선택합니다. 즉, 문맥을 보면서 주요 특성을 뽑아내고, 그중 가장 두드러지는 특성을 선택합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.