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
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
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
AARRR, Retention, Cohort 분석 알아보기
AARRR 분석 고객 여정을 5개 단계로 나눠, 데이터 기반 의사 결정을 하는 분석 프레임워크이다. Acquisition, Activation, Retention, Revenue, Referral의 단계로 구성되고, 단계의 앞 글자만 따서 AARRR이라고 부른다. 각 단계의 특성은 다음과 같다. Acquisition(획득, 유입) 유저를 어떤 방식으로 유입시키고, 획득할 수 있는 지 고민한다. 획득을 위해선 광고가 필요하다. 다음과 같은 지표들이 고려된다. CAC(Customer Acquisition Cost) : 한 명의 고객을 확보하기 위해, 지출할 금액 DAU, MAU : 일간/월간 활성 유저 수 신규 방문자 수 Activation(활성화) 유입된 유저가 제품, 서비스의 주요 기능을 경험할 수 있도..
2022.08.26
no image
[짧] Odds(오즈)와 Logit(로짓) 알아보기
Odds(오즈) 실패 비율(확률) 대비 성공 비율(확률)을 의미한다. 수식으로 나타내면 다음과 같다. $odds = \frac{p}{1-p}$ 오즈를 활용하면 [0, 1] 사이의 확률 값을 [0, ∞]로 매핑할 수 있다. 확률이 0.5 일 때 오즈 값은 1이기 때문에, 1 값을 경계로 성공, 실패 여부 등을 표현할 수 있다. Logit(로짓) 오즈에 로그를 취한 것이다. 수식으로 나타내면 다음과 같다. $L = ln \frac {p}{1-p}$ 로짓을 활용하면 확률 값을 [-∞, ∞]로 매핑할 수 있다. 확률이 0.5일 때 로짓 값은 0이기 때문에, 0 값을 경계로 성공, 실패 여부 등을 표현할 수 있다.
2022.08.19
no image
Feature Engineering 방법과 효과
Combining(Cross columns) columns를 결합해서 새로운 column 생성 조합에 사용되는 column에 unique한 값이 너무 많다면 단순히 경우의 수 나열과 똑같아져 의미가 없어짐 따라서 unique한 값이 적은 column끼리 묶어서 새로운 columns를 만들도록 하자 → 새로운 특성을 발견 가능 wide&deep에서 활용 Categorifying 0 ~ n - 1까지의 category로 변경 latent vector를 얻는 딥러닝에서 많이 활용 기존 column에 hashing으로 str 값이 입력된 경우 category(int)로 변경하면 데이터를 줄일 수 있음 자주 등장하지 않는 category를 그대로 사용한다면 overfitting이 발생! 자주 등장하지 않는 cat..
2022.07.11
no image
Dot-product Attention과 Scaling 필요성
Intro Attention Is All You Need 논문에선 $Q$와 $K$ 벡터의 유사도를 0 ~ 1 사이의 확률 값으로 정규화하기 위해서 Dot-product Attention를 사용한다. 이때, Dot-product Attention을 그대로 사용하지 않고 $K$벡터의 차원 값인 $d_k$를 활용하여 scaling된 형태로 사용한다. $$Attention(Q, K, V) = softmax(\frac{QK^{T}}{\sqrt d_k})V$$ scaling의 근거는 논문에서 언급되며 다음과 같다. $d_k$가 커지면 $QK^{T}$ 값이 커진다. $QK^{T}$ 값이 커지면 softmax 함수의 gradient vanishing이 발생한다. scaling을 통해서 gradient vanishing..
2022.06.14