시작하기무료로 시작하기

파트 1: 텍스트 뒤집기 모델 - 인코더

간단한 텍스트 뒤집기 모델을 만들어 보면 인코더-디코더 모델의 동작 원리와 서로 어떻게 연결되는지 이해하는 데 큰 도움이 됩니다. 이제 텍스트 뒤집기 모델의 인코더 부분을 구현해 보겠습니다.

인코더 구현은 두 개의 연습 문제로 나뉘어 있습니다. 이 연습에서는 words2onehot() 보조 함수를 정의합니다. words2onehot() 함수는 단어 리스트와 딕셔너리 word2index를 입력으로 받아, 단어 리스트를 원-핫 벡터 배열로 변환해야 합니다. word2index 딕셔너리는 워크스페이스에 준비되어 있습니다.

이 연습은 강의의 일부입니다

Keras로 배우는 Machine Translation

강의 보기

연습 안내

  • words2onehot() 함수에서 word2index 딕셔너리를 사용해 단어를 ID로 변환하세요.
  • 단어 ID를 길이가 3인 원-핫 벡터로 변환하고(num_classes 인자 사용) 그 배열을 반환하세요.
  • 단어 I, like, catswords2onehot() 함수를 호출하고, 결과를 onehot에 할당하세요.
  • print()zip() 함수를 사용해 단어와 해당 원-핫 벡터를 함께 출력하세요. zip() 함수는 여러 리스트를 동시에 순회할 수 있게 해줍니다.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

import numpy as np

def words2onehot(word_list, word2index):
  # Convert words to word IDs
  word_ids = [____[w] for w in ____]
  # Convert word IDs to onehot vectors and return the onehot array
  onehot = ____(____, num_classes=3)
  return ____

words = ["I", "like", "cats"]
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Print the result as (, ) tuples
print([(w,ohe.tolist()) for ____,____ in zip(words, ____)])
코드 편집 및 실행