본문 바로가기
카테고리 없음

Chapter07-2 혼공 파이썬 데이터 분석

by 행복별거있나요 2023. 7. 27.

머신러닝으로 예측하기

모델:머신러닝으로 훈련된 프로그램 객체

        데이터에서 유용한 패턴을 학습하고 새로운 데이터에 대한 예측을 만들수 있음

 

지도학습:정답(또는 타깃)을 알고 있는 문제에 적용하는 방법

              입력과 타깃으로 모델을 훈련한 다음, 타깃이 없는 새로운 데이터에 적용하여 정답을 예측

비지도 학습:타깃이 없는 데이터에 적용하는 방법

 

훈련세트:모델을 훈련하기 위해 사용하는 데이터

테스트 세트:훈련된 모델을 평가 하기 위해 사용

(모델을 훈련하기 전에 전체 데이터를 훈련 세트와 테스트 세트로 나누어 사용)

 

결정계수:회귀 모델 평가하는 대표적 방법

              0~1사이의 값, 모델의 예측이 타깃의 평균과 비슷하면 0에 가까워지고 예측이 타깃에 정확하게 맞으면 1에 가까운 값이 됨

              2차원 배열 형태로 만들려면 to_frame()메서드 사용해 데이터 프레임을 만듦

 

선형회귀:가장 간단하고 다재다능한 지도 학습 알고리즘, 연속적인 타깃에 적용하는 회귀 알고리즘

              사이킷런에서는 LinearRegression클래스로 회귀 알고리즘 제공

              입력에 기울기a를  곱하고 y축과 만나는 절편 b를 더하여 예측을 만드는 것

              lr객체의 coef_속성과 intercept_속성에 학습된 기울기와 절편 각각 저장

 

로지스틱 회귀(시그모이드 함수):가장 기본적인 분류 알고리즘, 선형 함수 사용해 패턴 학습하지만 출력 결과에 로지스틱 함수를 적용하여

                     0~1사이의 값으로 압축, 그 다음 0.5를 기준으로 이진 분류 수행

                     2개의 카테고리 구분하는 것을 이진분류, 3개이상의 카테고리 구분하는 것을 다중 분류

                     이진 분류의 타깃이 0일때는 음성클래스, 1일때는 양성클래스(value_counts()메서드 호출해 값의 분포 알아냄)

                     score()메서드의 출력 결과는 선형 회귀 모델에서는 결정계수,분류 모델에서 정확도(입력 데이터 중 정답을 맞힌 비율)

 

 

[핵심함수와 메서드]

sklearn.model_selection.train_test_split(): 입력된 데이터를 훈련 세트와 테스트 세트로 나눔

sklearn.linear_model.LinearRegression:선형회귀 수행

LinearRegression.fit():모델 훈련

LinearRegression.score():모델의 성능을 평가

LinearRegression.predict():샘플에 대한 예측을 만듦

sklearn.linear_model.LogisticRegression:로지스틱 회귀 수행

sklearn.dummy.DummyClassfier:입력값을 고려하는 대신 타깃에서 다수의 클래스를 예측, 사용

사이킷런은 2차원 배열이나 행렬은 대문자로 표시하는 관례가 잇음

따라서 변수의 첫 글자는 대문자로 쓰고 1차원 배열은 모두 소문자로 쓴다

 

 

 

[혼자 공부하는 데이터 분석 with_파이썬 발췌 한 내용입니다]