히비스서커스의 블로그

[Concept] sparse group lasso 본문

Theory/Machine Learning

[Concept] sparse group lasso

HibisCircus 2022. 2. 21. 16:12
728x90

정규화 방법으로 알려진 lasso에도 여러가지 방법이 존재한다. 그 중 lasso, group lasso, sparse group lasso 순으로 하나씩 살펴보자.

 

 

lasso

 

일반적인 선형회귀식의 최소제곱법을 나타내보자. 샘플 수가 $n$, feature 수가 $p$일 때, response vector의 크기는 $n$ x $1$이고 feature들의 matrix는 $n$ x $p$, 회귀계수 벡터 $\beta$는 $p$ x $1$이 되어 다음과 같은 식으로 표기될 것이다.

일반적인 선형회귀를의 최소제곱법

이상적인 경우는 샘플 수 n이 feature 수 p 보다 충분히 큰 경우이다. 하지만 생물학 데이터의 경우는 p가 n보다 훨씬 더 큰 경우가 많아서 매우 곤란한 상황이 생긴다. 바로 차원의 저주(Curse of Dimensionality)에 의해 불필요한 데이터 공간이 많아지는 것이다. 이는 모델의 성능에도 좋지 않은 영향을 줄 수 있기 때문에 필요없다고 판단되는 feature들의 효과를 줄이거나 (Ridge 방식) 없애는 (LASSO 방식) 방법을 해주어 regularization(정규화)를 해주는 것이 좋다. 이와 같이 lasso의 방식은 각 feature들 간의 sparsity를 준 방법이다.

 

lasso를 통해 정규화를 해주는 식을 표현해보면 다음과 같다.

lasso 방식을 추가한 최소제곱법

 

group lasso

 

그런데 feature들을 뽑다보면 몇몇 feature들끼리는 근처에 있어 서로 비슷한 영향을 줄 수 있을 것이다. 이를 고려한다면 서로 비슷한 영향을 주는 feature들은 group화 하여 regularization을 해주는 방법이 있을 것이다. 이와 같이 feature들을 그룹화하여 그룹들의 sparsity를 준 것group lasso이다.

 

group lasso를 통해 정규화를 해주는 식을 표현해보면 다음과 같다.

group lasso 방식을 추가한 최소제곱법

이 식에서, $X^{(l)}$은 그룹 $l$의 예측변수에 있는 X의 부분행렬이고, $\beta^{(l)}$은 해당 그룹의 계수 벡터이며, $p_l$은 $\beta^{(l)}$의 길이이다. 여기서, 각 그룹의 크기가 1이면 정확히 lasso가 된다. 

 

 

sparse group lasso

group lasso는 sparse group 집합을 제공하지만, 만약 모델에 gourp이 포함되어 있으면 group의 모든 coefficient는 0이 아니게 될 것이다. 때때로 그룹들의 sparsity와 각 그룹들 내의 sparsity들을 주길 원하는데 이를 고려한 것이 sparse group lasso이다.

sparse group lasso 방식을 추가한 최소 제곱법

이 식에서 $\alpha \in [0, 1]$lasso와 group-lasso의 패널티의 convex combination이다. ($\alpha = 0$이면 group lasso, $\alpha = 1$이면 lasso 이다.) "groupwise sparsity"0이 아닌 계수가 하나 이상있는 그룹의 수, "within group sparsity" 0이 아닌 각 그룹 내 0 이 아닌 계수의 수, "overall sparsity"그룹화에 관계없이 0이 아닌 계수의 총 수를 나타낸다.

 

 

참조한 자료

https://www.tandfonline.com/doi/pdf/10.1080/10618600.2012.681250?needAccess=true 

 

-히비스서커스-

728x90