Google tensorflow certification 02
Google Tensorflow Certification 02
Category 1 - Basic 모델
Dense Layer(Fully Connected Layer, FC)
각 노드(Node, 혹은 neuron)가 완전하게 연결되어 있는 Layer
input_shape를 지정해주어야 한다.
실습(Simple Regression)
Step 1. Import
import numpy as np
import tensorflow as tf
from tensorflow.keras.layers import Dense
from tensorflow.keras.models import Sequential
Step 2. Preprocessing
# Category 1 - Basic 모델에서, 데이터의 전처리 과정은 필요없다.
# ndarray형식으로 데이터가 표현되어 있다.
xs = np.array([-1.0, 0.0, 1.0, 2.0, 3.0, 4.0], dtype=float)
ys = np.array([5.0, 6.0, 7.0, 8.0, 9.0, 10.0], dtype=float)
Step 3. Modeling
# Sequential modeling(4층)
# 모델명은 model
model = Sequential([
Dense(3, input_shape=[1]),
Dense(4),
Dense(4),
Dense(1),
])
# Dense layers Image
from IPython.display import Image
Image('https://cs231n.github.io/assets/nn1/neural_net2.jpeg')
주어진 데이터가 간단한데, 이렇게 복잡하게 4층으로 모델링 할 이유가 없다.
# 1층 Sequential model
model = Sequential([
Dense(1, input_shape=[1]),
])
Step 4. Compile
# optimizer(최적화는) = sgd(확률적 경사하강법 알고리즘을 사용하겠다.)
# loss(lossfunction은) = mse(Mean Squared Error함수를 사용하겠다.)
# >> 단순 회귀(regression)에서는 mse 사용
model.compile(optimizer='sgd', loss='mse')
Step 5. Fit
# model을 학습(fit)시키겠다.
#(features = xs, labels = ys, epochs(학습 횟수) = 1200, verbose(학습로그) = 0(출력안함))
model.fit(xs, ys, epochs=1200, verbose=0)
Step 6. Predict
# 모델에 10.0을 입력하면 어떤 값이 나올지 예측
model.predict([10.0])
댓글남기기