Loading...
2021. 12. 17. 21:41

L1(Lasso)과 L2 regularization(Ridge)에 대한 고찰

1) L1(절댓값 함수)과 L2(제곱 함수) regularization 항을 그래프로 그려보면 weight parameter중 하나가 0으로 가까이 가면 L2 regularization은 나머지 하나도 0으로 가까이 가는 듯 하지만 0은 아닌데 L1 regularization은 확실하게 0으로 가려고 한다 결론은 L1 regularization은 많은 weight를 0으로 만들어낼 수있는데 L2 regularization은 0에 가까운 weight들을 만들어낸다. 2) 이 사실을 다른 그림을 통해 직관적으로 살펴보면 2개의 paramete $W _{1},W _{2}$가 있다고 가정하고 2가지 regularization에 대하여 regularization 항이 최소한 $s$이내에 있어야한다고 하면 $$\l..

L1 regularization(Lasso)과 L2 regularization(Ridge)

L1 regularization과 L2 regularization은 모형의 복잡도인 parameter에 penalty를 주는 방식이다. L1, L2라는 용어에서 알 수 있다시피 loss function 공부하면서 짐작할 수 있는데 L1 regularization은 L1 norm인 절댓값 합을 말하는 것 일 테고 Lasso라고도 부른다. L2 regularization은 제곱 합을 말하는 것이고 Ridge라고도 부른다. 기본적으로 regularization하면 생각나는 것은 $$cost = basic \; loss + regularization$$ regularization term을 구성하는 방법은 neural network의 parameter를 이용한다. 그 parameter가 $W$라고 한다면 $$\..

회귀문제에서 사용하는 decision tree

분류 문제에만 사용하는 것처럼 보이지만 decision tree는 regression 문제에도 사용이 가능합니다. 불순도를 측정하는 기준으로 분산을 사용할 수 있습니다. 분산이라는 것이 연속형 데이터 같은 경우 분산이 크면 넓게 퍼져 있어 그만큼 불순하다? 불확실하다?라는 느낌을 받을 수 있다고 생각합니다. 분산의 감소량이 최대가 되는 feature를 선택하여 tree를 생성해나갑니다. 예를 들어서 다음과 같은 data set이 주어졌다고 합시다. 현재 상태에서 target의 표준편차는 얼마일까요? 계산하면 9.32가 나온다고 합니다. 이제 구분하고자하는 feature를 선택하는데 예를 들어 outlook을 먼저 선택합시다. outlook을 선택하면서 표준편차가 얼마나 감소하는지 계산하려면 outlook..

2021. 12. 15. 00:04

regularization이란 무엇일까?

1. regularization이 무엇일까? 누군가가 regularization이 뭐에요?라고 물어보면 뭐라고 대답해야할까 쉽지 않다.. 당장 대답해보라하면 그냥 과적합을 방지하기 위해 loss function에 항을 추가하는 일? 여기서 조금 더 떠들어본다면 모형이 train data를 너무 잘 배워서 loss를 빠르게 줄이는 것을 막고자 penalty로 항을 추가한다. 그러면 loss를 빠르게 줄이는 것을 막아 과적합을 방지하게 된다 위키피디아의 정의를 가져와봤다 regularization is the process of adding information in order to solve an ill-posed problem or to prevent overfitting. ‘과적합을 방지하기 위해 무언..

2021. 12. 14. 23:41

연속형 변수를 사용한 decision tree

보통 범주형 변수만 사용가능한 것처럼 decision tree를 설명하지만 decision tree의 구분 feature로 연속형 변수도 사용가능합니다. 방법은 여러 가지가 있는데 하나를 예로 들어 설명하자면 예시 데이터가 위와 같다고 합시다. 구분하고자하는 feature 여기서는 예를 들어 income을 정렬합니다. 그러면 label이 바뀌는 지점이 생기는데 label이 바뀌는 지점의 평균점을 기준값으로 잡습니다. 각각 59.7, 64.9, 84.9 세 지점이 생기는데 각 지점에서 information gain이 최대가 되는 기준지점을 찾습니다. gini 계수를 이용해 계산하면 income이 59.7보다 클때와 작을때로 구분하는 것이 최대라고 합니다. lotsize도 똑같은 방식으로 기준값을 잡고 각 ..

decision tree의 불순도를 측정하는 기준

불순도를 측정하는 기준으로 entropy를 사용했지만 gini 계수라는 것도 있습니다. 그 외에도 카이제곱 통계량이나 분산의 감소량같은 것도 사용하며 이에 따라 C4.5, CART, CHAID 등 다양한 decision tree 알고리즘이 있습니다. 지금까지 설명한 알고리즘은 ID3라는 기본적인 알고리즘이었습니다. gini 계수는 다음과 같이 정의합니다. $$1- \sum _{i=1} ^{c} p _{i}^{2} =G(U)$$ 이 식을 그림1을 예로 들어 설명하면 빨간색 데이터는 6개이고 파란색 데이터는 4개인데 $p _{1} = \frac{6}{10} ,p _{2} = \frac{4}{10}$으로 $G(U)=0.48$ 반면 entropy로 계산한 불순도는 $H(U)=0.972$