본문 바로가기

전체 글

(216)
Titanic데이터활용_DecisionTree_Ensemble Machine Learning 과정 - 문제정의 - 데이터 수집 - 데이터 전처리 (인코딩,특성공학) - 탐색적 데이터 분석 (시각화, 특성선택) - 모델 선택 및 학습 - 하이퍼파라미터 튜닝 (교차검증,그리드서치) - 모델 평가 import pandas as pd import numpy as np 데이터 사전 - PassengerId : 탑승객 id - Survived : 생존여부 (0 = 사망, 1 = 생존) - Pclass : 티켓 클래스 (1등급, 2등급, 3등급) - Name : 이름 - Sex : 성별 (male = 남성, female = 여성) - Age : 나이 - SibSp : 형제/배우자의 수 - Parch : 부모/자녀 수 - Ticket : 티켓 번호 - Fare : 요금 - Cab..
손글씨 분류 실습 목표 - 손글씨 숫자(0~9)를 분류하는 모델을 만들어보자. - 선형 분류모델의 불확실성을 확인 - 이미지 데이터의 형태를 이해 import numpy as np import pandas as pd import matplotlib.pyplot as plt digit_data = pd.read_csv('data/digit_train.csv') digit_data.head() digit_data.shape EDA img0 = digit_data.iloc[0, 1:] print(img0.max()) print(img0.min()) plt.hist(img0, bins = 255) plt.show() plt.imshow(img0.values.reshape(28, 28)) # plt.imshow(img0.value..
보스턴주택 값 예측 import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.datasets import load_boston # 보스턴 주택값 데이터셋 boston = load_boston() boston.keys() print(boston.data) print(boston.target) print(boston.feature_names) print(boston.DESCR) - CRIM: 범죄 발생율 - INDUS: 비상업지역 면적 비율 - NOX: 일산화질소 농도 - RM: 주택당 방 수 - LSTAT: 인구 중 하위 계층 비율 -B: 인구 중 흑인 비율 - PTRATIO: 학생/교사 비율 - ZN: 25,000 평방피트를 초과 ..
Linear Model - Regression import numpy as np import pandas as pd import matplotlib.pyplot as plt data = pd.DataFrame([[2,20],[4,40],[8,80],[9,90]], index=['학생1','학생2','학생3','학생4'], columns=['시간','성적']) data 1. 수학 공식을 이용한 해석적 모델 - LinearRegression from sklearn.linear_model import LinearRegression linear_model = LinearRegression() linear_model.fit(data[['시간']] , data['성적']) # 문제는 2차원으로 넣어줘야한다. # y = 10 * x + 0 print(linear..
타이타닉 생존자 예측 분석 목표 - 타이타닉 데이터를 학습해서 생존자/사망자를 예측해보자 - 머신러닝의 전체 과정을 진행해보자. 머신러닝 과정 - 문제정의 - 데이터 수집 - 데이터 전처리 - 탐색적 데이터 분석 - 모델 선택 및 학습 - 모델 평가 1. 문제 정의 - 생존자/사망자를 예측 - Kaggle 경진대회에서 높은 순위를 차지 - 머신러닝 과정 전체를 체험 해보는 예제 2. 데이터 수집 - Kaggle 사이트로부터 train, test 다운로드 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns # 시각화 라이브러리 Question1 - 타이타닉 train데이터와 test데이터를 변수 train,test에 저..
버섯데이터 분류 목표 - 버섯의 특징을 활용해 독/식용 버섯을 분류 - Decision tree 시각화 & 과대적합 속성 제어 - 특성선택(Feature selection) 해보기 import pandas as pd from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier # 1. 데이터를 로딩 # 2. 전체 컬럼,행 숫자 파악 # 3. 결측치 파악 # 4. 문제와 답 분리 # 5. 기술통계 -> 범주형데이터 : 갯수,최빈값,종류 # 6. label의 비율을 확인해보자. data = pd.read_csv('data/mushroom.csv') data.head() data.shape data.info..
iris 품종분류 목표 - 붓꽃의 꽃잎 길이, 꽃잎 너비, 꽃받침 길이, 꽃받침 너비 특징을 활용해 3가지 품종을 분류해보자. - KNN 모델의 이웃의 숫자를 조절해보자(하이퍼파라미터 튜닝) from sklearn.datasets import load_iris import pandas as pd import matplotlib.pyplot as plt from sklearn.neighbors import KNeighborsClassifier from sklearn.model_selection import train_test_split from sklearn import metrics iris_data = load_iris() iris_data iris_data.keys() iris_data['data'] iris_data..
BMI 학습하기 목표 - 500명의 키와 몸무게, 비만도 라벨을 이용해 비만을 판단하는 모델을 만들어보자. import pandas as pd import matplotlib.pyplot as plt from sklearn.neighbors import KNeighborsClassifier from sklearn import metrics # 평가를 위한 모듈 tbl = pd.read_csv('data/bmi_500.csv', index_col='Label') tbl.head() tbl.loc['Normal'] tbl.info() # 전체 row수, 결측치 여부, 컬럼별 정보 tbl.describe() # 기술통계 확인 tbl.index.unique() 각 비만도 등급별로 시각화 def myScatter(label, c..