[논문 full 번역 + 이해를 위한 추가설명] Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

이미지
[] 안에는 의미를 명확히 하고자 원문 영어 표현이, () 안에는 원문에서 작성된 부연 설명이, <> 안에는 이해를 돕기 위해 번역자가 추가한 부연 설명이 작성되었습니다. Abstract 현존 최고의 (State-of-the-art, SOTA) object detection 네트워크 방법들은 물체의 위치를 가정하는 region proposal algorithm을 사용한다. SPPnet 그리고 Fast R-CNN과 같은 발전이 도입됨으로써 detection network의 실행시간이 감소되었다. 하지만, region proposal을 계산하기위한 연산에서는 여전히 시간이 많이 걸린다. 이 Faster R-CNN 연구에서는 Region Proposal Network (RPN) 방법을 도입한다. RPN은 detection network를 구성하는 convolutional layer들에서 추출된 image feature들을 공유하며, 이러한 특성은 region proposal 작업을 매우 빠르게 하였다. RPN은 fully-convolutional network로 구성되어있으며, 물체가 있을만한 영역들 (Region of Interest, RoIs)을 박스로 예측하고, 각 박스는 물체가 있을 예측된 확률값을 갖는다. RPN은 end-to-end 방식으로 훈련되어, 가능한 정확하게 물체가 있을만한 영역을 제안하고, 이 영역들은 Fast R-CNN 네트워크에서 사용되어, 최종 예측인 bounding box로 표시된 물체의 위치와 그 물체의 class를 산출한다. RPN과 Fast R-CNN을 번갈아 가며 최적화하는 방법을 사용하면, RPN과 Fast R-CNN은 convolutional feature들을 공유하며 훈련될 수 있다. VGG-16 모형을 기반으로 했을 때, 우리의 Faster R-CNN 방법은 GPU에서 동작할 때, 모든 단계를 처리하는 기준으로, 5fps 를 달성하였다. 이러한 속도 뿐만 아니라, object detection 의 accuracy...

[논문 full 번역 + 이해를 위한 추가설명] GTP-1, Improving Language Understanding by Generative Pre-Training

이미지
Abstract 자연어 [natural language] 이해는, 텍스트의 함의 [textual entailment], 질문에 대한 답변, 의미론적 유사성 [semantic similarity] 평가, 문서 분류와 같이 넓고 다양한 작업과 관련된다. 레이블링 되지 않은 텍스트 말뭉치 데이터는 많이 존재하는 반면, 학습을 위한 레이블링된 텍스트 데이터는 부족하다. 이러한 상황은 위와 같은 다양한 작업을 위해 모형을 훈련하는 것을 어렵게 한다. 위와 같은 작업에 대하여, 먼저 텍스트를 생성할 수 있는 언어 모델을 레이블링 되지 않은 다양한 텍스트 말뭉치 데이터로 사전학습하고, 이 사전 학습된 모형을 특정 작업에 상응하도록 레이블링된 텍스트 데이터로 fine tuning 함으로써 큰 성능향상을 달성할 수 있다는 점을 입증했다. 이전의 접근법과 다르게, 우리는, fine-tuning 시에, 특정 작업에 적합하도록 입력을 변환하는 방법을 사용했으며, 이러한 접근법은 모형의 구조를 최소한으로 변경하면서 사전학습된 모형의 언어이해를 특정작업에 효율적으로 전달할 수 있게 했다. 자연어 이해에 관한 다양한 benchmark 데이터를 사용하여 우리 방법이 효율적임을 입증했다. 우리가 개발한 특정작업에 의존적이지 않은 일반적인 모형 (사전학습된 GPT) 조차, 특정 작업을 위해 설계되고 훈련된 방식의 모형보다 높은 성능을 보였고, 12개의 작업 종류 중 9개의 작업에서 현존 최고 성능 [SOTA, State Of The Art]를 달성하였다. 구체적으로, 상식 추론[common reasoning] (Stories Cloze Test) 에서 8.9%, 질문답변 (RACE)에서 5.7%, 텍스트 함의 (MultiNLI)에서 1.5%의 향상을 달성하였다. 1 Introduction 자연어처리 분야에서 supervised learning 방법 사용 시 레이블링된 데이터에 의존하게 되는데, 이러한 의존성에서 탈피하려면, 레이블링이 없는 텍스트로부터 효과적으로 학습하는 능력을 갖는것이 중요...

