Deep Learning

Deep Learning

[DL] 최적화 - Stochastic Gradient Descent, SGD Momentum, overshooting, Nesterov Momentum, AdaGrad, RMSProp, Adam

확률적 경사 하강법 확률적 경사 하강법은 손실 함수의 곡면에서 경사가 가장 가파른 곳으로 내려가다 보면 언젠가 가장 낮은 지점에 도달한다는 가정으로 만들어졌다. 그러나 가정이 단순하기 때문에 다양한 상황에 잘 대처하지 못하고 학습 속도도 느리기 때문에 성능에 한계가 있다. 고정된 학습률 학습률이란 최적화할 때 한 걸음의 폭을 결정하는 스텝의 크기를 말하며 학습 속도를 결정한다. 확률적 경사 하강법은 지정된 학습률을 사용하는 알고리즘이기 때문에 경험적으로 학습률을 조정할 수밖에 없으며, 이는 효율적이지 않고 최적의 학습률을 정하기 어렵다. 또한 학습률이 고정되어 있기 때문에 최적화가 비효율적으로 진행된다. 학습률이 변화할 수 있다면 처음에는 큰 폭으로 이동하다가 최적해에 가까워질수록 이동 폭을 줄여서 안정..

Deep Learning

[DL] 신경망 학습 - model parameter, optimization, loss function, cost function, Gradient Descent, chain rule, backpropagation, minibatch, cross-entropy

신경망 학습의 의미 신경망에는 입력 데이터와 타깃 데이터가 제공될 뿐, 추론을 위한 규칙은 제공되지 않는다. 신경망을 `학습(learning)`한다는 것은 이 규칙을 학습 데이터를 이용해서 스스로 찾는 것이다. 이는 학습 데이터에 기대하는 정답이 들어있기 때문에 가능하다. 신경망에 입력 데이터가 들어왔을 때 어떤 출력 데이터를 만들어야 할지를 정하는 규칙은 함수적 매핑 관계로 표현된다. 가중 합산과 활성 함수가 연결되어 뉴런을 구성하고, 뉴런이 모여 계층을 구성하며, 계층이 쌓여서 신경망의 계층 구조가 정의된다. 이러한 복잡한 신경망의 계층 구조 자체가 신경망의 함수적 매핑 관계를 표현하는 것이다. 신경망의 학습 과정에서 함수적 매핑 관계를 표현하는 전체 계층 구조를 찾아야 하는 것은 아니다. 신경망의 ..

Deep Learning

[DL] 오차역전파법(backpropagation) - forward propagation, backward propagation, chain rule, affine transformation, softmax with cross entropy error, gradient check

