728x90

08_ML(Machine_Learning) 32

32_자전거 대여 수요 예측(2)

모델링 전략베이스라인 모델 : 가장 기본적인 선형회귀 모델타깃값은 log(count) 사용 데이터 전처리train_df = pd.read_csv("./data/bike/train.csv")test_df = pd.read_csv("./data/bike/test.csv")submission_df = pd.read_csv("./data/bike/sampleSubmission.csv") train_df = train_df[train_df["weather"] != 4] train_df.shape, test_df.shape # train데이터와 test데이터를 합쳐서 전처리 후# 종속변수가 null인 데이터와 아닌 데이터로 나누면 다시 train과 test로 나누어짐all_df = pd.concat([train_d..

32_자전거 대여 수요 예측(1)

https://www.kaggle.com/competitions/bike-sharing-demand자전거 대여 데이터2011년부터 2012년까지 2년간의 자전거 대여 데이터캐피털 바이크셰어 회사가 공개한 운행 기록에 다양한 외부 소스에서 얻은 당시 날씨 정보를 조합한 시간 간격으로 기록됨훈련 데이터 : 매달 1일부터 19일까지의 기록테스트 데이터 : 매달 20일부터 월말까지의 기록피처datetime : 기록 일시(1시간 간격)season : 계절(1 : 봄(1분기), 2 : 여름(2분기), 3 : 가을(3분기), 4 : 겨울(4분기))공식 문서에는 계절로 설명하고 있지만 실제로는 분기로 나누어져 있음holiday : 공휴일 여부(0 : 공휴일 아님, 1 : 공휴일)workingday : 근무일 여부(0 ..

31_피마인디언 당뇨병 예측

피마 인디언 당뇨병 데이터 데이터 활용 목적 : 당뇨병 여부를 판단하는 머신러닝 예측 모델을 수립데이터 개요북아메리카 피마 지역 원주민의 Type-2 당뇨병 결과 데이터일반적으로 알려진 당뇨병의 원인은 식습관과 유전피마 지역은 고립된 지역에서 인디언 고유의 혈통이 지속됨20세기 후반 서구화된 식습관으로 많은 당뇨 환자가 발생피처Pregnancies : 임신 횟수Glucose : 포도당 부하 검사 수치BloodPressure : 혈압(mm Hg)SkinThickness : 팔 삼두근 뒤쪽의 피하지방 측정값(mm)Insulin : 혈청 인슐린(mu U/ml)BMI : 체질량지수(체중(kg) / 키(m)^2)DiabetesPedigreeFunction : 당뇨 내력 가중치 값Age : 나이Outcome : 클..

30_머신러닝 프로젝트 프로세스(머신러닝 모델링 프로세스)

머신러닝 모델링 프로세스일반적인 흐름일 뿐 실제 수행할 업무 내용에 따라 세부 내용은 조금씩 달라질 수 있음프로젝트 이해문제 이해해결해야 하는 문제에 대한 이해분석 배경과 목적에 대한 이해어떤 데이터를 활용해서 어떤 업무를 수행해야 하는지 확인회귀, 분류, 데이터 접근 방법, 그 외 데이터와 관련된 다양한 사항을 확인프로젝트 목표 설정문제 이해의 내용을 바탕으로 프로젝트 목적과 산출물의 형태를 고려분석 방법, 모델, 평가 방법 설정평가지표 파악체크리스트프로젝트 목표 설정분석 유형(회귀 / 분류(이진분류/다중분류) / 기타) 파악평가지표 설정데이터 획득 / 수집lv1 : 제공받는 데이터연구용 데이터, 경진대회 데이터, 공공데이터, 사내 기업 데이터, 구매 데이터정규화된 데이터일 가능성이 높음lv2 : OP..

29_군집분석_연습문제