딥러닝 모델의 매개변수 최적화, optimizers, 확률적 경사 하강법 (SGD, stochastic gradient descent), 모멘텀 (momentum), 네스테로프 모멘텀 (NAG, nesterov accelerated gradient), AdaGrad (Adaptive Gradient algorithm), Adam (Adaptive moment estimation), RMSProp (Root mean square prop)

이미지
1. 딥러닝 모델의 매개변수 최적화 - 딥러닝 모델에는 학습가능한 가중치 (trainable weight) 및 편향 (trainable bias) 가 존재한다. 전이학습 (transfer learning) 등의 이유로 가중치들의 변화 (업데이트)를 고정시키기도 하지만, 일반적으로 딥러닝 모델 훈련이라 함은 손실함수의 출력값이 작아지도록 이러한 가중치들을 조정하는 것이다. - 손실함수의 값이 작아지도록 만들기 위해서는 방향성이 필요한데, 여기에 기울기 (미분)이 사용된다. - 손실함수에서 기울기를 구하면서 가중치를 업데이트하는 다양한 종류의 알고리즘이 있으며, 확률적 경사 하강법과 같은 초기 버전의 최적화 알고리즘에서 단점을 보완하는 과정에서 다양한 알고리즘이 개발된 것이다.  2. 딥러닝 모델 최적화 알고리즘 2-1. 확률적 경사 하강법 (SGD, stochastic gradient descent) - 확률적 경사 하강법에서는 손실 함수에서 기울기를 구하고, 이 기울기가 작아지는 방향으로 가중치를 업데이트해 나가며, 손실 함수의 출력값이 가장 작은 값이 될때까지 기울기를 구하고 가중치를 업데이트하는 과정을 반복한다. - 경사 하강법은 한번 학습할 때 모든 입력된 데이터에 대해 가중치를 조정한다. 이에 반해, 확률적 경사 하강법에서는 입력된 데이터 중에서 랜덤하게 선택된 일부 데이터에 대해 가중치를 조정하게 된다. 이로부터 최적화 속도가 향상되었지만, 최적점에 수렴할 확률은 그만큼 낮아지게 되었다. - 아래의 그림은 경사하강법과 확률적 경사하강법의 최적점으로의 탐색경로를 나타낸다. 출처 : https://twinw.tistory.com/247 - 가중치를 조정하여 손실 함수의 기울기가 작아지는 방향으로 이동하게 되면, 손실함수의 값이 작아지기는 하지만, 탐색 공간 내에서 전역 극소점 (global minimum)이 아니라 지역 극소점 (local minimum)으로 도달하게 되는 경우가 있으며, 이러한 상황의 발생은 예측하기 어려워 딥러...

과대적합방지 방법

