Deep Learning 11

퍼셉트론(Perceptron)

1. 퍼셉트론(Perceptron) 초기의 인경신공망 모형이고 퍼셉트론이 동작하는 방식은 다음과 같다. 각 노드의 가중치와 입력치를 곱한 것을 모두 합한 값이 활성함수에 의해 판단되는데, 그 값이 임계치(보통 0)보다 크면 뉴런이 활성화되고 결과값으로 1을 출력한다. 뉴런이 활성화되지 않으면 결과값으로 -1을 출력한다. $ \Sigma_{i}^{n}{w_{i}x_{i}} \geq \theta \rightarrow y = 1 $ $ \Sigma_{i}^{n}{w_{i}x_{i}} < \theta \rightarrow y = 0 $ y 값이 threshold 인 $ \theta $ 을 기준으로 0, 1로 분류한다. $ b $(bias) 로 표기할 때도 있다. $ \Sigma_{i}^{n}{w_{i}x_{i}..

Deep Learning 2022.05.06

[Books] 밑바닥부터 시작하는 딥러닝 1 시작하기

밑바닥부터 시작하는 딥러닝1을 리뷰합니다. 밑바닥부터 시작하는 딥러닝(이하 밑시딥)1은 파이썬을 시작하고, 딥러닝에 관심을 가졌다면 필수적으로 읽고 가야하는 책이라고 생각한다. 밑시딥 시리즈는 딥러닝 패키지를 사용하지 않고 딥러닝을 밑바닥 구현부터 시작하기 때문에 딥러닝의 구조를 하나하나 파악할 수 있는 아주 좋은 책이다. 이 글에서는 밑시딥1을 읽고 지극히 개인적으로 중요하다고 생각하는 부분을 정리할 것이기 때문에 일부 내용이 빠져있을수도 있다. 밑시딥1은 밑바닥부터 구현하는 것을 목표로 두기 때문에 외부 라이브러리를 최소한만 사용한다. (numpy, matplotlib은 예외적으로 사용한다.) 기본적인 산술 연산 및 자료 구조와 같은 내용(1장)은 여기 코드를 참고하길 바라며, 본 글에서는 넘어가고,..

[Bayesian] Gaussian process

edwith 최성준님의 강의를 참고했다. Gaussian process 왜 우리는 가우시안 분포를 사용할까? 가우시안 분포는 $\sigma$와 $\mu$ 두가지 변수만 알면 분포를 찾을 수 있기 때문이다. 그리고 중심극한정리(CLT)가 성립하기 때문에 가장 많이 사용한다고 할 수 있다. 가우시안 분포는 다음과 같이 표현한다. univariate Gaussian distribution $f(x) = {1 \over \sqrt{2 \pi \sigma}} exp(-{1 \over 2}(x-\mu)^2) $ central limit theorem : Let $X_{1}, X_{2}, ...$ be independent and identically distributed with $\mathbb{E}(X_{i}) ..

[CS231N] spatial localization and object detection

Localization - Localization as regression - Overfeat 본 강의에서는 위 내용들을 다루어볼 것이다. Computer Vision Tasks Computer vision Tasks는 크게 4가지로 나눌 수 있다. 이미지상의 하나의 물체에 대해서 어떤 클래스에 속하는지 찾아주는 것을 Classification, classification 뿐만 아니라 물체의 위치정보를 바운딩 박스를 이용해 나타내주는 것을 Localization, 한 이미지 내에서 다양한 물체들의 클래스와 위치를 찾아주는 것을 Object Detection, 이미지 상에서 해당 물체와 배경을 인식해 물체의 영역만을 찾아주는 것을 Instance Segmentation이라고 부른다. Classificati..

[CS231N] Optimization의 종류 - SGD부터 Adam까지

Contents Mini-batch SGD 1. Sample a batch of data 2. Forward prop it through the graph, get loss 3. Backprop to calculate the gradients 4. Update the parameters using the gradient 이런 경우에는 몇천만개의 데이터들을 learning rate($\eta$) 하나로 고정을 시키고 최적화를 시키는 것이 과연 좋은 것인가? 라는 물음을 할 수 있다. 아래와 같은 SGD의 약점은 시작을 해서 flatten 지점에서 넘어가지 못하고 local minimum에 빠져버린다. Momentum GD와 Momentum의 다른점은 어떤 것인가? gradient descent의 경우 $ ..

[Bayesian] Bayesian Deep Learning - Random Process

본 자료는 edwith 최성준님이 강의하신 Bayesian Deep Learning 강의를 참고하였다. 핵심 키워드 $Random\ process,\ Realization\ , 브라운운동(Brownian\ motion),\ Mean,\ Covariance,\ Kernel\ function,\ Stationariy $ Random Process random process는 random variable의 확장판이라고 생각하면 된다. random variable 에서 sampling을 할 때 가우시안 분포에서는 하나 씩 도출되지만 멀티 가우시안, GAN에서 사용하는 여러 차원의 가우시안, 무한차원의 가우시안 분포를 정의하기 위해 random process를 사용한다. random process를 함수들의 공간..

[Optimization] Gradient Descent

경사법 ( 경사 하강법 ) 신경망에서 최적의 매개변수를 학습 시에 찾아야 한다. 최적이란 손실 함수가 최솟값이 될 때의 매개변수 값이다. 하지만 매개변수의 공간이 광대하여 최솟값을 찾는데에 있어 어려움이 있기 때문에 경사하강법을 사용하여 최솟값을 찾으려고 한다. 하지만 그 기울기가 가리키는 곳에 정말 함수의 최솟값이 있는지 보장할 수 없다(안장점). 실제로 복잡한 함수에서는 기울기가 가리키는 방향에 최솟값이 없는 경우가 대부분이다. 경사법은 현 위치에서 기울어진 방향으로 일정 거리만큼 이동하는 것을 말한다. 그런 다음 이동한 곳에서 다시 기울기를 구하고, 또 기울어진 방향으로 나아가기를 반복한다. 이 방법은 특히 신경망 학습에 많이 사용된다. $x_{0} = x_{0} - \eta {\partial f ..

[CS231N] Neural Network Back-propagation

Backpropagation 이 왜 Neaural Network에서 중요할까? Backpropagation 은 어떤 함수의 gradient를 계산하는 방식이다. chain rule를 recursively( 재귀적으로 ) 적용을 하고, 이러한 계산 방식이 computational 하다고 할 수 있다. backpropagation을 하는 가장 주된 목적은 parameter를 updata하기 위함이다. parameter를 update 하면서 가장 최적의 parameter를 찾는 것이 궁극적인 목적이기 때문이다. 부수적으로는 학습한 NN을 시각화하고 해석하기 위함이다. NN 이라는 것은 하나의 함수라고 지칭할 수 있다. 만약 SVM을 이라면 convex optimization을 활용하여 단 한 번의 optimu..

[CS231N] INTROTUCTION

이 파트에서는 cs231n의 자료를 가지고 소개를 해볼 예정이다. cs231n에는 deep learning 을 이용하여 vision 분야에 접근하는 내용을 다루고 있다. visual recognition에는 image, 3D modeling, Grouping, segmentation 의 내용이 있지만 CS231n에서는 image classification에 중점을 두고 강의를 진행한다. 이렇게 이미지를 Local한 지역에 물체를 탐지하는 것을 Object Detection 이라고 하며, 그런 Object가 무엇인지 어떤 행동을 취하는지 Caption을 달아주는 것을 image Captioning 이라고 한다. 이 강의는 image에 대해 상세하게 다룰 예정이다. Vision 분야는 이미지를 탐지하고 분석..

[NLP] INTRODUCTION

NLP를 활용할 수 있는 분야에 대해서 공부해보는 파트이다. 자연어 처리를 활용할 수 있는 사례 자연어 처리는 질문에 대한 응답을 얻기 위하여 사용 음성을 인식하여 음성을 다른 언어로 바꿔주는 번역 및 소리로 변형(파파고, 구글 번역기, 아프리카TV 도네이션 등) image understanding : 이미지를 보여주고 그 이미지에 대해 질응 Linguistic structure : 문장이 주어졌을 경우 알맞은 단어를 찾는 경우 단어에 대해서 분석을 하려면 단어들을 숫자들의 vector로 변형해주어야 한다. 주로 one hot vector로 변형을 해준다. 하지만 one hot vector 에는 여러가지 문제점이 존재한다. Sparsity : 굉장히 정보가 적다. Orthgonal representati..

반응형