본문 바로가기

AI

(23)
Regularization 2 - Dropout regularization Dropout regularization은 매 반복마다 특정 확률로 랜덤하게 unit을 제거하는 방식이다 간단한 네트워크를 만들어 정보를 골고루 보내주니까 feature가 분산되어 overfitting이 방지된다 이랬던 기존의 layer를 랜덤하게 50퍼센트만 선택하여 사용하는 방법이다 dropout은 training시에만 적용하고 test시에는 적용하지 않는다 따라서 이 방법을 구현할때 그대로 사용한다면 test를 진행할 때 scaling이 필요하다 이를 방지하기 위한 방법이 inverted dropout이다 inverted dropout은 input과 weight을 곱하기 전에 unit을 얼마나 남길것인지 정한 keep_prob를 곱해준다 1 2 3 4 keep_prob = 0.8 d = np.ran..
Regularization 1 - L1,L2 regularization 과적합을 막는 regularization 기법 train error와 test error의 차이, variance를 줄일 수 있다 Logistic Regression에서의 regularization 기존의 loss function인 $ J(w,b) = \frac{1}{m}\sum_{i=1}^{m}L(\hat y^{(i)},y^{(i)}) $를 아래와 같이 바꿀 수 있다 $$ J(w,b) = \frac{1}{m}\sum_{i=1}^{m}L(\hat y^{(i)},y^{(i)}) + \frac{\lambda }{2m}\left \| w \right \| ^2_2+ \frac{\lambda }{2m}b^2$$ 이렇게 loss function을 바꾼 것을 $ L_2 $ regularizatoin를 적용했다고 한..
Activation Functions Neural Network 개념은 인공지능 수업때 수학적으로 더 자세히 공부했어서 이번에는 수학적인 것보다 특징을 중심으로 공부해보려고 한다 수식 복습! tunsi-niley.tistory.com/53 Neural Networks 봐도 봐도 헷갈리는 뉴럴네트워크 식의 index가 매번 헷갈린다 sigmoid function을 사용하는 neural networks의 objective function (loss function)을 정의하고 derivative를 구해보려고 한다 먼저 sigmoid funct.. tunsi-niley.tistory.com - sigmoid activation function 중 제일 기초적으로 쓰이는 function $ \frac{1}{1+e^{-z}} $ $ g'(z) = g..
Logistic Regression 딥러닝 수업 들으면서 배운 내용을 정리하면서 추가로 공부도 해보려고 한다 - Binary Classification input feature vector를 가지고 0 또는 1(binary)의 결과를 갖는 output을 만들어내는 과정 이때 m개의 training example은 $ \{(x^{(1)}, y^{(1)}),(x^{(2)}, y^{(2)}),...,(x^{(m)}, y^{(m)})\} $처럼 나타낸다 이러한 m개의 example을 전부 합하여 하나의 Matrix로 취급하면 더 빠른 계산이 가능하다 $$ X \in \mathbb{R}^{n_x \times m} $$ $$ Y \in \mathbb{R}^{1 \times m} $$ - Logistic Regression x가 주어졌을 때 $ \ha..
[Kaggle] Titanic Competition 타이타닉 생존자 예측하기 예전에 해보다가 정리 못하고 남겨둔 notebook을 다시 열어보았다 분명 정리해둔줄 알았는데 필요해서 찾아보니까 없어서 이번 기회에 다시 정리! 리더보드 보면 점수 1 나온 사람들이 너무 많아 목표를 어느정도로 잡아야하나 어려웠는데 discussion을 보면 85~90% 이상의 정확도를 가진 사람들은 cheating일 것이라는 의견이 대부분이라 80%로 목표를 잡고 데이터 분석을 시작해보았다 train data는 아래와 같다 찾아야 할 값은 Survived 즉 해당 승객이 살았는지 죽었는지이다 처음에 감이 안잡혀서 다양한 그래프를 만들어보았다 나이에 따른 Survived의 분포 지금 생각하니 단순한 violinplot 보다는 살아남은 사람의 비율을 찾는 것이 더 좋았을 것 같다 부모나 자식의 숫자인데 ..
Neural Networks 봐도 봐도 헷갈리는 뉴럴네트워크 식의 index가 매번 헷갈린다 sigmoid function을 사용하는 neural networks의 objective function (loss function)을 정의하고 derivative를 구해보려고 한다 먼저 sigmoid function의 정의는 다음과 같다 $$ \sigma (t) = {1 \over {1+exp(-t)}} $$ $ \sigma(t) $의 값이 1/2 이상이라면 class 1, 아니라면 class 0으로 구분한다 여기에 우리는 $ x \in \mathbb{R}^D $로 주어지는 input을 사용해야하니까 t 대신 $ w^Tx - b $를 넣어서 사용하자 b는 bias term인데 이 bias term을 없애고 homogenous equatio..
Fisher Discriminant Analysis FDA는 linear classifier의 종류로 데이터를 project 시켜 그 분산을 사용하여 적절한 boundary를 찾아내는 방법이다 먼저 데이터를 boundary에 project 시킨 것을 어떻게 나타내는지 알아보자 이렇게 두 벡터가 있을 때 w 벡터에 x 벡터를 투영시킨 위치는 $ w^Tx $로 나타낼 수 있다 두 벡터를 inner product 시킨다면 $ w \cdot x = || w || || x || cos \theta $이고 이 때 $ ||w|| $ 는 1이고 벡터 x를 w에 투영시킨 길이는 $ ||w|| cos\theta $이기 때문이다 이 방법을 사용하여 모든 N개의 데이터를 w 벡터에 투영시켰다고 생각한다면 그 위치들의 평균은 $ \hat{m} = {1 \over N} \sum_..
Online learning - Perceptron Algorithm 인공지능 수업에서 배운 내용에 추가로 공부한 내용을 정리를 해보려고 한다 perceptron convergence theorem $$ \sigma(t) = \begin{cases} 1, & \mbox{if }t>=0\\ -1, & \mbox{if }n