1. 과대적합 (over-fitting) 개념 - 모델이 train data set의 패턴에 지나치게 특화되어, 새로운 데이터에 대한 예측에서는 오차가 커지는 현상이다. - 모델의 매개변수가 많은 경우, train data set의 양이 부족한 경우 등의 상황에서 발생한다. 2. 과대적합 발생 원인 - Train data set은 실제 데이터의 부분집합이다. 따라서, tran data set은 실제 데이터의 모든 패턴을 가지고 있지 않을 수 있다. 예를 들어, train data set이 실제 데이터에서 편향된 부분만을 가지고 있을 수 있다. 또한 오류가 포함된 값을 가지고 있을 수도 있다. 이러한 상황은 과대적합의 원인이 된다. - 모델이 과도하게 복잡한 경우, 변수가 지나치게 많은 경우도 과대적합의 원인이 된다. 3. 과대적합 방지 방법 3-1. Data augmentation - Train data set의 절대적 양이 부족한 경우나 편향된 패턴만을 가질 때, 데이터를 적절히 변형하는 처리를 하여, 데이터의 양을 늘리거나, 노이즈를 추가하는 등의 방법을 통해 의도적으로 데이터가 더 다양한 패턴을 가지게 할 수 있다. 3-2. 모델의 복잡도 감소 - 인공신경망의 복잡도는 hidden layer의 개수나 모델의 trainable parameter의 개수 (capacity) 등에 비례하므로, over-fitting이 발생할 때, 이들의 사이즈를 줄여 볼 수 있다. 3-3. 가중치 규제 (weight regularization) 적용 - 개별 가중치 값의 범위를 제한하여 훈련되는 모델이 간단해지도록 유도하는 방법이다. - 가중치 규체하는 항을 손실함수에 포함하여 모델을 훈련한다. - 가중치 규제의 종류에는 아래와 같은 것들이 있다. 1) L1 norm regularization (LASSO) - 손실함수식에 모든 가중치 $$$w$$$들의 절대값의 합계 항을 추가하고, 손실함수가 최소가 되도록 가중치를 조정 (훈련) 한다. - 아래와 같은 식으로 표현할 수 있다....

회귀 분석 (regression analysis) 001

1. 개념 - 독립변수와 종속변수 사이의 선형적인 관계를 모델링한다. 그로부터 하나 또는 그 이상의 독립변수들이 종속변수에 미치는 영향을 분석한다. 또한 추정된 회귀모형에서, 회귀계수 및 독립변수에 주어진 값을 통해 종속변수를 예측하는 역할을 한다. 2. 회귀 모형의 가정 - 회귀 모형을 만들기 위해서는 선형성, 독립성, 등분산성, 비상관성, 정규성의 5개 가정이 성립되어야한다. 그렇지 않으면, 정상적인 회귀모형이 생성되지 않는다.   1) 선형성 : 독립변수와 종속변수의 관계가 선형적이어야 한다.   2) 독립성 : 단순선형회귀모형에서는 잔차와 독립변수의 값이 서로 독립적이어야한다. 다중선형회귀모형에서는 독립변수 간에 상관성이 없이 독립적이어야한다.   3) 등분산성 : 독립변수와 무관하게 잔차의 분산은 일정해야한다. 즉, 잔차는 고르게 분포되어야한다.   4) 비상관성 : 관측치와 잔차는 서로 상관이 없어야한다. 잔차간에 서로 독립이면 비상관성이 있다고 볼 수 있다.   5) 정규성 : 잔차의 분포는 정규분포를 따라야한다. 시각적으로는 Q-Q plot 을 통해 잔차의 정규성을 검정할 수 있고, 통계적 방법으로는 샤피로-윌크 검정이나 콜모고로프-스미르노프 검정을 통해 정규분포를 따르는지 확인 할 수 있다. 3. 회귀 모형 검증 - 회귀계수 추정, 변수선택 등을 통해 최종적인 회귀모형을 선택했다면, 해당 모형이 적절한지 확인이 필요하다. - 회귀 모형 검증을 위해 아래의 항목에 대하여 확인한다.   1) 회귀 모형이 통계적으로 유의미 한지 확인한다.   - 유의수준 5% 하에서 F-통계량의 p-value 가 0.05보다 작으면 추정된 회귀 모형이 통계적으로 유의하다고 할 수 있다.   2) 회귀 계수들이 유의미한지 확인한다.   - 각 회귀계수의 t-통계량을 구하고 유의수준 5% 하에서 p-value 가 0.05보다 작으면 추정된 회귀 계수는 통계적으로 유의하다고 할 수 있다. ...

범주형 자료 분석 (categorical data analysis) 방법 003 : 단일표본 T-검정, 대응표본 T-검정, 독립표본 T-검정