신경망 학습에서 가중치 매개변수에 대한 손실 함수의 기울기는 수치 미분을 사용해 계산했다. 수치 미분은 단순하고 구현하기도 쉽지만 계산 시간이 오래 걸린다는 단점이 있다. 이에 비해 `오차역전파법(backpropagation)`은 가중치 매개변수의 기울기를 효율적으로 계산한다. 계산 그래프 `계산 그래프(computational graph)`는 계산 과정을 그래프로 나타낸 것이다. 이는 복수의 `노드(node)`와 에지(edge)`로 표현되며, 노드 사이의 직선을 에지라고 한다. 계산 그래프의 문제풀이는 다음과 같은 흐름으로 진행된다. 계산 그래프를 구성한다. 그래프에서 계산을 왼쪽에서 오른쪽으로 진행한다. 여기서 2번째 단계인 그래프에서 계산을 왼쪽에서 오른쪽으로 진행하는 단계를 `순전파(forward..

Deep Learning

[DL] 순방향 신경망 - Activation Function(ReLU, Leaky ReLU, Sigmoid, Softmax), Gradient Saturation(Vanishing)

순방향 신경망의 구조와 설계 항목 현대에 들어와서 다층 퍼셉트론은 `순방향 신경망`, 퍼셉트론은 `인공 뉴런(Artificial Neuron)`이라 불린다. 순방향 신경망의 데이터는 서로 독립되어 있다고 가정하며, 데이터가 한 방향으로 전달되는 `순뱡향(Feedforward)` 연결만을 갖는 구조로 되어 있으며, 퍼셉트론의 연산과 같은 기본 뉴런 연산으로 실행된다. 추가적으로, CNN은 공간 데이터를 가정하며, RNN은 순환 데이터를 가정한다. 순방향 신경망의 구조 순방향 신경망은 다음과 같이 뉴런들이 모여 `계층(Layer)`를 이루고 계층이 쌓여 전체 신경망을 이루는 구조로 되어 있다. 순방향 신경망의 계층 구조 순방향 신경망의 계층 구조는 입력 계층, 은닉 계층, 출력 계층으로 구분된다. 대부분의 ..

Deep Learning

[DL] 딥러닝 개요

딥러닝이란? 인공지능, 머신러닝과 딥러닝 정의 `인공지능(Artificial Intelligence)` : 문제를 인식하고 해결하는 능력인 지능을 구현하는 기술 ` 머신러닝(Machine Learning)` : 기계 스스로 학습하여 지능을 습득하는 기술 학습 알고리즘을 통해 데이터에 숨겨진 정보와 규칙을 기계 스스로 습득하고 그 결과를 이용해서 새로운 것을 예측하고 추론하는 기술 `딥러닝(Deep Learning)` : 생체 신경망을 모방해서 만든 `인공 신경망(Artifical Neural Network, ANN)`을 이용하여 복잡한 데이터 관계를 찾아내는 머신러닝 기법 인공 신경망이 `깊은 신경망(Deep Neural Network)`으로 발전하여 딥러닝이라는 이름 명명 머신러닝과 딥러닝의 관계 전통..

Deep Learning

[DL] 신경망 학습 - Loss Function, Cross Entropy Error, SSE, 편미분, 수치 미분, Stochastic Gradient Descent

데이터에서 학습한다! `학습`이란, 훈련 데이터로부터 가중치 매개변수의 최적값을 자동으로 획득하는 것을 뜻한다. 학습의 목표는 `손실 함수`의 결괏값을 가장 작게 만드는 가중치 매개변수를 찾는 것이다. 신경망의 특징은 데이터를 보고 학습할 수 있다는 점이다. 데이터에서 학습한다는 것은 가중치 매개변수의 값을 데이터를 보고 자동으로 결정한다는 뜻이다. 데이터 주도 학습 `기계 학습`은 데이터에서 답을 찾고, 데이터에서 패턴을 발견하고, 데이터로 이야기를 만든다. 이러한 기계학습에서는 사람의 개입을 최소화하고 수집한 데이터로부터 패턴을 찾으려 시도한다. 게다가 신경망은 기존 기계학습에서 사용하던 방법보다 사람의 개입을 더욱 배제할 수 있게 해주는 중요한 특징을 가지고 있다. 신경망은 이미지를 '있는 그대로'..

Deep Learning

[DL] 신경망(NeuralNet) - Activation Function, Sigmoid, Step, ReLU, Softmax

퍼셉트론에서 신경망으로 활성화 함수의 등장 편향을 명시한 퍼셉트론과 그에 따른 수식은 다음과 같다. 이 퍼셉트론은 x1, x2, 1이라는 3개의 신호가 뉴런에 입력되어, 각 신호에 가중치를 곱한 후 다음 뉴런에 전달된다. 다음 뉴런에서는 이 신호들의 값을 더하여 그 합이 0을 넘으면 1을, 그렇지 않으면 0을 출력한다. 편향의 입력 신호는 항상 1이기 때문에 다른 뉴런들과 구별했다. 수식에서는 조건 분기의 동작, 즉 0을 넘으면 1을 출력하고 0을 넘지 않으면 0을 출력하는 동작을 하나의 함수 h(x)로 나타냈다. 입력 신호의 총합이 h(x)라는 함수를 거쳐 변환되어 그 변환된 값이 y의 출력이 된다. 이러한 함수를 `활성화 함수(activation function)`이라고 하며 이는 입력 신호의 총합이..

Deep Learning

[DL] 퍼셉트론(Perceptron) - AND 게이트, NAND 게이트, OR 게이트, XOR 게이트 , 다층 퍼셉트론

퍼셉트론이란? `퍼셉트론(perceptron)`은 다수의 신호를 입력으로 받아 하나의 신호를 출력한다. 퍼셉트론의 신호는 '신호가 흐른다'를 의미하는 1, '신호가 흐르지 않는다'를 의미하는 0의 두 가지 값을 가질 수 있다. 입력 신호가 뉴런에 보내질 때는 각각 고유한 가중치가 곱해짐(W1X1, W2X2) 뉴런에서 보내온 신호의 총합이 정해진 한계를 넘어설 때만 1을 출력되며 '뉴런이 활성화한다'라고 표현 정해진 한계를 `임계값`이라고 하며 세타로 표현 퍼셉트론은 복수의 입력 신호 각각에 고유한 가중치를 부여하며, 가중치는 각 신호가 결과에 주는 영향력을 조절하는 요소로 작용 가중치가 클수록 해당 신호가 그만큼 더 중요함을 의미 단순한 논리 회로 AND 게이트 `AND 게이트`는 입력이 둘이고 출력은 ..

Deep Learning

[Paper Review] 액티브 러닝을 활용한 반도체 웨이퍼 신규 불량 패턴 검출

논문 정보 액티브 러닝을 활용한 반도체 웨이퍼 신규불량 패턴 검출(황성진, 김성범) 0.Abstract CNN-based deep learning models을 통해 정확하게 웨이퍼 빈 맵(WBM)의 결함 패턴을 분류하기 위해선 정확한 결함 패턴의 label이 반드시 있어야 한다. 하지만 현실에선 엔지니어가 모든 데이터에 label을 다는 것은 많은 시간과 노력이 필요하다. 현재 CNN-based 연구들은 실제 상황에서 빈번하게 발생하는 새로운 결함 패턴을 찾지 못하는 한계점을 가지고 있다. 본 논문에서는 Active Learning에 기반한 새로운 결함 패턴 탐지 방법을 제안한다. 또한 모델 훈련 단계에서 사용되지 않은 새로운 결함 패턴을 빠르게 탐지하는 새로운 프레임워크 또한 제안한다. 본 방식의 유..

Deep Learning

[Active Learning] Active Learning이란?

Definition of Active Learning Active Learning의 핵심 개념은 모델이 배우고 싶은, 호기심이 가는 데이터를 선택하여 적은 학습으로도 좋은 성과를 내게 한다는 것이다. Active Learning은 annotation effort를 줄일 수 있는 지도학습 방법이다. Concepts of Active Learning 현실에서는 레이블이 되어있는 데이터가 부족하며, 별도로 이를 구하기 위해선 시간과 비용이 발생한다. Unlabeled Pool에서 사전 학습된 모델이 Inference를 통해 annotation 작업을 수행한다. 하지만 사전 학습된 모델은 적은 데이터로 학습했기 때문에 성능이 낮으며, annotation의 품질을 보장할 수 없다. 모델이 uncertain한 데이..

Junyeong Son
'Deep Learning' 카테고리의 글 목록 (2 Page)