딥러닝 - 4

CYSSSSSSSSS·2023년 9월 5일
0

딥러닝

목록 보기
4/12

Hidden Layer

  • x->y 1층 구조가 아니라 x->y 사이에 hidden layer 를 추가하여 y를 가는과정이다
  • 중간에 다른 데이터를 만들겠다는 과정
  • 딥러닝이 스스로 히든 레이어를 유의미하게 만들었다
  • 특징 자동 추출기
  • 노드와 레이어 가 적을수록 좋다.

BatchNoramlization

  • Batch Normalization을 사용시 backpropagation 할 때 parameter의 scale에 영향을 받지 않게 되며, 따라서, learning rate를 크게 잡을 수 있게 되고 이는 빠른 학습을 가능하게 함.
  • Batch Normalization의 경우 자체적인 regularization 효과가 있음.
  • Activation 함수 적용전에 사용.
  • default = 32

Batch_size

  • Batch 크기는 모델 학습 중 parameter를 업데이트할 때 사용할 데이터 개수를 의미합니다.
  • 만약 데이터가 100 개고 20개씩 학습을 한다고 하면 batch size = 20 이다.

실습

데이터 준비

import pandas as pd
import tensorflow as tf
path = "https://raw.githubusercontent.com/blackdew/ml-tensorflow/master/data/csv/boston.csv"

data = pd.read_csv(path)
data.head()

x = data[['crim', 'zn', 'indus', 'chas', 'nox', 'rm', 'age', 'dis', 'rad', 'tax',
       'ptratio', 'b', 'lstat']]

y = data[['medv']]

모델 준비

X = tf.keras.Input(shape = [13])
H = tf.keras.layers.Dense(5 , activation = "swish")(X) # 히든 레이어 
Y = tf.keras.layers.Dense(1)(H)
model = tf.keras.Model(X,Y)
model.compile(loss = 'mse')

model.summary()

모델 학습

model.fit(x,y,epochs = 1000)

모델 평가

model.predict(x[:10])
profile
개발자 되고 싶어요

0개의 댓글