본문 바로가기

Data Science

(21)
[핸즈온 머신러닝 2/E] 4장. 모델 훈련 이번 포스팅에서는 다양한 회귀 모델들에 대해 설명하고자 한다. 자, 그럼 시작해보겠다. ▶ 선형 회귀 ◆ 선형 회귀 모델의 예측 선형 회귀 모델의 예측값 y_hat은 다음과 같이 나타낼 수 있다. 통계학에서는 단순 선형 회귀와 다중 선형 회귀를 구분해서 배웠는데, 머신러닝에서는 어차피 단순 선형 회귀를 쓸 일은 거의 없으니 다중 선형 회귀로 통합시켜서 설명을 해놓은 듯 싶다. 위 식을 아래와 같이 벡터 형태로 쓸 수도 있다. ※ 위의 벡터 형태의 식이 어떻게 나왔는지에 대한 설명을 위해, 아래 이미지 2개를 첨부하였다. (첨부된 이미지를 보면, 해당 식이 어떻게 나왔는지 이해할 수 있을 것이다) ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 우리의 목표는 회귀 모델의 성능 측정 지표로 많이 사용되는 ..
[핸즈온 머신러닝 2/E] 3장. 분류 이번에 포스팅할 3장에서는 "분류(Classification)"에 대해서 설명해보려 한다. 우선 설명을 위해 예시로 사용할 데이터는 MNIST 데이터 셋으로, 아래와 같은 숫자 이미지 데이터이다. 본격적으로 시작하기에 앞서, MNIST 데이터 셋을 "특성들로만 이루어진 데이터 셋"과 "target 값들로만 이루어진 데이터 셋"으로 분리해주겠다. ▶ 이진 분류기 훈련 교재에서는 확률적 경사 하강법(SGD; Stochastic Gradient Descent) 분류기로 숫자 5를 식별하는 것을 예시로 보여주고 있다. ◆ 확률적 경사 하강법 분류기(SGDClassifier) 매우 큰 데이터 셋을 효율적으로 처리하는 장점이 있다. 한 번에 하나씩 훈련 샘플을 독립적으로 처리하기 때문! 사이킷런의 SGDClassi..
[핸즈온 머신러닝 2/E] 2장. 머신러닝 프로젝트 처음부터 끝까지_Part 2 이번 포스팅에서는 지난 번 2장 에 이어서 를 진행해도록 하겠다. 자, 그럼 시작해보겠다!! ▶ 머신러닝 알고리즘을 위한 데이터 준비(Feature Engineering) 본격적인 시작에 앞서, 다음과 같이 strat_train_set( ) 함수를 사용하여 훈련 데이터 세트를 target 변수가 제외된 데이터 세트(feature들만 존재)과 target 변수만 있는 데이터 세트로 분리하겠다. ◆ 데이터 정제 Null 값 처리 해당 구역을 제거하는 방법 dropna( ) 사용 전체 특성(feature)을 삭제하는 방법 drop( ) 사용 다른 값으로 대체하는 방법(0, 평균값, 중앙값 등) fillna( ) 사용 교재에서는 누락된 값들을 중앙값으로 대체해주었다. 범주형 특성 처리 아래와 같이 우리가 분석할..
[핸즈온 머신러닝 2/E] 2장. 머신러닝 프로젝트 처음부터 끝까지_Part 1 ※ 2장은 내용이 다소 많아 두 개의 파트(Part 1, Part 2)로 나눠서 포스팅하도록 하겠다. 2장에서는 독자가 부동산 회사에 막 고용된 데이터 과학자라고 가정하고, 하나의 예제 프로젝트를 처음부터 끝까지 진행해보는 과정을 설명해놓았다. 독자인 우리가 진행해 볼 프로젝트의 주제는 캘리포니아 인구조사 데이터를 사용해서, 캘리포니아의 주택 가격 모델을 만드는 것이다. 분석에 사용할 캘리포니아 인구조사 데이터에는 인구, 중간 소득, 중간 주택 가격 등 여러 가지 특성들이 있다. ▶ 문제 정의 어떤 문제를 해결하기에 앞서, 문제를 정의하는 것은 굉장히 중요하다. 먼저 Jupyter Notebook에서 분석에 사용할 데이터를 확인해보면 다음과 같다. 자, 그럼 이제 질문 몇 가지를 하겠다. 우리가 해결하고..
[핸즈온 머신러닝 2/E] 1장. 한 눈에 보는 머신러닝 오늘부터 "핸즈온 머신러닝 2/E" 교재에 나온 내용들을 정리하며, 머신러닝 이론에 대한 공부를 시작했다. 1장에서는 머신러닝이란 무엇인지 그리고 왜 필요한지에 대한 내용들이 담겨있고, 사례들을 예시로 이해하기 쉽게 설명해주고 있다. 자, 그럼 이제 1장에서 공부한 내용들을 정리해보겠다. ▶ 머신러닝이란 무엇인가? 머신러닝은 명시적인 규칙을 코딩하지 않고, 기계가 데이터로부터 학습하여 어떤 작업을 더 잘하게 만드는 것이다. 스팸 필터 수익 예측 고장 진단 및 사기 탐지 (이상치 탐지) 고객 군집화 상품 추천 챗봇 음성 인식 이미지 분류 텍스트 분류 머신러닝 기술을 적용해서 대용량의 데이터를 분석한 후, 겉으로는 찾지 못했던 새로운 패턴을 발견하는 것을 "데이터 마이닝"이라고 한다. 말 그대로 "마이닝"이..