ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Shallow Neural Network
    Google ML Bootcamp/Neural Networks and DL 2023. 9. 6. 21:22
    728x90

    2. Nerual Network Representation

    Input layer - Hidden layer - Output layer

    각각 a[0], a[1], a[2]로 표현되는데 a노드 속에 w와 b가 포함되어 있다.

     

     

    3. Computing a Neural Network's Output

    z = w.T*x + b

    yhat = a = sigmoid(z)

    이 식을 기본으로 각 노드의 값을 지정할 수 있다.

     

     

    4. Vectorizing Across Multiple Examples

    A[1]의 수평 조사 : 훈련 예제 전체를 인덱싱 한다. 훈련 셀 스캔 -> 수평 스캔 시 첫 번째 부터 숨겨진 단위부터 움직임.

                                숨겨진 단위의 활성화까지 조사.

    A[1]의 수직 조사 : 다른 신경망의 노드 -> 수직 스캔 시 숨겨진 단위 번호에 대한 인덱

     

     

    5. Explanation for Vectorized implementation

     

     

    6. Activation Functions

     

    - 활성화 함수를 사용하면 다음 레이어에 대한 학습이 조금 더 쉬워진다.

    - 요즘은 sigmoid Function을 거의 사용하지 않는다. tanh 함수는 거의 항상 우수하다.

    - sigmoid와 tanh 함수의 단점 중 하나는 z가 매우 크거나 매우 작으면 함수의 기울기의 도함수가 매우 작아짐. -> 함수가 거의 0에 거의 가까워져서 기울기 하강 속도가 낮아짐.

    - 출력이 0, 1 값이고 이진 분류를 사용하는 경우, 출력층을 거의 사용하지 않는 경우 -> sigmoid function(거의 사용 X -> tanh 쓰는게 훨씬 좋음.)

    - 다른 모든 단위 값 or 정류된 선형단위 -> ReLU

    - 뭘 사용할지 잘 모를 경우 -> ReLU

     

     

    7. Why do you need Non-Linear Activation Functions?

    - 활성화함수의 역할은 결국 선형 함수를 만들어 내는 것이다. (a = wx + b)

    - g(x) = z는 회귀 문제에 대해 머신 러닝을 하고 있는 경우라 선형 함수를 사용한다.

    - 선형 함수를 사용하는 것은 일반적으로 출력층이고, 다른 곳들에서는 비선형함수인 활성화함수를 사용한다.

     

     

    8. Derivatives of Activation Functions

     

     

    9. Gradient Descent for Neural Networks

     

    10. Random Initialization

    - 일반적으로 가중치는 매우 작은 값으로 처리한다. (일반적으로 0.01) -> 깊은 신경망에서는 다른 숫자로 처리하는 것이 일반적.

    - 가중치가 너무 크면 활성화 값을 계산할 때 z값이 너무 크거나 작을 수 있다. 그래서 시그모이드 함수의 끝부분에 다다를 수 있어 학습속도가 매우 느릴 수 있다. 

     

    728x90

    'Google ML Bootcamp > Neural Networks and DL' 카테고리의 다른 글

    Deep Neural Network  (0) 2023.09.10
    Logistic Regression as Neural Network  (0) 2023.09.03
Designed by Tistory.