1. T-검정 1-1. 개념 - T-검정은 독립변수 X가 범주형이고, 종속변수 Y가 수치형일 때, 두 집단의 평균을 비교하는 검정 방법이다. - T-검정은 두 집단 간 평균을 비교하는 모수적 통계 방법이며, 표본이 정규성, 등분산성, 독립성 등을 만족할 때 사용해야한다. 2. 단일표본 T-검정 (one sample T-test) - 모집단의 평균이 알려져 있는 경우, 표본 집단의 평균과 모집단의 평균이 같은지 검정한다. - 연구자가 측정한 집단의 수는 1개이고, 연구자가 측정한 집단의 평균과 기존의 연구에서 제시된 평균 수치와 비교하는 방법이다. - 검정통계량 t값은 아래와같이 산출한다. $$$t= \dfrac{\bar{X}-\mu}{\dfrac{s}{\sqrt{n}}}$$$ 3. 대응표본 T-검정 (paired sample T-test) - 동일한 집단이 있을 때, 이 집단을 특정 처치 하고, 처지 전과 처치 후의 차이를 알아보는데 사용하는 검정이다. - 표본이 하나, 독립변수가 1개일 때 사용되며, 대응표본 T-검정에 적합한 데이터는 아래와 같다. ID 다이어트약 복용 전 체중 1 66 2 54 3 68 ID 다이어트약 복용 후 체중 1 64 2 51 3 69 - 검정통계량 t값은 아래와같이 구한다. $$$t=\dfrac{\bar{d}-\mu}{\dfrac{s}{\sqrt{n}}}$$$ $$$\bar{d}$$$ : 두 표본집단 평균의 차이 $$$\mu$$$ : 두 모집단 평균의 차이 4. 독립표본 T-검정 (independent sample T-test) - 표본 2개가 서로 다른 모집단에서 추출되었을 때, 사용할 수 있는 분석 방법이다. - 독립된 두 집단의 평균 차이를 검정하는 ...

범주형 자료 분석 (categorical data analysis) 방법 002 : 승산 및 승산비 (odds ratio), 카이제곱 검정, 적합도 검정 (goodness of fit test), 독립성 검정 (test of independence), 동질성 검정 (test of homogeneity), 피셔의 정확 검정

1. 승산 및 승산비 (odds ratio) 1-1. 승산 - 승산이란 특정 사건이 발생할 확률 p를 발생하지 않을 확률 (1-p)로 나눈 값을 의미하며, 아래와 같이 표시될 수 있다. odds = $$$\dfrac{p}{1-p}$$$ - 축구경기에서 한국팀이 독일팀에 승리할 확률을 0.2라고 한다면, 한국팀의 승산은 $$$\dfrac{0.2}{0.8} = \dfrac{1}{4}$$$ 이며, 질 확률이 4배가 높다 라고 해석할 수 있다. 1-2. 승산비 - 승산비 (odds ratio)는 특정 조건에서의 성공 승산값을 다른 조건에서의 성공 승산값으로 나눈 값을 의미하며 아래와 같이 표시될 수 있다. 승산비 = $$$\dfrac{\text{승산1}}{\text{승산2}} = \dfrac{\text{관심집단의 승산}}{\text{비교집단의 승산}}$$$ - 아래표는 이전 포스팅 에서 살펴보았던 이원 분할표의 예시이다. 사건 발생 사건 미발생 합계 관심 집단 a b a+b 비교 집단 c d c+d 합계 a+c b+d a+b+c+d - 관심집단에서 특정 사건이 발생할 승산은 아래와 같이 구할 수 있다. 상대위험도와 수식이 다른점에 주의한다. 관심집단의 승산 = $$$\dfrac{\dfrac{a}{a+b}}{\dfrac{b}{a+b}} = \dfrac{a}{b}$$$ - 비교집단에서 특정 사건이 발생할 승산은 아래와 같이 구할 수 있다. 관심집단의 승산 = $$$\dfrac{\dfrac{c}{c+d}}{\dfrac{d}{c+d}} = \dfrac{c}{d}$$$ - 승산비는 아래와 같이 구할 수 있다. 승산비 = $$$\dfrac{\dfrac{a}{b}}{\dfrac{c}{d}} = \dfrac{ad}{bc}$$$ 2. 카이제곱 검정 (Chi-squared ...