본문 바로가기

Python (Linux)46

34. Python - 4장 연습문제 이 책의 좋은 점 또 하나는 연습문제입니다.뭔가 생각하게 해보고 복습할 수 밖에 없게 만드는 연습문제들을 보면서 정말 이런 서적들 중에 가성비 갑이라고 생각합니다.이렇게 세심한 설명과 구성들을 보면 앞으로 이 책을 다 본다면 다른 책도 사볼 수 밖에 없을 것 같아요.취준생으로서 저는 그렇게 느낍니다..ㅎㅎ;; 4장의 연습문제는 다음과 같습니다. [연습문제] 1. 수백만 개의 특성을 가진 훈련 세트에서는 어떤 선형 회귀 알고리즘을 사용할 수 있을까요? 수백만 개의 특성이 있는 훈련세트를 가지고 있다면, 확률적 경사 하강법(SGD)이나 미니배치 경사 하강법을 사용할 수 있습니다.훈련 세트가 메모리 크기에 맞으면 배치 경사 하강법도 가능합니다.하지만 정규방정식은 계산 복잡도가 특성 개수에 따라 매우 빠르게 증.. 2019. 1. 30.
33. Python - 소프트맥스 회귀(다항 로지스틱 회귀) 어제 보았던 로지스틱 회귀 모델은 여러 개의 이진 분류기를 훈련시켜 연결하지 않고, 직접 다중 클래스를 지원하도록 일반화할 수 있습니다. 이를, 소프트맥스 회귀(Softmax Regression) 또는 다항 로지스틱 회귀(Multinomial Logistic Regression)라고 합니다. 개념은 샘플 x가 주어지면, 소프트맥스 회귀 모델이 각 클래스 k에 대한 점수 를 계산하고, 그 점수에 소프트맥스 함수(softmax function, 또는 정규화된 지수 함수(normalized exponential)라 부름) 를 적용하여 각 클래스의 확률을 추정합니다. 를 계산하는 식은 선형 회귀 예측을 위한 식과 매우 비슷합니다. [클래스 k에 대한 소프트맥스 점수]각 클래스는 자신만의 파라미터 벡터 가 있습니.. 2019. 1. 29.
32. Python - 로지스틱 회귀 안녕하세요. 어려운 수학들을 보니 머리가 아파져오고 있습니다.코드도 길~고요 ㅎㅎ 오늘은 로지스틱 회귀에 대해 알아보겠습니다.로지스틱회귀(Logistic Regression) 또는 로짓 회귀(Logit Regression)는 샘플이 특정 클래스에 속할 확률을 추정하는 데 널리 사용됩니다. 예를 들면, 이 이메일이 스팸 확률일 확률은 얼마인가? 추정 확률이 50%가 넘는다면 모델은 그 샘플이 해당 클래스에 속한다고 예측합니다. (즉, 레이블이 '1' 인 양성 클래스). 아니면 클래스에 속하지 않는다고 예측합니다. (레이블이 '0'인 음성 클래스). 이를 이진 분류기라고 합니다. 그렇다면, 실제 어떻게 작동하는 걸까요? 선형 회귀 모델과 같이 로지스틱 회귀 모델은 입력 특성의 가중치 합을 계산합니다.(그리고.. 2019. 1. 28.
31. Python - 규제(릿지 회귀, 라쏘 회귀, 엘라스틱넷, 조기종료) 앞에서도 보았듯 과대적합을 감소시키는 방법 중 하나는 모델을 규제하는 것인데, 자유도를 줄임으로서 데이터에 과대적합되기 어려워지기 때문입니다. 예를 들어, 다항 회귀 모델을 규제하는 간단한 방법은, 다항식의 차수를 감소시키는 것입니다. 선형 회귀 모델에서는 보통 모델의 가중치를 제한함으로서 규제를 가합니다. 각기 다른 방법으로 가중치를 제한하는 릿지 회귀, 라쏘 회귀, 엘라스틱넷을 살펴보겠습니다. 1) 릿지 회귀릿지 회귀(또는 티호노프 규제, Tikhonov) 는 규제가 추가된 선형 회귀 버전입니다. 규제항 이 비용 함수에 추가됩니다. 이는 학습 알고리즘을 데이터에 맞추는 것 뿐만 아니라 모델의 가중치가 가능한 작게 유지되도록 노력하게 됩니다. 규제항은 훈련하는 동안에만 비용함수에 추가됩니다. 모델의 훈.. 2019. 1. 27.