수천 개의 꽃 이미지가 포함된 꽃 데이터 세트를 사용할 것입니다. 5개의 하위 디렉토리를 포함하며 모든 클래스에 대해 하나의 하위 디렉토리가 있습니다. 꽃 데이터 세트가 'get_file' 메소드를 사용하여 다운로드되면 작업을 위해 환경에 로드됩니다.
꽃 데이터는 모델에 정규화 계층을 도입하여 표준화할 수 있습니다. 이 레이어를 'Rescaling' 레이어라고 하며, 'map' 방식을 사용하여 전체 데이터셋에 적용됩니다.
자세히 알아보기: TensorFlow란 무엇이며 Keras가 TensorFlow와 함께 신경망을 생성하는 방법은 무엇입니까?
Google Colaboratory를 사용하여 아래 코드를 실행하고 있습니다. Google Colab 또는 Colaboratory는 브라우저를 통해 Python 코드를 실행하는 데 도움이 되며 구성이 필요 없고 GPU(그래픽 처리 장치)에 대한 무료 액세스가 필요합니다. Colaboratory는 Jupyter Notebook을 기반으로 구축되었습니다.
print("Normalization layer is created ") normalization_layer = layers.experimental.preprocessing.Rescaling(1./255) print("This layer is applied to dataset using map function ") normalized_ds = train_ds.map(lambda x, y: (normalization_layer(x), y)) image_batch, labels_batch = next(iter(normalized_ds)) first_image = image_batch[0] print(np.min(first_image), np.max(first_image))
코드 크레딧:https://www.tensorflow.org/tutorials/images/classification
출력
Normalization layer is created This layer is applied to dataset using map function 0.0 1.0
설명
- RGB 채널 값은 [0, 255] 범위에 있습니다.
- 이는 신경망에 이상적인 것으로 간주되지 않습니다.
- 일반적으로 입력 값이 작아야 합니다.
- 따라서 [0, 1] 범위에 속하는 값을 표준화할 수 있습니다.
- 이 작업은 Rescaling 레이어를 사용하여 수행됩니다.
- 지도 함수를 호출하여 데이터세트에 레이어를 적용하면 됩니다.
- 또 다른 방법은 모델 정의 내에 레이어를 포함하는 것입니다.
- 이렇게 하면 배포 프로세스가 간소화됩니다.