작성자 없음
작성자 정보가 삭제된 글입니다.
작성
·
27
0
# 훈련 데이터셋에서 포르투갈어 및 영어 예제 출력
for pt_examples, en_examples in train_examples.batch(3).take(1):
print('> 포르투갈어 예제:')
for pt in pt_examples.numpy():
print(pt.decode('utf-8')) # 포르투갈어 문장 디코딩하여 출력
print()
print('> 영어 예제:')
for en in en_examples.numpy():
print(en.decode('utf-8')) # 영어 문장 디코딩하여 출력
=====> 위의 코드에 pt 와 en 이 어떻게 생성된 변수인지 잘 이해가 안 가서 여쭤봅니다.
답변 1
0
train_examples는 포르투갈어와 영어 문장 쌍으로 구성된 데이터셋입니다. 이 데이터셋은 TensorFlow의 tf.data.Dataset API를 사용하여 준비된 것이고 (포르투갈어 문장, 영어 문장) 형태로 구성된 튜플의 형식을 가집니다.
train_examples.batch(3)는 데이터셋을 배치 3개 단위로 나누는 작업을 수행합니다. 즉, 데이터셋을 3개의 문장씩 묶어 배치로 만듭니다. 따라서, pt_examples와 en_examples는 각각 포르투갈어와 영어 문장 3개로 이루어진 배치입니다. take(1)는 배치 1개 가져옵니다.
이렇게 하면 pt_examples.numpy() 와 en_examples.numpy() 에는 예를 들어 다음과 같은 데이터가 들어있게 됩니다.
pt_examples.numpy(): ['Bom dia', 'Como você está?', 'Obrigado']
en_examples.numpy(): ['Good morning', 'How are you?', 'Thank you']
이 list 들을 for 문으로 읽으면 포르투갈어, 영어 한 문장씩이 읽히게 됩니다.
감사합니다.