1. Keras 소개
    1. [시작하기] Sequential 모델 가이드
    2. [시작하기] 함수형 API 가이드
    3. [시작하기] FAQ
    4. [모델] Keras의 모델
    5. [모델] 함수형 API
    6. [모델] Sequential
    7. [계층] Keras의 계층
    8. [계층] Core 계층
    9. [계층] 합성곱 계층
    10. [계층] 풀링 계층
    11. [계층] 부분적으로 연결된 계층
    12. [계층] 재발 계층
    13. [계층] 임베딩 계층
    14. [계층] Merge 계층
    15. [계층] 고급 활성화 계층
    16. [계층] 표준화 계층
    17. [계층] 노이즈 계층
    18. [계층] 계층 Wrappers
    19. [계층] 자신만의 Keras 계층 만들기
    20. [전처리] 시퀀스 전처리
    21. [전처리] 텍스트 전처리
    22. [전처리] 이미지 전처리
  2. Metrics
  3. 손실
  4. 최적화기
  5. 활성화
  6. Callbacks
  7. 데이터셋
  8. 애플리케이션
  9. 백엔드 1
  10. 백엔드 2
  11. 백엔드 3
  12. 백엔드 4
  13. 백엔드 5
  14. 초기화기
  15. 정규화기
  16. 제한
  17. 시각화
  18. Scikit-Learn API
  19. 유용한 도구

Dense [source]

keras.layers.core.Dense(units, activation=None, use_bias=True, kernel_initializer='glorot_uniform', bias_initializer='zeros', kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None, kernel_constraint=None, bias_constraint=None)

일반적인 연결 밀도가 높은 신경망 계층(Densely-connected NN layer)입니다.

Dense는 다음과 같은 작업을 구현합니다:output = activation(dot(input, kernel) + bias) 이 때 activation은 요소 단위의 활성화 함수로 activation 인수로 넘겨지고, kernel은 계층에 의해 만들어진 가중치의 행렬이며, bias는 계층에 의해 만들어진 편향 벡터입니다(use_biasTrue일 때만 적용할 수 있습니다).

예제

# as first layer in a sequential model:
model = Sequential()
model.add(Dense(32, input_shape=(16,)))
# now the model will take as input arrays of shape (*, 16)
# and output arrays of shape (*, 32)

# after the first layer, you don't need to specify
# the size of the input anymore:
model.add(Dense(32))

인수

입력 형태

다음과 같은 형태의 n차원 텐서 입니다: (batch_size, ..., input_dim).(batch_size, input_dim)과 같은 2차원 입력 형태로 가장 흔히 쓰입니다.

출력 형태

다음과 같은 형태의 n차원 텐서 입니다: (batch_size, ..., units). 예를 들어, (batch_size, input_dim)과 같은 형태의 2차원 입력에 대해 (batch_size, units)과 같은 2차원 형태로 출력합니다.


Activation [source]

keras.layers.core.Activation(activation)

출력에 대해 활성화 함수를 적용합니다.

인수

입력 형태

임의입니다. 이 계층을 모델의 첫번째 계층으로 쓰고자 할 때에는 키워드 인수 input_shape(샘플 축을 포함하지 않는 정수 튜플)을 사용하세요.

출력 형태

입력과 동일한 형태 입니다.


Dropout [source]

keras.layers.core.Dropout(rate, noise_shape=None, seed=None)

입력에 대해 탈락(dropout)을 적용시킵니다.

탈락은 훈련 중 무작위로 각 업데이트마다 단위 입력을 일정 'rate'로 0으로 설정하여 과적합(overfitting)을 방지하도록 도움을 줍니다.

인수

참고


Flatten [source]

keras.layers.core.Flatten()

입력을 평탄화 합니다. batch의 크기에는 영향을 미치지 않습니다.

예제

model = Sequential()
model.add(Convolution2D(64, 3, 3,
            border_mode='same',
            input_shape=(3, 32, 32)))
# now: model.output_shape == (None, 64, 32, 32)

model.add(Flatten())
# now: model.output_shape == (None, 65536)

Reshape [source]

keras.layers.core.Reshape(target_shape)

출력의 형태를 다른 형태로 바꾸어 줍니다.

인수

입력 형태

임의이나 입력 형태의 모든 차원을 반드시 고정되어 있어야 합니다. 이 계층을 모델의 첫번째 계층으로 쓰고자 할 때에는 키워드 인수 input_shape(batch 축을 포함하지 않는 정수 튜플)을 사용하세요.

출력 형태

(batch_size,) + target_shape 의 형태입니다.

예제

# as first layer in a Sequential model
model = Sequential()
model.add(Reshape((3, 4), input_shape=(12,)))
# now: model.output_shape == (None, 3, 4)
# note: `None` is the batch dimension

# as intermediate layer in a Sequential model
model.add(Reshape((6, 2)))
# now: model.output_shape == (None, 6, 2)

# also supports shape inference using `-1` as dimension
model.add(Reshape((-1, 2, 2)))
# now: model.output_shape == (None, 3, 2, 2)

Permute [source]

keras.layers.core.Permute(dims)

주어진 패턴에 따라 입력의 차원을 교환합니다.

예를 들어 RNN과 CNN을 서로 연결하거나 할 때 유용합니다.

예제

model = Sequential()
model.add(Permute((2, 1), input_shape=(10, 64)))
# now: model.output_shape == (None, 64, 10)
# note: `None` is the batch dimension

인수

입력 형태

임의입니다. 이 계층을 모델의 첫번째 계층으로 쓰고자 할 때에는 키워드 인수 input_shape(샘플 축을 포함하지 않는 정수 튜플)을 사용하세요.

출력 형태

입력과 동일한 형태입니다만, 차원은 지정한 교환 패턴에 따라서 변경됩니다.