Deep Learning

[스마트인재개발원] 딥러닝(Deep Learning) 과정, AND논리 실습

탄중이 2021. 7. 4. 19:05
반응형

딥러닝 과정

1. 요구사항 분석 / 데이터 수집 / 전처리

    - 학습이 가능한 데이터로 만들어주는 과정(결측치, 이상치 제거, 특성공학, 시각화 등)

2. 신경망 설계

    - 신경망을 설계 및 컴파일 하는 과정

       Sequential(), Dense(), Activation(), compile()

  • Sequential() : 신경망을 한층 한층 쌓는 기능
  • add() : 신경망 층을 추가
  • Dense() : 실제 신경망 층을 설정하는 기능
  • Activation() : 활성화 함수를 설정하는 기능     

* 활성화 함수 : 출력으로 나오게 하는 기준값(sigmoid, tanh, relu, softmax 등)

3. 딥러닝 학습

    - 딥러닝으로 학습하는 과정

       fit()

4. 예측

    - 평가와 예측을 하는 과정

       evaluate(), predict()

 

 

AND 논리 구현 실습

데이터 설정

X = [[0,0],[0,1],[1,0],[1,1]] # 특성데이터
y = [0,0,0,1] # 라벨데이터

 

딥러닝 모델 설정

# 신경망을 생성하는 함수
from tensorflow.keras.models import Sequential
# 퍼셉트론을 정의하는 함수
from tensorflow.keras.layers import Dense,Activation

model = Sequential()
model.add(Dense(units = 1, input_dim = 2))
model.add(Activation("sigmoid"))

model.summary()

Sequential() = 새로운 신경망 생성

* 신경망에 퍼셉트론 추가

- add() : 정의된 퍼셉트론을 신경망에 추가
- units : 출력 수(라벨 (y)의 수)
- input_dim : 입력 수 (특성(x)의 수) - 1차원으로 구성된 특성(특성의 수만을 설정할 때)

.summary() = 생성한 신경망의 구조를 확인

 

 

설계한 모델 컴파일 & 학습

model.compile(loss = "binary_crossentropy",
             optimizer = "adam",
             metrics = ["accuracy"])
             
model.fit(X,y,epochs=1000,batch_size=4)

<컴파일>

 loss : 손실함수의 종류를 설정
      1. 회귀분석 : mse(mean_squared Error)
      2. 이진분류 : binary_crossentropy
      3. 다진분류 : categorical_crossentropy
 optimizer : 경사하강법 종류를 설정
       - rmsprop, adam(많이 씀->잘나옴)
 metrics : 평가방법을 설정
       - 회귀분석 : metrics 파라미터 생략 -> 자동으로 오차로 평가
       - 분류분석 : acc나 accuracy를 설정 -> 정확도로 평가

 

<학습>

fit(특성데이터, 라벨데이터, epochs=학습반복수, batch_size = 학습에 사용할 데이터 수)

- compile하지 않고 다시 fit을 수행하면 w, b는 이전에 학습한 결과값을 그대로 사용한다.

  즉, 첫 번째 실행에서 1000번을 이미 돌렸다면, 그 이후의 값은 앞의 1000번에 이어서 학습함

 

평가

model.evaluate(X,y)

evaluate(특성데이터, 라벨데이터) : 반환값으로 오차와 정확도를 반환

 

예측

pred = model.predict(X)
pred

활성화함수로 sigmoid를 사용했기 때문에 확률값으로 출력
0.5이상이면 1, 이하이면 0으로 판단

 

www.smhrd.or.kr

 

스마트인재개발원

4차산업혁명시대를 선도하는 빅데이터, 인공지능, 사물인터넷 전문 '0원' 취업연계교육기관

www.smhrd.or.kr

 

반응형