no image
경사 하강법이 Gradient의 반대 방향으로 진행되는 이유
Intro Gradient descent(경사 하강법)은 최적화 기법 중 하나로, 손실 함수를 최소화하기 위해서 사용된다. 경사 하강법에선 효과적으로 $\theta$ 를 변화시키기 위해, 가장 가파른 경사 방향으로 $\theta$ 를 업데이트한다. 이때, 가장 가파른 경사일 때의 방향이 Gradient 방향 일 때 이므로, $\theta$ 는 Gradient의 반대 방향으로 업데이트된다. 누군가 나에게 경사 하강법을 간단하게 설명하라고 하면, 아마도 위에 적은 것처럼 말할 거 같다. 근데 저 설명을 듣는 입장에선, 아마도 왜 가장 가파른 경사일 때의 방향이 Gradient 방향이고, 왜 Gradient의 반대 방향으로 $\theta$ 가 업데이트 돼야 하는 지에 대해서 의문이 생길 거 같다. 그래서 위와..
2023.01.31
no image
Hypothesis Test(가설 검정)의 오류와 Critical value(임계값) 사이 관계 확인하기 Feat. 검정력, 유의 수준
검정의 오류? 가설 검정 과정에서 가설은 2 가지이고, 이는 Null Hypothesis(귀무 가설 : $H_0$)과 Alternative Hypothesis(대립 가설 : $H_A$)이다. $H_A$의 이름이 대립(대안)인 것은 $H_0$와의 관계 때문이다. 가설 검정의 중심은 $H_0$이다. 검정 결과에 따라 $H_0$를 기각하거나, 기각하지 못하냐 딱 2 가지이다. 이에 따라 $H_A$가 채택될 수도, 아닐 수도 있다. $H_0$을 중심으로 생각해보면, 가설 검정 시 발생할 수 있는 오류는 2 가지 이다. 제 1종 오류 : $H_0$가 참인데도, $H_0$을 기각한 경우 제 2종 오류 : $H_0$가 거짓인데도, $H_0$을 기각하지 않은 경우 = $H_A$가 참인데도, $H_A$을 채택하지 않은 ..
2023.01.30
no image
Hypothesis Test(가설 검정)과 Null hypothesis(귀무 가설), p - value 사이 관계 알아보기
Hypothesis Test(가설 검정)? Population(모집단)에 대한 어떤 특성(가설)을 주장하고 싶어도, 그 모집단을 직접 확인할 수 없는 상황이 대부분이다. 따라서 이럴 땐 Sample(표본)을 참고할 수밖에 없다. 하지만 표본은 모집단으로부터 랜덤하게 얻은 것이기에, 그 주장이 타당한 지 항상 고민해야 한다. 표본으로 모집단의 특성을 주장(가설)할 땐, 그 가설이 얼마나 타당한 지 확인하기 위한 작업이 필요하고 이를 가설 검정이라고 한다. 이때 가설 검정의 타당성은 p - value를 사용해 확률의 개념으로 표현한다. 검정의 타당성을 확률로 접근하는 이유는, 표본이란 모집단 입장에선 랜덤하게 추출된 것 중 하나에 불과하기 때문이다. 표본으로 인해 모집단에 대한 잘못된 판단을 내리지 않으려면..
2023.01.30
no image
Convolution을 Neural Networks에서 활용 하기
Summary CNN이 이미지 데이터에 많이 활용되는 이유는, 이미지 데이터의 stationarity, locality 가정에 적합한 연산인 Convolution을 활용하기 때문이다. Convolution은 기존 MLP와는 다른 방식으로 연산을 하기 때문에, Neural Networks 관점으론 Sparse interaction이고, 동시에 Parameter sharing이 있다고 말한다. 새로운 단어가 갑자기 나와서 '기존의 Convolution과 다른가?' 라고 생각이 들 수 있지만, 해당 용어들은 단순히 Neural Networks가 기준이 되면서 새롭게 붙여진 단어일 뿐이다. 커널 단위로 연산하기 때문에 Sparse 하다는 것이고, 커널의 가중치를 공유하기 때문에 Sharing이 있다고 말하는 것..
2022.12.30
no image
Convolution과 Stationarity, Locality 가정
Summary CNN(Convolutional Neural Networks)이 이미지 처리에 많이 활용되는 이유는, 이미지 데이터에 적합하도록 설계 됐기 때문이다. 실제로 CNN은 이미지 데이터의 stationarity of statistics, locality of pixel dependencies 가정을 고려하여 설계 됐다. Locality 가정은 커널 단위 연산을 통해, Stationarity 가정은 연산 과정에 Convolution(Cross-correlation)을 사용하여 만족한다. 결국 CNN의 이름에도 적혀 있는 Convolution 연산이 이미지와 너무 잘 맞아서, 성능도 잘 나오고 많이 활용되는 것이다. 이 포스팅에선 Convolution 연산이 무엇인지는 다루지 않고, 왜 Convol..
2022.12.27
no image
Statistical Estimator(통계적 추정량)의 특성 알아보기
Estimator(추정량)이란? 추정량은 추정과 관련된 값이다. 그래서 우선 추정에 대해서 간단하게 알아보자. 추정은 표본을 활용해 모집단의 특성을 나타내는 값인, 모수(Parameter)를 추측하는 과정을 의미한다. 추정엔 특정한 값을 추측하는 점 추정과, 점 추정의 변동을 고려해 모수를 포함할 가능성이 높은 구간을 추측하는 구간 추정이 있다. 이러한 추정엔 결국 기준이 되는 값이 필요한데, 그것을 바로 추정량이라고 부른다. 추정은 다양한 추정량 중, 어떤 추정량을 활용할 것인지가 중요하고, 이에 따라 바람직한 추정량의 특성 또한 존재한다. 일반적으로 사용하면 좋은, 바람직한 추정량의 특성으로 Unbiasedness(불편성), Efficiency(효율성), Consistency(일치성), Suffici..
2022.11.30
no image
[논문 정리] Zero-Shot Text-to-Image Generation (2)
Data Collection 우선, 12억 파라미터로 이뤄진 초기 모델을 구성했다. 이때 330만 개 텍스트-이미지 쌍을 가진 Conceptual Captions 데이터셋을 활용했다. 최종 모델은 파라미터 수가 120억 개로, 이에 따라 Coceptual Captions 외에도 YFCC100M, 위키 피디아에서 얻은 텍스트-이미지 쌍을 추가해 데이터셋을 구성했다. 최종적으로 2억 5천만개의 text-image 쌍을 활용했다. 이때, 데이터 구성 과정에 활용한 필터링 방식은 Conceptual Captions에서 사용한 방식과 동일하다. Conceptual Captions에서 어떤 방식을 활용 했는 지는 아래 링크를 통해서 확인할 수 있다. [논문 리뷰] Conceptual Captions: A Clean..
2022.10.11
no image
Gradient Checkpointing이란
GitHub - cybertronai/gradient-checkpointing: Make huge neural nets fit in memory Make huge neural nets fit in memory. Contribute to cybertronai/gradient-checkpointing development by creating an account on GitHub. github.com 모든 사진과, 글은 위의 링크를 참조했습니다. Graident checkpointing? GPU 사용 시 사용 가능한 메모리를 늘리기 위한 방법 중 하나이다. 이를 통해 연산 시간이 늘어나는 대신, 메모리 사용량 이 줄어든다. 아래 그래프는 ResNet 모델에서 최대 메모리 사용량을 비교했는데 blocks(N)..
2022.10.08
no image
[논문 리뷰] Conceptual Captions: A Cleaned, Hypernymed, Image Alt-text DatasetFor Automatic Image Captioning
MS-COCO의 문제점 COCO 데이터셋엔 그림은 없고, 사진만 있는 등 다양성이 떨어진다. 따라서 데이터가 high correlation을 가지게 된다. 이로인해 아이 사진에 대한 예측 결과를 확인하면 보이지 않는 사물에 대한 문장이 나오는 문제가 발생한다. 또한 파라미터 수가 점점 많아지는 모델들이 사용하기엔 데이터 수가 충분치 않다. Conceptual Captions 330만 개의 다양한 이미지-텍스트 데이터셋을 만들기 위해, 인터넷에서 얻을 수 있는 정보를 활용해 직접 새로 만들었다. MS-COCO의 문제점을 인식하고 만든 데이터라서 결과는 당연히 더 좋다. in front of a building, cake 등의 관련 없는 정보가 더 이상 안나온다. 마지막에 서류든 캐릭터를 COCO 데이터에선..
2022.10.08
no image
Affine 변환과 딥러닝
변환 → 공간을 변형 직선과 평형성을 그대로 유지하는 변환을 Affine 변환이라고 한다. Affine 변환의 일반식은 `Wx + b` 이며, 이는 Linear Transformation에 Traslation 항이 추가된 형태이다. Affine 변환의 전 - 후 과정을 시각화하면 다음과 같다. 위 그림을 보면 변환에 의해 격자 전체가 함께 이동한다는 것을 확인할 수 있다. 이처럼 변환에 의해 모든 점이 영향을 받아 이동하는 것은, 공간(Space)이 변형되는 것처럼 생각할 수 있다. 이 경우 변환의 역할이 공간을 변형시키는 것이라고 해도 무방할 것이다. 멀쩡한 공간을 굳이 변형하는 이유는 당연하게도 어떤 이득이 있기 때문이다. 실제로 변환에 의해 새롭게 얻은 공간에선, 기존에 풀지 못했던 문제를 해결할 ..
2022.09.25
no image
Ensemble(앙상블) 기법 이해하기
Ensemble(앙상블)? 단일 모델 예측에 대한 Bias(편향), Variance(분산) 사이 관계를 표현하면 위 그림과 같다. 편향과 분산이 모두 낮은 이상적인 경우는 아쉽게도 불가능하다. 둘은 Trade-off 관계이기 때문이다. 하지만 단일 모델을 여러 개 모아 예측에 활용하면 편향과 분산 모두가 낮아지도록 예측을 개선할 수 있다. 이처럼 단일 모델을 여러 개 모아 예측을 개선하는 방법을 앙상블이라고 한다. 앙상블 구성 시 중요 고려 사항은 '개별 모델들이 충분한 수준의 Diversity를 만족하는 지'와 개별 모델의 결과를 '어떤 방식으로 합칠 것인지'이다. Diversity : Implicit vs Explicit 완전히 동일한 가중치를 가지는 모델을 여러개 묶는 경우, Diversity가 만..
2022.09.02
no image
[논문 리뷰] TabNet: Attentive Interpretable Tabular Learning
Abstract TabNet은 정형 데이터에 적합하도록 설계된 딥러닝 모델이다. TabNet은 Sequential Attention을 통해서 각 decision step 마다 feature(특성)을 선택하고, 이를 통해 트리 모델과 유사한 결정 경계를 가지게 된다. 이는 TabNet이 정형 데이터에 잘 동작할 수 있도록 해주는 inductive bias면서, 동시에 결과 해석과 효과적 학습도 가능하도록 도와준다. TabNet의 우수성은 여러 벤치 마크에서 기록한 높은 성능을 통해서 확인할 수 있다. 정형 데이터에 흔한 결측치도 self-supervised learning을 통해서 어느 정도 처리할 수 있다는 점도 특징이다. Introduction 이미지, 텍스트 등의 데이터엔 딥러닝이 많이 사용되는 반면..
2022.08.27