군집분석_ 연습문제 군집분석한 기업이 해킹을 당해서 우리에게 도움을 요청했습니다! 다행스럽게도 그 기업의 포렌식 기술자들은 session time, location, wpm typing speed 등과 같은 해킹에 대한 귀중한 정보를 수집했습니다. 담당 포렌식 기술자와의 회의에서 듣기로는 해커들이 서버에 접속하는데에 사용한 각 세션의 메타 데이터들을 수집한 것이라고 합니다. 다음은 수집된 데이터입니다Session_Connection_Time : 세션이 지속된 시간(분)입니다.Bytes Transferred : 세션 중에 전송된 데이터 용량(MB)입니다.Kali_Trace_Used : 해커의 Kali Linux 사용 여부입니다.Servers_Corrupted : 공격으로 손상된 서버 수 입니다.Pages..

28_주 성분 분석

주 성분 분석 차원 축소과일 사진의 경우는 10000개의 픽셀이 있기 때문에 10000개의 특성이 있음차원의 저주일반적인 머신러닝 문제는 수천~수백만 개의 특성을 가지고 있는 경우도 있음특성이 너무 많으면 훈련이 느리게 될 뿐 아니라 좋은 솔루션을 찾기 어렵게 됨이러한 문제를 차원의 저주(curse of dimensionality)라고 함차원 축소(dimensionality reduction)데이터를 가장 잘 나타내는 일부 특성을 선택하여 데이터 크기를 줄이고 모델의 성능을 향상시키는 방법예) 이미지 경계면의 배경 부분 제거, 서로 인접한 픽셀들을 결합 등 주성분 분석(principal component analysis)데이터에 있는 분산이 큰 방향을 찾는 것분산: 데이터가 퍼져 있는 정도 위 그림의..

27_군집모델_심화

군집모델_심화 k-means 클러스터링의 최적의 k값을 찾는 방법 비즈니스 도메인 지식정성적인 선정 방법데이터적인 근거는 다소 부족하지만, 클러스터링 자체가 해석을 통한 비즈니스 인사이트 도출이 주 목적이기 때문에 많은 프로젝트에서 이 방법을 사용엘보우 기법(Elbow method)군집 내 중심점과 관측치 간 거리 합(Inertia value)이 급감하는 구간의 k개수를 선정군집의 수가 k였을 때보다 k + 1개일 때 거리합이 급감했다는 것은 유사한 속성의 관측치들끼리 잘 묶였다는것을 의미따라서 k가 더 증가해도 거리합이 별로 줄어들지 않을 때는 k를 더 증가시킬 필요가 없다는 의미이 때의 그래프 모양이 팔꿈치(Elbow) 형태를 하고 있기 때문에 엘보우 기법이라고 불림실루엣 계수(Silhouette ..

26_군집 알고리즘(k-means)

군집 알고리즘(k-means) k-means(k-평균) 군집 알고리즘 작동 방식무작위로 k개의 클러스터 중심을 정함(b)각 샘플에서 가장 가까운 클러스터 중심을 찾아 해당 클러스터의 샘플로 지정(c, e)클러스터에 속한 샘플의 평균값으로 클러스터 중심을 변경(d, f)클러스터 중심에 변화가 없을 때까지 2 ~ 3 번 과정을 반복 import numpy as npfrom sklearn.cluster import KMeansimport matplotlib.pyplot as pltfruits = np.load("./data/fruits_300.npy")fruits_2d = fruits.reshape(-1, 100 * 100) fruits.shape, fruits_2d.shape((300, 100, 100), ..

25_군집 알고리즘(비지도 학습)-과일 사진 레이블 없이 분류

군집 알고리즘(비지도 학습)과일 사진 레이블 없이 분류하기  데이터 준비import numpy as npimport matplotlib.pyplot as pltfruits = np.load("./data/fruits_300.npy") # (데이터 개수, 이미지 높이, 이미지 너비)fruits.shape(300, 100, 100) print(fruits)[[[1 1 1 ... 1 1 1] [1 1 1 ... 1 1 1] [1 1 1 ... 1 1 1] ... [1 1 1 ... 1 1 1] [1 1 1 ... 1 1 1] [1 1 1 ... 1 1 1]] [[1 1 1 ... 1 1 1] [1 1 1 ... 1 1 1] [1 1 1 ... 1 1 1] ... [1 1 1 ... 1 1 1..

728x90