코드 10-51 문장 길이 통일
import random
reviews_with_len = [[review, y[i], len(review)]
for i, review in enumerate(tokenized_reviews)] ------ 토큰화된 리뷰, 리뷰 레이블, 리뷰 길이가 포함된 리스트(list)를 생성
random.shuffle(reviews_with_len) ------ ①
reviews_with_len.sort(key=lambda x: x[2]) ------ sort( ) 메서드를 사용하여 리뷰를 기준으로 데이터를 정렬
sorted_reviews_labels = [(review_lab[0], review_lab[1])
for review_lab in reviews_with_len]
processed_dataset = tf.data.Dataset.from_generator(lambda: sorted_reviews_labels,
output_types=(tf.int32, tf.int32)) ------ sorted_reviews_labels, output_types에 대한 결과를 int32 형식으로 출력
BATCH_SIZE = 32 ------ 배치 크기를 32로 설정, 즉 리뷰 32건을 처리한 후 신경망의 가중치를 업데이트
batched_dataset = processed_dataset.padded_batch(BATCH_SIZE, padded_shapes=((None,), ())) ------ 데이터셋에 패딩을 적용
next(iter(batched_dataset)) ------ 첫 번째 배치를 출력하고 패딩이 어떻게 적용되었는지 확인
① CSV 파일에서 전반부는 긍정(positive) 리뷰, 후반부는 부정(negative) 리뷰가 포함되어 있기 때문에 훈련 배치에서 긍정과 부정 리뷰가 골고루 사용되도록 무작위로 데이터를 섞습니다.