본문 바로가기
Deep learning/0x01-dictionary

dictionary][ model( 모델 정의 )-동영상 필기 자료

by SpeeDr00t 2020. 1. 7.
반응형

그 동안 체득한 습관으로는
deep learning 정확하게 이해하기 힘들다..

입력을 넣으면 처리되고 결과 나온다는
기본적인 생각이다

처리(규칙) 대해서는 사람이 코딩하고 입력도 사람이 넣고
그 계산된 결과를 컴퓨터가 내보낸다.

그 틀에서
생각하려니
이해가 안간 듯..

deep learning는
입력과 결과는 사람이 넣고

그걸 보고(입력과 결과를 보고)
컴퓨터는 처리(규칙) or 코딩를 예측하라가 맞는 듯

아래는 유튜브 동영상 필기 자료..

6줄이라..
생각하기에 좋은 코드다..

원본 링크 : https://www.youtube.com/watch?v=p_RdUAOaKgM&feature=youtu.be&fbclid=IwAR3Vgn6ZwVAUfD_A1v9W6DeyknyXcpAd0I4Rll-d_qTHd2lqgfwLyunoH8w

dictionary][ model( 모델 정의 )

모델 정의

학습된 뉴럴 네트워크를 모델이라고 부름

ex) model = keras.Sequential([keras.layers.Dense(utits=1,input_shape=[1])])

 

하나의 레이어로 이루어 져 있다.

[keras.layers.Dense(units=1,input_shape=[1])]

여기서 keras.layers.Dense가 레이어다

units=1은 이 레이어가 하나의 뉴런으로 구성

하나의 입력을 하는데 이 예제에서는 x값을 입력하고 뉴럴 네트워크가 y값 예측하게 한다.

그래서 input_shape가 하나의 값을 가진다.

input_shape=[1]

 

* 모델 컴파일

모델 컴파일 할 때 2개의 함수 필요

model.compile( optimizer='sgd',loss='mean_squared_error')

머신러닝은 숫자들의 관계에 대해 예측하면서 동작한다

1) loss function  or 손실함수

예) y = 5 * x + 5 예측했다면 , 

    그 이후 loss function를 이용하여 이 예측이 얼마나 맞았는지 계산 한다.

2) optimizer 함수

 새로운 수식을 예측한다.

예측을 향상 시킨다

model.fit( xs , ys, epochs=500) # 이 예제를 500번 반복한다

 

데이타 자체는 x와 y값은 배열로 주어지고

그 값을 서로 맞추는 과정은 fit함수를 통해 이루어 진다.

말 그대로 x를 y에 fit 한다고 하고 500회 반복한다.

xs = np.arrary([ -1.0 , 0.0 , 1.0 , 2.0 , 3.0 , 4.0 ] , dtype=float )

ys = np.arrary([ -3.0 , -1.0 , 1.0 , 3.0 , 5.0 , 7.0 ] , dtype=float )

model.fit( xs , ys, epochs=500)

 

이 과정이 끝나면 학습된 모델을 갖는다.

아래 코드는 x가 10일때 y값 예측 하는 코드다.

print( model.predict([10.0]))

 

 

테스트 해보기 : https://speedr00t.tistory.com/772?category=853027

 

model( 모델 정의 )-동영상 필기 자료 ][ 테스트 해보기: Y = 2X -1

model( 모델 정의 )-동영상 필기 자료 ][ 테스트 해보기 필기내용 : https://speedr00t.tistory.com/770 dictionary][ model( 모델 정의 )-동영상 필기 자료 그 동안 체득한 습관으로는 deep learning 정확하게 이..

speedr00t.tistory.com

 

반응형

'Deep learning > 0x01-dictionary' 카테고리의 다른 글

dictionary][ SGD ( Stochastic Gradient Descent )  (0) 2020.01.07