묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
교재 125쪽 minMaxScaler와 가우시안 분포
안녕하세요 선생님덕분에 머신러닝 너무 재밌게 공부중입니다. 데이터의 분포가 가우시안 분포가 아닐 경우에 minMaxScaler을 적용해 볼 수 있습니다.라고 나와있는데, 이유가 무엇인지 알 수 있을까요? 제가 생각해본 이유들은 다음과 같습니다.이미 평균은 0, 표준편차는 1로 정규화되어있어 다시 정규화를 진행할 필요가 없다.정규분포는 양끝값이 없나..? 그래서 min값과 max값이 너무 멀리 떨어져있나?? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
데이터 분류과정에서 코드 질문
X_train, X_test,y_train, y_test= train_test_split(iris_data.data, iris_data.target, test_size=0.3, random_state=121) 를 이용해서 데이터를 분류하는데 이때 X_test, X_train이 학습용 피쳐값인지 테스트용 피쳐값인지 구분을 하는 메커니즘이 뭘까요? 위치로 구분을 하는 것인가요??
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
교차검증 메소드 질문드립니다.
안녕하세요강의를 복습하던 중 교차검증과 관련하여 궁굼한게 생겨 문의남깁니다. 교차검증을 통한 예측값을 산출할 때 cross_val_predict 메소드를 사용 하는 것으로 이해했습니다. 그래서 아래와 같이 코드를 만들었을 때 잘 동작했고요. y_cross_val_predict= cross_val_predict(model, X_train, y_train, cv=10, n_jobs=60) 근데 혹시 Test데이터에서도 가능한가 해서 데이터를 바꿔서 y_cross_val_predict= cross_val_predict(model, X_test, y_test, cv=10, n_jobs=60) 를 수행하니 코드는 문제없이 작동했는데 이 부분이 Test 데이터 셋에서 10개의 폴드로 나눠 교차검증을 한것으로 이해했는데 맞을까요?
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
4.8 베이지안 최적화로 hyperparameter 튜닝
hp.uniform을 정규 분포라고 설명하셨는데 균일 분포인거죠?funtion 이름도 그렇고 funtion의 param도 평균과 분산이 아니라 최소, 최대값인 걸로 보아 균일분포같아서요.
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
decisiontree 초기화 질문
for train_index, test_index in skfold.split(features, label): dt_clf.fit(X_train , y_train) 여기서 dt_clf은 반복문에서 fit이 실행될때마다 기존에 학습한 모델(데이터)을 지우고 새롭게 학습한 데이터만 갖고 모델을 만드는건가여?
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
scikit-learn 1.0.2 버전 설치 오류
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 맥 터미널에서 pip install scikit-learn==1.0.2 라고 치니다음과 같은 오류가 발생합니다..ㅜㅜ
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
lightgbm 오류
lightbgm을 강의와 같이 설치한 후 주피터 노트북으로 버전 확인을 해보았더니 다음과 같은 오류가 뜨네요.. 해결방법이 있을까요?더해서 xgboost의 버전이 1.7.3이 문제가 되는건 아닌지 궁금합니다.
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
피미 인디언 당뇨병 예측 관련 질문
교수님 안녕하십니까교수님의 수업을 정말 즐기면서 듣고있는 AI빅데이터 전공 대학생입니다.교수님의 강의 피마 인디언 당뇨병 예측 편을 보고 여태 배운 것을 백분 활용하여 제 방식대로 따로 모델을 구현을 해보았는데요. 먼저 임신횟수와 Outcome을 제외한 나머지 column들에 있는 0 값들은 모두 결측치로 판단하고 평균 값으로 대체하였습니다.RandomForestClassifier 알고리즘을 사용하고 GridSearchCV 함수를 통해 best estimator를 추출였습니다.정밀도와 재현율이 동시에 높으면 좋지만 재현율이 증가하면 정밀도가 하락하는 현상(trade-off) 때문에 둘 중 하나를 선택해야 했고 이 피마 인디언 당뇨병 데이터 셋 같은 경우 병의 발견 목적으로 모델을 제작한다고 했을 때 실제로 당뇨병인데 모델이 당뇨병이 아니라고 예측하는 것이 치명적이라고 생각하여 정밀도 보다는 재현율을 중점적으로 보았습니다.그리하여 precision_recall_curve 함수를 통해 최적의 재현율과 F1_score얻은 threshold 값을 추출하였습니다. 제가 얻은 값은오차 행렬 [[72 28] [ 4 50]] 정확도: 79.22% , 정밀도: 64.10% , 재현율 92.59%, F1_Score: 75.76%임계값: 0.32212471005503873입니다. 오차 행렬을 보았을때도 한쪽에 치우쳐있는 불균형도 없다고 판단하였고 정밀도와 재현율 f1_score도 괜찮게 나왔다고 판단했습니다.임계값을 0.32212471005503873로 주었을 때 roc_auc_score는 0.82296이라는 1에 꽤나 근접한 수치를 얻었습니다.질문1:이런식으로 모델을 찾아가는 방식이 옳은 방식인지 궁금합니다.질문2:제가 선택한 모델을 사용한다고 한다면 매번 RandomClassifier로 fit한 model을 Binarizer을 통해서 threshold 값을 매번 지정해주어야 하는건가요? 애초에 처음 모델을 fit할 때 임계값을 제가 부여는 못하는 것일가요?
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
5장 회귀 실습 2:캐글경연 주택가격 예측-Advanced Regression Techniques - 01 질문 있습니다😊
선생님 안녕하세요! 5장 회귀 실습 2:캐글경연 주택가격 예측-Advanced Regression Techniques - 01 을 듣다가 타겟 값인 Price를 로그 변환하여 정규 분포 형태로 변환하고, 피처들 중 숫자형 컬럼의 Null 값 데이터 처리 부분 코드를 다음과 같이 썼습니다. 그런데 결과가 사진과 같이 float64가 포함된 형태로 나왔습니다. 제가 어떤 부분에서 잘못한 건지, 그리고 어떻게 해야 선생님과 같은 결과가 나올 수 있나요?ㅎㅎ# SalePrice 로그 변환original_SalePrice = house_df['SalePrice']house_df['SalePrice'] = np.log1p(house_df['SalePrice'])# Null이 너무 많은 컬럼들과 불필요한 컬럼 삭제house_df.drop(['Id', 'PoolQC', 'MiscFeature', 'Alley', 'Fence', 'FireplaceQu'], axis=1, inplace=True)# Drop하지 않는 숫자형 Null 컬럼들은 평균 값으로 대체num_columns = house_df.dtypes[house_df.dtypes !='object'].index.to_list()house_df[num_columns].fillna(house_df[num_columns].mean(), inplace=True)# Null 값이 있는 피처명과 타입을 추출null_column_count = house_df.isnull().sum()[house_df.isnull().sum() > 0]print('## Null 피처의 Type :\n', house_df.dtypes[null_column_count.index])
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
downgrading 관련질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.사이킷런 다운그레이딩시 계속 오류가 나서, 파이썬을 3.9버전으로 다운그레이드 시킨 후 하면 된다고 해서 파이썬을 다운그레이드 하려고 했는데요.맥 터미널에서 다음과 같이 뜨고 Version이 바뀌지가 않네요 ㅜㅜ 제발 좀 도와주세요 ㅜㅜ
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
Xgboost 조기 중단 결과 해석
파이썬 래퍼 XGboost 조기 중단 결과 (일부만)[0] train-logloss:0.65016 eval-logloss:0.66183 [1] train-logloss:0.61131 eval-logloss:0.63609 [2] train-logloss:0.57563 eval-logloss:0.61144 [3] train-logloss:0.54310 eval-logloss:0.59204 [4] train-logloss:0.51323 eval-logloss:0.57329 [5] train-logloss:0.48447 eval-logloss:0.55037 [6] train-logloss:0.45796 eval-logloss:0.52930 [7] train-logloss:0.43436 eval-logloss:0.51534사이킷런 래퍼 XGboost 조기 중단 결과 (일부만)[0] validation_0-logloss:0.65016 validation_1-logloss:0.66183 [1] validation_0-logloss:0.61131 validation_1-logloss:0.63609 [2] validation_0-logloss:0.57563 validation_1-logloss:0.61144 [3] validation_0-logloss:0.54310 validation_1-logloss:0.59204 [4] validation_0-logloss:0.51323 validation_1-logloss:0.57329 [5] validation_0-logloss:0.48447 validation_1-logloss:0.55037 [6] validation_0-logloss:0.45796 validation_1-logloss:0.52930 [7] validation_0-logloss:0.43436 validation_1-logloss:0.51534결과가 train-logloss, eval-logloss 이렇게 두 개가 나오는데 eval-logloss의 값만 확인 하는 이유가 궁금합니다. ( 사이킷런 래퍼의 경우 validation_0_logloss 와 validation_1_logloss 두개가 있는데 validation_1_logloss만 확인하는 이유)train-logloss 와 eval-logoss(validation_0_logloss / validation_1_logloss) 가 각각 의미하는 것이 뭔지 궁금합니다.logloss는 실제값과 예측값의 차이에서 발생하는 값일텐데 어떻게 두개가 나올 수 있는지 궁금합니다. (학습 데이터와 검증데이터를 전달했다면 검증 데이터의 예측 결과로만 손실값이 나올텐데 train-logloss 는 어디서 나온 손실값인가요?)
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
lightgbm 조기중단 파라미터 오류
다음과 같은 에러가 나는 이유를 모르겠습니다. lightgbm의 버전은 4.1.0 입니다. 강사님이 올려주신 코드에서도 같은 오류가 나네요ㅠX_features = cancer_df.iloc[:,:-1] y_label = cancer_df.iloc[:,-1] X_train, X_test, y_train, y_test = train_test_split(X_features, y_label, test_size=0.2, random_state = 156) X_tr, X_val, y_tr, y_val = train_test_split(X_train, y_train, test_size=0.1, random_state=156) lgbm_wrapper = LGBMClassifier(n_estimators=400, learning_rate=0.05) evals = [(X_tr, y_tr),(X_val, y_val)] lgbm_wrapper.fit(X_tr, y_tr, early_stopping_rounds=50, eval_metric='logloss', eval_set=evals, verbose=True) preds = lgbm_wrapper.predict(X_test) pred_proba = lgbm_wrapper.preditct_proba(X_test)[:,1]TypeError: fit() got an unexpected keyword argument 'early_stopping_rounds'
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
피마 인디언 당뇨병 예측
# 0값을 검사할 피처명 리스트 객체 설정zero_features = ['Glucose', 'BloodPressure','SkinThickness','Insulin','BMI']# 전체 데이터 건수total_count = diabetes_data['Glucose'].count()# 피처별로 반복 하면서 데이터 값이 0 인 데이터 건수 추출하고, 퍼센트 계산for feature in zero_features: zero_count = len(diabetes_data.loc[diabetes_data['feature'] == 0]) print('{0} 0 건수는 {1}, 퍼센트는 {2:.2f} %'.format(feature, zero_count, 100*zero_count/total_count))에서 교안대로 하는 대신에 zero_count = len(diabetes_data.loc[diabetes_data['feature'] == 0])로 하면 에러가 뜨는 것일까요 ? feature를 찾을 수 없다고 뜨는 것 같습니다..ㅠㅠ
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
5장 RSS의 이해중.
안녕하세요.강의 내용 중 제가 알고있는 것과 차이가 있는것 같아 궁금한점이 있어 문의드립니다.비용함수와 RSS와 경사하강법의 이해의 RSS의 이해에 나와있는 RSS수식이 아니라 RMSE 내용이지 않는건지..1/N은 삭제되어야하지 않을까요? nRSS=∑ (y i −(β 0 +β1* xi1 +β2* xi2 +…+βn*xin )) ^2i=1아니면 비용함수에서는 RSS를 RMSE 개념으로 사용하는것일까요? 강의 내용이 좋아서 다른 강의도 미리 결재 했습니다. 많은 나이에 관심이 생겨 공부 중인데 너무 좋은 강의 해주셔서 감사하고, 새해 복 많이 받으세요.^^
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
평가 실습 - 피마 인디언 당뇨병 예측
안녕하세요.수업 중 궁금한 사항이 있습니다.diabetes_data[zero_features] = diabetes_data[zero_features].replace(0, diabetes_data[zero_features].mean())이렇게 구현하면 0이 평균에 포함되어서 평균값이 왜곡되지 않는지요?diabetes_data[zero_features].mean() 아래와 같은 식으로 0제외한 값으로 대체 되어야하는것 아닐지요?diabetes_data[diabetes_data[feature] != 0][feature].mean()특정한목은 43%나 0값이 있는데, 0을 포함한 평균값이면 평균값이 매우 낮아질것 같아서요. 감사합니다.
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
개별 약한 학습기 가중치와 가지치기 관련하여 이해가 안됩니다.
안녕하세요~ 선생님!선생님 강의 들으며 항상 감탄하고 또 많은 것을 배우고 있습니다~^_^ 선생님 강의 토대로 책으로 복습하고 있는데, 이해가 안되는 부분이 있어서요.222p에서 첫 번째 학습기의 가중치는 0.3, 두 번째 학습기의 가중치는 0.5, 세 번째 학습기의 가중치는 0.8 이렇게 늘어나는 것 같은데 학습기 자체에 가중치가 늘어나는 것인지, 오류 데이터에 대해서만 가중치가 크게 늘어나는 것인지 궁금합니다.그리고 만약 오류 데이터에서 가중치가 늘어나는 것이라면 그림을 보면 분류 기준1로 자르고 나면 오류데이터가 가중치를 부여해서 커지고, 다시 분류 기준2로 자르고 나면 오류 데이터가 가중치를 부여해서 커져서 오류 가중치 자체가 0.3, 0.5, 0.8로 커질 필요없이 동일해도 될 것 같은데 커지는 것이 이론상으로 이유가 있는지 궁금합니다. 226p에서 표의 나무 가지치기 관련하여 GBM은 분할 시 부정 손실이 발생하면 분할을 더 이상 수행하지 않는다고 했는데, 부정 손실이 무슨 의미인지 궁금합니다. 강의로 항상 큰 도움 받고 있습니다. 감사드려요~
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
균일도와 불균일 데이터..
제가 이해한 것이 맞는지 질문드리고 싶습니다.불균일 데이터 (imbalanced data)(a) 10000개의 데이터 중에서 100개 정도만 다른 데이터라면 imbalanced 데이터이며(b) 5000개 5000개로 나뉘어있으면 balanced 데이터인 것이 맞나요? 균일도가 낮은 것과 균일한 데이터는 상관이 없는건가요?4장 첫 번째 강의에서 하얀색과 검은색 데이터가 섞여있으면 균일도가 낮다고 하셨는데 1번 질문의 (b) 예시가 맞다면 데이터가 반반 나뉘어져 있는 경우 균일한(balanced) 데이터가 되는데, 이 경우는 균일한 데이터이면서 균일도가 낮다고 볼 수 있을까요? 정보이득지수와 지니계수둘의 차이를 검색하다가 알게 된 것인데요. 둘의 공통점은 균일도가 높은 것 기준으로 분류하는 것이고지니계수는 balanced 데이터, 정보이득지수는 imbalanced 데이터의 경우 선호된다..는 것이 맞을까요? 질문이 길어서 죄송합니다.감사합니다.
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
sklearn downgrading 문제
안녕하세요, sklearn downgrading 관련하여 오류가 생겨 질문 남깁니다.다른 수강생분이 앞서 남겨 주신 질문을 보고 따라해 보았는데요, 파이썬 3.9.18은 더 이상 설치파일이 지원되지 않으며, 현재 기준 최신 버전인 3.12.1으로 업데이트를 해보아도 sklearn downgrading 설치에 자꾸 실패하고 있습니다...혹시 3.9 이전 버전의 unofficial 파일이라도 설치해서 진행해볼까 하는데요, 파이썬 몇 이상을 써야한다와 같은 기준이 있을까요? 해당 사항 관련하여 확인 부탁드리며,좋은 강의 감사드립니다. :)
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
early_stopping_rounds 변화에 따른 loss와 정확도
안녕하세요. 항상 강의 보며 많은 도움 받고 있습니다.섹션4.분류 XGBoost를 이용한 위스콘신 유방암 예측(사이킷런 Wrapper XGBoost 사용)위의 강의를 듣고 궁금점이 생겨 질문 드립니다.아래 코드를 사용해 early_stopping_rounds를 50, 10일 때 결과를 봤는데강의와 다르게 성능이 올라가는 것이 의문입니다.10일때가 loss는 분명 더 큰데 정확도는 높게 나옵니다.from xgboost import XGBClassifier xgb_wrapper = XGBClassifier(n_estimators=400, learning_rate=0.05, max_depth=3) evals = [(X_tr, y_tr), (X_val, y_val)] xgb_wrapper.fit(X_tr, y_tr, early_stopping_rounds=50, eval_metric="logloss", eval_set=evals, verbose=True) ws50_preds = xgb_wrapper.predict(X_test) ws50_pred_proba = xgb_wrapper.predict_proba(X_test)[:, 1]get_clf_eval(y_test , ws50_preds, ws50_pred_proba)early_stopping_rounds=50일 때의 결과:validation_1-logloss:0.23533 , 정확도 0.9649정확도: 0.9649, 정밀도: 0.9740, 재현율: 0.9740, F1: 0.9740, AUC:0.9961early_stopping_rounds=10일 때의 결과:validation_1-logloss:0.25165, 정확도 0.9737정확도: 0.9737, 정밀도: 0.9868, 재현율: 0.9740, F1: 0.9804, AUC:0.9954
-
해결됨AB 테스트 실무자 완벽 가이드
학습 자료 질문
안녕하세요,a/b 테스트에 대한 유익한 강의 감사합니다.오늘 강의 수강하기 시작했는데, 강의 소개 중 참고사항에 있는 학습자료1~7강까지 강의에 나오는 PDF를 제공할 예정입니다.6~7강에 사용되는 엑셀 파일을 제공할 예정입니다.에 대한 학습자료는 혹시 어디에서 찾을 수 있나요?강의 화면 상단에서 내려받을 수 있는 자료는 첫 강의에 있는 'OT 자료'만 보입니다.