summary () (출력 모양, Param #)의 값을 이해하고 있습니까?
summary
기능 의 출력을 확인하고 있으며 인쇄 된 모든 값을 이해하지 못합니다.
예를 들어 다음과 같은 간단한 코드를 살펴보십시오.
x = [1, 2, 3, 4, 5]
y = [1.2, 1.8, 3.5, 3.7, 5.3]
model = Sequential()
model.add(Dense(10, input_dim=1, activation='relu'))
model.add(Dense(30, input_dim=1, activation='relu'))
model.add(Dense(10, input_dim=1, activation='relu'))
model.add(Dense(1))
model.summary()
출력 :
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
dense (Dense) (None, 10) 20
_________________________________________________________________
dense_1 (Dense) (None, 30) 330
_________________________________________________________________
dense_2 (Dense) (None, 10) 310
_________________________________________________________________
dense_3 (Dense) (None, 1) 11
=================================================================
Total params: 671
Trainable params: 671
Non-trainable params: 0
_________________________________________________________________
- 열 아래에 없음 값의 의미가있는 이유는 무엇
Output Shape
입니까? 여기서 None은 무엇을 의미합니까? - 요약에 없음이 표시되지 않는 네트워크는 무엇입니까?
Params #
칼럼 의 의미는 무엇입니까? 이 값은 어떻게 계산됩니까?
답변
None은 네트워크가 한 번에 하나 이상의 샘플을 입력 할 수 있음을 나타내는 자리 표시 자입니다. 없음은이 차원이 가변적임을 의미합니다. 케 라스 모델의 첫 번째 차원은 항상 배치 크기입니다. ... 그렇기 때문에 모델을 정의 할 때이 치수가 종종 무시됩니다. 예를 들어 input_shape = (100,200)을 정의 할 때 실제로는 배치 크기를 무시하고 "각 샘플"의 모양을 정의합니다.
None
고정 배치를 설정하면 표시되지 않습니다. 예를 들어 10 개의 이미지를 일괄 전송하면 모양은 (10, 64, 64, 3)이되고 25로 변경하면 (25, 64, 64, 3)들어 dense_1st 층 (10) (입력 값) + 10 (바이어스 값), PARAMS의 수는이 얻어진다 (20) 인
들면 dense_2nd 층 (제 층에서 뉴런에 대한 바이어스 값) (10) (입력 값) * 30 (두 번째 뉴런 층) + 30 : PARAMS의 수는이 얻어진다 (330) 인
들면 dense_3rd 층 (제 3 층에서 뉴런에 대한 바이어스 값) (30) (입력 값) * 10 (제 3 층에서 뉴런) + 10 : PARAMS의 수는이 얻어진다 (310) 인
들면 최종 층 (최종 레이어에서 뉴런에 대한 바이어스 값) (10) (입력 값) * 1 (제 뉴런 층) + 1 : PARAMS의 수는이 얻어진다 (11) 인
총 매개 변수 = 20 + 330 + 310 + 11 = 671