본문 바로가기

공부방

[파이썬/머신러닝] 사이킷런 기초다지기 - 3 [파이썬/머신러닝] 사이킷런 기초다지기 - 3 데이터 전처리 머신러닝 알고리즘은 데이터에 기반하고 있기 때문에 어떤데이터의 입력을 가지느냐가 아주 중요합니다. 사이킷런의 머신러닝 알고리즘을 적용하기 전에 데이터에 대해 미리 처리해야 할 기본사항이 있습니다. - 결손값(Null, NaN)은 허용되지 않음 - 문자열 값을 입력값으로 허용하지 않음 따라서 결손값들은 각 경우에 맞게 평균값으로 변환되거나 Drop 하는 형태로 변경해 주어야 합니다. 그리고 문자열 값을 입력하는 것을 허용하지 않기 때문에 숫자형으로 변환해야 합니다. 여기서는 레이블 인코딩, 원-핫 인코딩 순서로 예를 들어 보겠습니다. 레이블 인코딩(Label Encoding) from sklearn.preprocessing import Label.. 더보기
[파이썬/머신러닝] 사이킷런 기초 다지기 - 2 [파이썬/머신러닝] 사이킷런 기초 다지기 - 2 2. 사이킷런의 기반 프레임워크 익히기 - 사이킷런은 머신러닝 모델학습을 위해서 fit()을, 학습된 모델의 예측을 위해 predict() 메소드를 제공합니다. - 분류 알고리즘을 구현한 클래스를 Classifier로, 회귀 알고리즘을 구현한 클래스를 Regressor로 지칭합니다. 이 둘을 합쳐서 Estimator 클래스 라고 부릅니다. ✔ 지도 학습의 모든 알고리즘을 구현한 클래스를 통칭해 Estimator라고 부르고 이 클래스는 fit()와 predict()를 내부에서 구현하고 있습니다. ✔ 일반적으로 머신러닝 모델을 구축하는 주요 프로세스는 피처의 가공, 추출을 수행하는 피처처리(feature processing), ML 알고리즘 학습/예측 수행 모.. 더보기
[파이썬/머신러닝] 사이킷런 기초 다지기 - 1 [파이썬/머신러닝] 사이킷런 기초 다지기 사이킷런(Scikit-learn) - 파이썬 머신러닝 라이브러리 중 가장 많이 사용되는 라이브러리 1. 붓꽃 품종 예측하기 예제 붓꽃 데이터 세트로 붓꽃 품종을 분류(Classification)하는 머신러닝 모델 만들기. 붓꽃데이터 세트는 꽃잎의 길이와 너비, 꽃받침의 길이와 너비 피처(Feature)를 기반으로 꽃의 품종을 예측하기 위한 것. 분류는 대표적인 지도학습 방법의 하나 입니다. 지도학습은 학습을 위한 다양한 피처와 분류 결정값인 레이블 데이터로 모델을 학습한 뒤, 별도의 테스트 데이터 세트에서 미지의 레이블을 예측합니다. 즉 지도학습은 명확한 정답이 주어진 데이터를 먼저 학습한 뒤 미지의 정답을 예측하는 방식입니다. 이때 학습을 위해 주어진 데이터 세.. 더보기
[파이썬/머신러닝] PANDAS(판다스) 기본 익히기-2 [파이썬/머신러닝] PANDAS(판다스) 기본 익히기-2 DataFrame, Series의 정렬 - sort_values() titanic_sorted = titanic_df.sort_values(by=['Pclass','Name'], ascending = 'False') titanic_sorted.head(3) sort_values()를 통해서 정렬 합니다. 파라미터로 by, inplace, ascending을 이용합니다. by는 어떤 컬럼을 정렬할지 inplace는 원본데이터도 정렬을 적용할지, ascending은 오름차순을 적용할지 설정할 수 있습니다. (inplace의 기본은 False, ascending의 기본은 True) 위 예제에서는 'Pclass'와 'Name' 컬럼을 기준으로 내림차순 정.. 더보기
[파이썬/머신러닝] PANDAS(판다스) 기본 익히기-1 [파이썬/머신러닝] PANDAS(판다스) 기본 익히기-1 PANDAS(판다스)의 구성요소 DataFrame - 컬럼과 로우로 구성된 2차원 데이터 셋 Index - 로우를 고유하게 구분할수 있는 key 값 객체, RDBMS의 PK값. Series - 한 개의 컬럼값으로 구성된 1차원 데이터 셋, 컬럼 값으로 구성되고 컬럼 명이 없다. 예제 파일 다운 받기 www.kaggle.com 에 접속해서 타이타닉 관련 데이터를 다운받아서 예제에 활용 합니다. 기본 API import pandas as pd titanic_df = pd.read_csv('titanic_train.csv') titanic_df.head(3) 판다스를 import 시켜주고 read_csv()를 이용해 csv 파일을 DataFrame으로 .. 더보기
[파이썬/머신러닝] NUMPY(넘파이) 기본 익히기 [파이썬/머신러닝] NUMPY(넘파이) 기본 익히기 ndarray의 차원, 크기 변경하는 reshape import numpy as np array1 = np.arange(10) print('array1 : ', array1) array2 = array1.reshape(2,5) print('array2 : ', array2) array3 = array1.reshape(5,2) print('array3 : ', array3) 1차원으로 생성된 ndarray를 2차원 ndarray로 환해 주는 메소드 입니다. 위 예시에서는 1차원 ndarray 를 2X5, 5X2 형태의 2차원 ndarray로 변환합니다. 여기서 사이즈가 다르다면 변경할 수 없습니다. array1을 2X6 또는 3X2 등으로 변환하려고 하면.. 더보기