"Keras:데이터 전처리"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
(새 문서: == 개요 == 케라스 자체적으로도 데이터 전처리를 제공한다. == 전처리 == {| class="wikitable" !의도 !설명 !방법 |- |정규화 |평균 0, 표준편차 1로...) |
잔글 (→전처리) |
||
22번째 줄: | 22번째 줄: | ||
|이미지 전처리 | |이미지 전처리 | ||
|이미지를 처리할 땐 이미지를 자르거나 수치의 제한을 설정하는 과정이 필요할 때가 있다. | |이미지를 처리할 땐 이미지를 자르거나 수치의 제한을 설정하는 과정이 필요할 때가 있다. | ||
+ | |||
+ | |||
+ | 케라스에선 이미지처리를 위한 도구가 있다. | ||
|<syntaxhighlight lang="python"> | |<syntaxhighlight lang="python"> | ||
from tensorflow.keras.layers import CenterCrop | from tensorflow.keras.layers import CenterCrop |
2021년 12월 7일 (화) 13:55 판
1 개요
케라스 자체적으로도 데이터 전처리를 제공한다.
2 전처리
의도 | 설명 | 방법 |
---|---|---|
정규화 | 평균 0, 표준편차 1로 정규화한다. | from tensorflow.keras.layers import Normalization
training_data = np.random.randint(0, 256, size=(64, 200, 200, 3)).astype("float32") # 예시데이터
normalizer = Normalization(axis=-1) # 정규화 객체 생성.
normalizer.adapt(training_data) # 정규화 방법 지정.
normalized_data = normalizer(training_data) # 데이터에 정규화 진행.
|
이미지 전처리 | 이미지를 처리할 땐 이미지를 자르거나 수치의 제한을 설정하는 과정이 필요할 때가 있다.
|
from tensorflow.keras.layers import CenterCrop
from tensorflow.keras.layers import Rescaling
# Example image data, with values in the [0, 255] range
training_data = np.random.randint(0, 256, size=(64, 200, 200, 3)).astype("float32")
cropper = CenterCrop(height=150, width=150)
scaler = Rescaling(scale=1.0 / 255)
output_data = scaler(cropper(training_data))
print("shape:", output_data.shape) # 64개의 150,150 크기의 3채널 데이터임을 알려준다.
print("min:", np.min(output_data)) # 가장 작은 데이터는 0
print("max:", np.max(output_data)) # 가장 큰 데이터는 1
|