결과를 만들기 위해서는 Hidden layer의 모든 값들을 입력으로 하는 하나의 Perceptron이 필요하다.
위의 그림 중 왼쪽을 보면 13개의 입력(input layer) 5개의 출력(hidden layer), 오른쪽을 보면5개의 입력(hidden layer) 1개의 출력(output layer) -> 딥러닝, 인공 지능망의 토대라고 볼 수 있다.
< 보스턴 집값 예측 + hidden layer >
모델의 구조(회귀모델)를 만드는 코드에 위의 hidden layer 추가해서 살펴보면, hidden layer의 활성화 함수(activation)는 'swish'를 사용해주고 X, H, Y는 순서대로 앞의 것을 입력으로 받아 연결시키면 되는 것이다. 양적 데이터에서 loss는 'mse' 주의
X = tf.keras.layers.Input(shape=[13])
H = tf.keras.layers.Dense(5, activation=‘swish’)(X)
Y = tf.keras.layers.Dense(1)(H)
model = tf.keras.models.Model(X, Y)
model.compile(loss='mse')
< 아이리스 품종 분류 + hidden layer >
모델의 구조(분류모델)를 만드는 코드에 위의 hidden layer 추가해서 살펴보면, 마지막 Y에서 활성화 함수(actication)는 'softmax'를 사용해준다. 이유는 데이터를 바꿔줘야 하기 때문이고 X,H,H,H,Y의 순서대로 앞 것을 입력으로 받아 연결시키면 되는 것이다. 범주형 데이터에서 loss는 'categorical_crossentropy' 주의
X = tf.keras.layers.Input(shape=[4])
H = tf.keras.layers.Dense(8, activation=‘swish’)(X)
H = tf.keras.layers.Dense(8, activation=‘swish’)(H)
H = tf.keras.layers.Dense(8, activation=‘swish’)(H)
Y = tf.keras.layers.Dense(3, activation=‘softmax’)(H)