목록분류 전체보기 (154)
AI·빅데이터 융합 경영학 Study Note
from sklearn.model_selection import train_test_splitfrom sklearn.preprocessing import MinMaxScaler, StandardScalerfrom sklearn.feature_selection import SelectPercentilefrom sklearn.svm import SVCfrom sklearn.model_selection import GridSearchCVfrom sklearn.decomposition import PCA# load and split the datafrom sklearn.datasets import load_breast_cancercancer = load_breast_cancer()X_train, X_test, ..
## 6. Feature Generation ### - 그룹별 summary: Ex) state는 고객이 위치한 36개 주를 나타냄 => 주별로 평균 cost를 계산하여 새로운 feature 생성 - 기존 feature 간의 결합: Ex) 1인당 견적을 계산 - 개별 feature 의 함수적 변환: Ex) np.log, np.sqrt, np.square 등을 사용 - 상호작용과 다항식 추가: 아래 참 # 이전에 배우고 실행했던 코드 import pandas as pd import numpy as np from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_split from sklearn.s..
### PCA(Principal Component Analysis, 주성분분석) 원 데이터의 분포를 최대한 보존하면서 고차원 공간의 데이터들을 저차원 공간으로 변환하는 기법 from sklearn.decomposition import PCA pca = PCA(n_components=10) X_train_pca = pca.fit_transform(X_train_sc3) X_test_pca = pca.transform(X_test_sc3) print(X_train_pca.shape) svm.fit(X_train_pca, y_train).score(X_test_pca, y_test) #(426, 10) #0.9790209790209791 # 각 주성분에 의해 설명되는 분산의 비율 plt.bar(range(le..
* Model based feature selection 과 Univariate feature selection 둘 중 하나, 혹은 둘 다 적용* 그 후 상황에 따라 필요하면 Recursive feature elimination 적용 ### Model based feature selection ##### - SelectFromModel은 모델 기반의 특성 선택 기법으로, 지정된 모델의 특성 중요도에 따라 특정 기준 이상의 중요도를 가진 특성만 선택하는 방식입니다. - transform된 데이터(X_train_sc3_fs1과 X_test_sc3_fs1)는 선택된 특성만 포함하여 모델의 성능을 향상시키거나 과적합을 줄이는 데 도움이 될 수 있습니from sklearn.feature_selection im..
### Feature Scaling ( #### Standardization 와 #### Min-max scaling 중 성능이 더 좋은 것 "하나만" 선택해서 진행.) (표준화 스케일링(StandardScaler)과 Min-max 스케일링 중 어떤 것이 더 나은지는 상황에 따라 다를 수 있습니다. 어떤 스케일링 방법이 더 나은지 결정하는 요인은 데이터의 분포와 사용하는 머신러닝 모델에 따라 다를 수 있습니다. 따라서 어떤 것이 더 나은지 정확히 판단하려면 다음 사항을 고려해야 합니다: 데이터 분포: 데이터가 어떻게 분포되어 있는지를 고려해야 합니다. 표준화 스케일링은 정규 분포를 가정하고 있으므로, 데이터가 정규 분포에 가까운 경우에 더 좋은 성능을 낼 수 있습니다. 반면에 Min-max 스케일링..
X_train_imp[cat].head() ### ##### pd.get_dummies() vs. OneHotEncoder() - 학습데이터와 평가데이터를 구분하지 않고 전체 데이터를 OHE할 경우 => pd.get_dummies() - 학습데이터와 평가데이터를 구분하여 각각 OHE할 경우 => OneHotEncoder() ### One-Hot Encoding- ##### pd.get_dummies()를 사용하는 방법 # 학습 데이터와 평가 데이터를 결합한 후, get_dummies를 통한 OHE 수행 X_all_imp = pd.concat([X_train_imp, X_test_imp]) X_all_imp_ohe = pd.get_dummies(X_all_imp, columns=cat) #X_all_imp..
#### Scikit-Learn Preprocessor Interface ① Import the preprocessor ② Instantiate the preprocessor ③ Fit the data to the preprocessor: .fit() ④ Generate the preprocessed data: .transform() 1. [Missing Data Hadling](#1.-Missing-Data-Hadling) 2. [Categorical Feature Transformation](#2.-Categorical-Feature-Transformation) 3. [Numerical Feature Transformation](#3.-Numerical-Feature-Transformation) 4...
이거 !!! 이 틀 그대로 기말에 나올거같음!!! 준비 꼭 해두기!!!import pandas as pdimport numpy as nploan_data = pd.read_csv('loan_train.csv')y = loan_data['Personal Loan']X = loan_data.drop(['ID', 'ZIP Code', 'Personal Loan'], axis=1)# Kaggle에서 아래와 같이 학습데이터(X_train, y_train)와 평가데이터(X_test)를 나누어서 제공했다고 가정하자.# 즉, y_test는 제공하지 않기 때문에 우리는 X_test에 대한 정답을 모른다.from sklearn.model_selection import train_test_splitX_train, X_tes..
import pandas as pd import numpy as np import seaborn as sns import matplotlib.pylab as plt %matplotlib inline import warnings warnings.filterwarnings("ignore") # Read Data from sklearn.datasets import load_breast_cancer cancer = load_breast_cancer() cancer_features = pd.DataFrame(data=cancer.data, columns=cancer.feature_names) #cancer_features ''' ***유방암 진단 데이터*** - 타겟 데이터: 종양이 악성(malignant, 0)..
Key Idea◼ You can combine classifiers by averaging/voting◼ Combining classifiers improve accuracy◼ Combining classifiers reduce interpretability 1. Voting Ensemble (투표 앙상블):방법: 각기 다른 모델들이 예측한 결과에서 다수결을 따르는 방식입니다. 예를 들어, 여러 모델의 예측 결과 중에서 가장 많이 등장한 값을 최종 예측값으로 선택합니다.종류:Hard Voting: 각 모델이 예측한 클래스 중에서 가장 많은 표를 받은 클래스를 최종 결과로 결정합니다.Soft Voting: 각 모델의 예측 확률을 평균내어, 확률이 가장 높은 클래스를 선택합니다.장점: 쉽게 구현할 수 ..
import matplotlib.pyplot as plt %matplotlib inline import numpy as np #불균형 데이터 생성 from sklearn.datasets import load_digits digits = load_digits() y = digits.target == 9 # 숫자 9를 posive class로 설정하여 불균형 데이터 생성 (y == True).mean() # y가 ture(숫자 9)인 비율 #0.1001669449081803 from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split(digits.data, y, random_stat..
1. 모형 평가 ◼ 모형평가란- 고려된 서로 다른 모형들 중 어느 것이 가장 우수한 예측력을 보유하고 있는 지, 선택된 모형이 '임의의 모형(random model)' 보다 우수한지 등을 비교 하고 분석하는 과정을 말한다.- 이 때 다양한 평가지표와 도식을 활용하는데, 머신러닝 애플리케이션의 목적이나 데이터 특성에 따라 적절한 성능지표(performance measure)를 선 택해야 한다.◼ 모형 선택 시 고려사항- (일반화 가능성) 같은 모집단 내의 다른 데이터에 적용하는 경우 얼마나 안 정적인 결과를 제공해 주는가?- (효율성) 얼마나 적은 feature를 사용하여 모형을 구축했는가?- (정확성) 모형이 실제 문제에 적용될 수 있을 만큼 충분한 성능이 나오는가? 2. 주요 평가 지표 3. Confu..