[1.4.] Deep Neural Networks
2022. 7. 2. 00:10
인공지능/DLS
Deep L-layer Neural Network [what is a deep neural network?] - logistic regression 은 매우 'shallow model' 이다 - layer 개수 셀 때 input layer 는 포함하지 않음 [notation] - $L = 4$ (레이어 개수) - $n^{[l]}$ (레이어 $l$에 있는 unit 개수) - $n^{[1]} = 5$, $n^{[2]} = 5$, $n^{[3]} = 3$, $n^{[4]} = n^{[L]} = 1$ - $n^{[0]} = n_{x} = 3$ - $a^{[l]} = g^{[l]}(z^{[l]})$ (레이어 $l$에 있는 activations) - $W^{[l]}$ = weights for $z[l]$ - i..
[1.3.] Shallow Neural Networks(2)
2022. 6. 27. 09:34
인공지능/DLS
Activation Functions sigmoid 함수가 아닌 다른 것으로 선택할 수 있음 시그모이드 함수 $\sigma(z^{[i]})$가 아닌 $g(z^{[i]})$를 사용할 수 있음 - sigmoid 함수 $a = \frac{1}{1+e^{-z}}$ : 0 ~ 1 - tahn 함수 $a = tanh(z) = \frac{e^{z}-e^{-z}}{e^{z}+e^{-z}}$ : -1 ~ 1 - tanh 함수는 시그모이드 함수를 shift 한 거 - 시그모이드 함수보다 나음 (데이터의 centre (평균)를 $0.5$가 아닌 $0$으로 잡게 되기 때문에 학습에 더 용이) - 마지막 레이어 제외하고는 시그모이드 거의 쓰지 않음 : 마지막 레이어의 출력은 이진 분류에서 0~1 사이가 되기 때문 - 레이어마다..
[1.3.] Shallow Neural Networks(1)
2022. 6. 26. 19:39
인공지능/DLS
Neural Networks Overview - Logistic Regression - $z$, $a$, 손실함수 $L$ - 신경망 - sigmoid unit 들을 쌓아서 이룰 수 있음 - 노드들 : $z$ 및 $a$ 와 같은 것으로 생각할 수 있음 *notation - $(i)$ : $(i)$번째 학습셋 데이터 - $[i]$ : $[i]$번째 레이어 Neural Network Representation "single hidden layer" - hidden? - 중간 노드들의 실제 값들은 관찰되지 않음 (학습셋에서 보이지 않음) - 기존에 $X$ 를 input feature 로 denote 했음 - input feature 들을 표현하는 또다른 방법으로서 : $a^{[0]} = X$ - 여기서 $a$는..
[1.2.] Neural Networks Basics - Python and Vectorization
2022. 6. 26. 14:51
인공지능/DLS
Vectorization Vectorization으로 for loop를 없애기! - Logistic Regression 에서는 $z = w^{T}x + b$ 를 계산해야 함 $$ w = \begin{bmatrix} : \\ : \\ : \end{bmatrix} ,\ x =\begin{bmatrix} : \\ : \\ :\end{bmatrix} $$ - $w \in R^{n_{x}}$, $x \in R^{n_{x}}$ - non-vectorized implementation z = 0 for i in range(n_x): z += w[i] * x[i] z += b - vectorized implementation --> 훨씬 빠름 z = np.dot(w, x) + b - GPU, CPU 모두 SIMD라는 ..
[1.2.] Neural Networks Basics - Logistic Regression as a neural network(3)
2022. 6. 26. 00:15
인공지능/DLS
Computation Graph $J(a, b, c) = 3(a+bc)$ 1. $ u = bc $ 2. $ v = a + u $ 3. $ J = 3v $ 그래프로 나타내면 최적화하고자 하는 명확한 출력값 (이 경우 $J$) 가 있다면 ... Logistic Regression 문제에서 $J$는 최소화하고자 하는 cost function - 왼쪽에서 오른쪽으로 $J$의 값을 계산할 수 있었음 - 미분을 계산할 때는 반대로 오른쪽에서 왼쪽으로 감 the computation graph organizes a computation with the black arrow, left-to-right computation Derivatives with a Computation Graph 여기에서 $\frac{dJ}{d..
[1.2.] Neural Networks Basics - Logistic Regression as a neural network(2)
2022. 6. 25. 23:42
인공지능/DLS
Derivatives 미적분을 직관적으로 이해하기! $a = 2$ 일 때, $f(a) = 6$ $a = 2.001$ 일 때, $f(a) = 6.003$ 밑변이 $0.001$ 이고, 높이가 $0.003$인 삼각형이 생긴다 따라서 $a=2$에서의 $f(a)$의 미분값은 $3$이다 (= $\frac{height}{width} = \frac{0.003}{0.001}$) 같은 원리로 $a=5$에서의 $f(a)$의 미분값 $3$이다 $ \frac{df(a)}{da} = \frac{d}{da}f(a) = 3$ 미분의 formal definition 에서는 0.001보다 훨씬 (거의 무한대로) 작은 값을 사용 위 함수는 $a$의 값과 상관없이 항상 같은 slope를 가진다 More Derivative Examples..
[1.2.] Neural Networks Basics - Logistic Regression as a neural network(1)
2022. 6. 24. 22:51
인공지능/DLS
Binary Classification - Logistic regression -> binary classification - output label = y - 컴퓨터에서 이미지를 저장할 때 세 개의 matrics 저장(RGB) - pixel intensity values 를 feature vector 로 변환 => pixel 값들을 unroll 해서 input feature vector x 로 변환 - 64x64 사이즈 이미지라면 64x64x3 = 12288 차원 - $n = n_{x} = 12288$ : input feature vector 의 차원 - feature vector x 로 나타내지는 이미지를 입력으로 받고, 그에 대해 0, 1을 예측 [Notation] - single training ..
[1.1.] What is a Neural Network?
2022. 6. 24. 07:46
인공지능/DLS
What is a Neural Network? - 집 크기에 대한 함수로 집 가격을 예측하는 함수를 학습(fit)하고자 함 - 일단은 선형회귀 분석을 할 수 있음 - 이때 집가격이 마이너스가 될 수 없다는 걸 알기 때문에 아래와 같이 선을 꺾음 - 위 함수를 아주 (가장) 간단한 신경망으로 생각할 수 있음 - 저 하나의 '뉴론'이 위 그래프의 함수를 나타냄 - 뉴론 : '집 크기'를 입력하여 선형 함수를 계산하고 예측된 가격을 출력 - 딥러닝에서 이렇게 생긴 함수는 자주 보게 될 것이다 - 더 큰 신경망은 이러한 개별 뉴론들을 가져다 쌓아서 형성된다 - 집 가격에 영향을 미치는 요소들을 자세히 살펴보며 더 큰 신경망 구성해보기 - 각 동그라미들은 ReLU나 다른 비선형 함수일 것 - x 는 네 개의 입력..