Keras Initializers — 초기화 전략을 레이어에 주입
Keras Initializers — 초기화 전략을 레이어에 주입
Keras 는 레이어의 kernel_initializer·bias_initializer 인자로 사용할 초기화 전략(initializer) 을 고를 수 있어요. 문자열 이름이나 초기화기 객체를 넘기면 됩니다.
주요 초기화기
RandomNormal/RandomUniform: 평균·표준편차(또는 최소·최대)를 지정한 분포에서 샘플링.GlorotNormal/GlorotUniform(Xavier): 팬인·팬아웃으로 스케일을 맞춰 tanh/시그모이드 활성화에 적합.HeNormal/HeUniform(Kaiming): ReLU 계열을 견디도록 팬인 기반 스케일 사용.LecunNormal: tanh 전에 많이 쓰였던 레젠(LeCun) 초기화.
layer = keras.layers.Dense(
128,
kernel_initializer=keras.initializers.HeNormal(seed=42),
bias_initializer=keras.initializers.Zeros(),
)
사용 팁
- 문자열 이름(
"he_normal"등)으로 간단하게 지정하거나, 객체로 세부 파라미터(seed 등)를 조절할 수 있어요. keras.initializers.get(name)으로 이름과 객체를 상호 변환할 수 있어요.- 학습 재현성을 위해 seed를 고정하면 좋아요.