3장 평가 머신러닝은 데이터 가공/변환(사람), 모델 학습/예측(컴퓨터), 그리고 평가, Evaluation(사람)의 프로세스로 구성 타이타닉 생존자 예제에서 모델 예측 성능을 평가하기 위해 정확도(Accuracy)를 이용 성능 평가 지표는 일반적으로 회귀, 분류 모델에 따라 여러 종류로 나눠짐 회귀 : 실제값과 예측값 사이의 오차들의 평균 -> wx+b=y_hat -> 맞추고자 하는 y값의 스케일에 따라 오차가 커지고 작아짐 -> RMSE(오차 제곱), MSE(제곱), MAE(절댓값) 분류 : 실제 결과 데이터와 예측 데이터가 얼마나 정확한지 분류의 성능 평가 지표 정확도(Accuracy) 오차행렬(Confusion Matrix) 정밀도(Precision) 재현률(Recall) F1 스코어 1. Acc..
2장 사이킷런으로 시작하는 머신러닝 1 사이킷런 소개와 특징 파이썬 머신러닝 라이브러리 중 가장 많이 사용되는 라이브러리 파이토치(커스터마이즈 쉬움. 최신 모델에 많이 사용), 텐서플로우(커스터마이즈 복잡) 등 딥러닝 전문 라이브러리가 강세지만 데이터분석가가 의존하는 대표적인 ML 라이브러리 -> 통계 기반이라서 설명이 가능하기 때문 딥러닝은 머신러닝 기법 중 하나 머신러닝 : 통계 기반의 알고리즘을 이용한 기계학습방법 딥러닝 : 신경망 사이킷런의 특징 파이썬 기반의 다른 머신러닝 패키지도 사이킷런 스타일의 api를 지향할 정도로 쉬운 api 제공 머신러닝을 위한 다양한 알고리즘과 개발을 위한 편리한 프레임워크와 api 제공 오랜 기간 실전 환경에서 검증되었고, 많은 환경에서 사용되는 성숙한 라이브러리 ..
5장 데이터 사전 처리 누락 데이터 처리 머신러닝 등 데이터분석의 정확도는 분석 데이터의 품질에 의해 좌우됨 데이터 품질을 높이기 위해서는 누락 데이터, 중복 데이터 등 오류를 수정하고 분석 목적에 맞게 변형하는 과정이 필요함 빅데이터에서 원소 데이터 값이 누락되는 경우 -> 데이터를 파일로 입력할 때 빠트리거나 형식을 변환하면서 데이터가 소실되는 경우 판다스에서 유효하지 않거나 데이터 값이 존재하는 않은 데이터를 NaN으로 표시 머신러닝 분석 모형에 데이터를 입력하기 전에 반드시 누락 데이터를 제거하거나 다른 적절한 값으로 대체하는 과정이 필요 누락 데이터 제거 # NaN 값이 500개 이상인 컬럼을 모두 삭제 -> deck 컬럼 df_thresh = df.dropna(axis=1, thresh=500..
아래래의 남북한 발전 전력량 데이터에서 전력량 컬럼은 남한과 북한만, 연도 컬럼들은 1990부터 2016까지만 담은 데이터프레임을 만들고자 한다. df_ns = df.iloc[[0, 5], 2:] df_ns.index = ['South', 'North'] df_ns.columns = df_ns.columns.map(int) df_ns iloc를 사용 데이터프레임을 슬라이싱하고 인덱스 이름을 South와 North로 새로 지정했다. df_ns = df.iloc[:6, 2:] 라는 코드로도 가능하지 않을까? 라는 생각에 코드를 작동시켰더니 ValueError: Length mismatch: Expected axis has 6 elements, new values have 2 elements 라는 오류가 발생..