더북(TheBook)

solver = 'liblinear'로 초기화한 LogisticRegression 객체를 다중 클래스 데이터셋에 적용하면 OvR(One-versus-Rest) 방식을 사용합니다. 따라서 첫 번째 절편은 클래스 1을 클래스 2·3과 구분하는 모델에 속한 것입니다. 두 번째는 클래스 2를 클래스 1·3과 구분하는 모델의 절편입니다. 세 번째는 클래스 3을 클래스 1·2와 구분하는 모델의 절편입니다.

>>> lr.coef_
array([[ 1.24567209,   0.18072301,   0.74682115,  -1.16438451,   0.       ,
         0.        ,   1.1595535 ,   0.        ,   0.        ,   0.       ,
         0.        ,   0.55864751,   2.50891241],
       [-1.53644846,  -0.38769843,  -0.99485417,   0.36489012,  -0.05989298,
         0.        ,   0.66853184,   0.        ,   0.        ,  -1.93460212,
         1.23246414,   0.        ,  -2.23212696],
       [ 0.1355558 ,   0.16880291,   0.35718019,   0.        ,   0.        ,
         0.        ,  -2.43768478,   0.        ,   0.        ,   1.5635432 ,
        -0.81834553,  -0.4930494 ,   0.        ]])

lr.coef_ 속성에 있는 가중치는 클래스마다 벡터 하나씩 세 개의 행이 있는 가중치 배열입니다. 각 행은 13개의 가중치를 가집니다. 각 가중치와 13차원의 Wine 데이터셋의 특성을 곱해 최종 입력을 계산합니다.

Note ≡ 사이킷런 추정기의 가중치와 절편 참조하기


사이킷런에서 intercept_는 w0에 해당하며 coef_에 있는 값은 j > 0인 wj입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.