[ML] Diabetes Dataset
·
Programming/ML
이는 442명의 당뇨병 환자에 대한 진단 측정치로 구성됨.이는 regression models를 위한 dataset.9개의 features를 통해 당뇨병의 진행 정도를 예측.Dataset 특징샘플 수: 442특성 수: 10target: 1년 후 질병 진행의 정량적 측정치Featuresage: 나이sex: 성별bmi: 체질량 지수 (Body Mass Index)bp: 평균 혈압 (Average Blood Pressure)s1: 혈청 (Serum) 측정치 1s2: 혈청 측정치 2s3: 혈청 측정치 3s4: 혈청 측정치 4s5: 혈청 측정치 5s6: 혈청 측정치 6Target (or Label)1년 후의 질병 진행 정도를 나타내는 정량적 측정치데이터 형태모든 feature는 standardization(표준화..
[ML] Yeast Dataset
·
Programming/ML
Yeast Dataset효모 유전자의microarray expression data와 phylogenetic profiles를 포함한multi-label classification용 데이터셋.설명각 인스턴스는 하나의 유전자(gene)을 나타내며,microarray expression data와gene의 발현 수준을 나타내는 데이터임.phylogenetic profiles를특정 유전자가 여러 생물종에서의 유무 등을 의미함.나타내는 103개의 features 로 구성됨.numerical data와symbolic data로 구성됨.하나의 유전자에 최대 14개의 biological function이 label로 할당됨.각 label은 binary value를 가짐.라벨은 physiological process,..
[ML] kNN Classifier (k-Nearest Neighbors Classifier)
·
Programming/ML
k-Nearest Neighbors (kNN) Classifier는 Supervised Learning에 기반한 non-parametric(비모수) 및 instance-based Algorithm. 이는 Label 이 지정된 data와의 distance를 이용하여 새로운 data point가 어느 class에 속하는지 예측하는 방식. 1. 기본 아이디어: 새로운 데이터가 주어졌을 때,해당 데이터와 가장 가까운 k개의 이웃 데이터 포인트 (Nearest Neighbors)를 찾고,이웃들의 Majority Voting(=hard voting) 또는 거리로 가중치를 둔 Soft Voting에 의해 새로운 데이터의 클래스를 결정.k 값은 사용자가 지정하는 hyper-parameter이며작은 k값은 과적합(ove..
[ML] Imputation
·
Programming/ML
Imputation이란: Data Science와 ML에서 "impute"는누락된 데이터(missing data)를 (합리적인) 대체값으로 채우는 과정을 의미이는 '대체', '귀속', 또는 '채워넣기'로 번역될 수 있음.Dataset을 다룰 때,누락된 데이터가 있는 전체 행이나 열을 제거하는 대신,imputation은 다른 가용한 features 나 선행정보(prior)를 바탕으로 missing values를 추정하여 채워넣는 방법.Imputation에서는 Training set 만을 사용하여 채워넣을 값을 구함. 종류주요 imputation은 다음과 같음:mean/median imputation:해당 특성의 mean이나 median으로 missing values을 대체mode(최빈값) imputatio..
[ML] scikit-learn: FunctionTransformer
·
Programming/ML
사용자가 정의한 함수를 pipeline에서 변환기(transformer)로 사용할 수 있게 해주는 유용한 Class.전처리나 특정 데이터 변환 작업이 필요할 때,이를 FunctionTransformer로 간편하게 적용할 수 있습니다.이를 통해, fit() 가 필요하지 않은 사용자 정의 변환을 손쉽게 Scikit-learn의 Pipeline에 포함시켜 다양한 데이터를 처리할 수 있음1. Signatureclass sklearn.preprocessing.FunctionTransformer( func=None, inverse_func=None, *, validate=False, accept_sparse=False, check_inverse=True, feature_name..
[ML] scikit-learn: Pipeline 사용법
·
Programming/ML
Scikit-learn의 Pipeline은 여러 데이터 처리 과정을 하나로 묶어 효율적으로 실행할 수 있게 해주는 Class.(일반적인) Pipeline 이란?Pipeline은 일반적으로 (데이터) 처리 과정 또는 기계학습 등에서 “여러 단계(step or component)를 순차적으로 연결한 시스템” 을 가리킴. 일반적인 (데이터) Pipeline:여러 데이터 처리 컴포넌트(=step)의 연속된 sequence로 구성됨.각 component는 대량의 데이터를 가져와 처리하고 결과를 다음 단계로 전달.Pipeline을 구성하는 components는 주로 비동기적으로 실행되며, 각 단계는 독립적으로 작동하는 게 일반적임.Scikit-Learn의 Pipeline:여러 데이터 전처리 단계(step, comp..