시작하기무료로 시작하기

LSTM으로 텍스트 예측하기

이 연습 문제에서는 작은 텍스트 데이터셋을 사용해 다음 단어를 예측하는 간단한 LSTM 모델을 만들어 볼 거예요. 이 데이터셋은 The Lord of the Ring 영화의 정제된 대사로 구성되어 있으며, text 변수에 담겨 있어요.

text길이 4sequences로 변환하고, Keras의 Tokenizer를 사용해 모델에 들어갈 특성과 레이블을 준비해 보세요!

Keras의 Tokenizer는 이미 임포트되어 있어 바로 사용할 수 있어요. 이 도구는 각 고유 단어에 고유한 숫자를 할당하고 그 매핑을 딕셔너리에 저장합니다. 모델은 숫자를 다루기 때문에 중요하며, 나중에 예측 결과 숫자를 다시 단어로 디코딩할 때도 필요해요.

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

Keras로 시작하는 딥 러닝

강의 보기

연습 안내

  • .split()을 사용해 텍스트를 단어 배열로 분할하세요.
  • 한 번에 한 단어씩 이동하며, 4개 단어로 이루어진 문장을 만드세요.
  • Tokenizer()를 인스턴스화하고, .fit_on_texts()로 문장에 대해 학습시키세요.
  • .texts_to_sequences()를 호출해 sentences를 숫자 시퀀스로 변환하세요.

실습형 인터랙티브 연습

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

# Split text into an array of words 
words = ____.____

# Make sentences of 4 words each, moving one word at a time
sentences = []
for i in range(4, len(words)):
  sentences.append(' '.join(words[i-____:i]))

# Instantiate a Tokenizer, then fit it on the sentences
tokenizer = ____
tokenizer.____(____)

# Turn sentences into a sequence of numbers
sequences = tokenizer.____(____)
print("Sentences: \n {} \n Sequences: \n {}".format(sentences[:5],sequences[:5]))
코드 편집 및 실행