더북(TheBook)

3.3.3 아달린 구현을 로지스틱 회귀 알고리즘으로 변경

로지스틱 회귀를 구현하려면 2장 아달린 구현에서 손실 함수 L을 새로운 손실 함수로 바꾸기만 하면 됩니다.

이 함수로 에포크마다 모든 훈련 샘플을 분류하는 손실을 계산합니다. 선형 활성화 함수를 시그모이드 활성화로 바꾸어야 합니다. 아달린 코드에 이런 변경 사항을 반영하면 로지스틱 회귀 모델을 얻을 수 있습니다. 다음은 완전 배치 경사 하강법을 구현한 코드입니다(확률적 경사 하강법 버전에도 동일한 변경을 적용할 수 있습니다).

class LogisticRegressionGD:
    """경사 하강법을 사용한 로지스틱 회귀 분류기

    매개변수
    ------------
    eta : float
      학습률 (0.0과 1.0 사이)
    n_iter : int
      훈련 데이터셋 반복 횟수
    random_state : int
      가중치 무작위 초기화를 위한 난수 생성기 시드
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.