def activation(self, z):
"""로지스틱 시그모이드 활성화 계산"""
return 1. / (1. + np.exp(-np.clip(z, -250, 250)))
def predict(self, X):
"""단위 계단 함수를 사용하여 클래스 레이블을 반환합니다"""
return np.where(self.activation(self.net_input(X)) >= 0.5, 1, 0)
여기에서 직접 구현한 로지스틱 모델은 이진 분류 문제에만 적용할 수 있습니다.
Iris-setosa와 Iris-versicolor 붓꽃만 가지고 (클래스 0과 클래스 1) 로지스틱 회귀 구현이 작동하는지 확인해 보겠습니다.