월 15,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
3강 강의 자료 코드 관련 질문입니다
- 섹션 3 타이타닉 문제로 시작하는 EDA: 범주형 데이터 분석 패턴1 11분 13초에 나오는 코드를 수정하지 않고 실행하였는데 ValueError: could not convert string to float: 'Braund, Mr. Owen Harris'가 떴습니다. 해결 방법을 알 수 있을까요
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
맥 사용자 mkdir .kaggle 했는데 파일이 안만들어집니다.
맥 사용자 mkdir .kaggle 했는데 파일이 안만들어집니다.그래서 ls해도 아무것도 뜨지 않고, 폴더가 없으니 kaggle.json 파일도 옮길수 없습니다.. 제가 직접 만들어 보려고 했는데 .이 들어가서 파일명을 할 수 없다고 뜹니다 ㅠㅠ 어떻게 해ㅑ야 할까요
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
Bayesian Optimization에서 optimizer.maximize()함수를 더이상 지원 안한다고 합니다.
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. import numpy as np from xgboost import XGBClassifier from bayes_opt import BayesianOptimization from sklearn.model_selection import cross_val_score pbounds = { 'learning_rate': (0.01, 0.5), 'n_estimators': (100, 1000), 'max_depth': (3, 10), 'min_child_weight': (0, 10), 'subsample': (0.5, 1.0), 'colsample_bytree': (0.5, 1.0) # 'reg_lambda': (0, 1000), # 'reg_alpha': (0, 1.0) } def lgbm_hyper_param(learning_rate, n_estimators, max_depth, min_child_weight, subsample, colsample_bytree): max_depth = int(max_depth) n_estimators = int(n_estimators) clf = LGBMClassifier( max_depth=max_depth, min_child_weight=min_child_weight, learning_rate=learning_rate, n_estimators=n_estimators, subsample=subsample, colsample_bytree=colsample_bytree, random_state=1 # reg_lambda=reg_lambda, # reg_alpha=reg_alpha ) return np.mean(cross_val_score(clf, train_importance, train_answer, cv=5, scoring='accuracy')) # cv 도 숫자로 작성하여, 내부적으로 (Stratified)KFold 사용함 optimizer = BayesianOptimization( f=lgbm_hyper_param, pbounds=pbounds, verbose=1, random_state=1) optimizer.maximize(init_points=10, n_iter=100, acq='ei', xi=0.01) 위 코드를 실행하면 아래와 같은 에러가 발생합니다.--------------------------------------------------------------------------- Exception Traceback (most recent call last) Cell In[44], line 34 31 return np.mean(cross_val_score(clf, train_importance, train_answer, cv=5, scoring='accuracy')) # cv 도 숫자로 작성하여, 내부적으로 (Stratified)KFold 사용함 33 optimizer = BayesianOptimization( f=lgbm_hyper_param, pbounds=pbounds, verbose=1, random_state=1) ---> 34 optimizer.maximize(init_points=10, n_iter=100, acq='ei', xi=0.01) File ~\miniconda3\Lib\site-packages\bayes_opt\bayesian_optimization.py:288, in BayesianOptimization.maximize(self, init_points, n_iter, acquisition_function, acq, kappa, kappa_decay, kappa_decay_delay, xi, **gp_params) 286 old_params_used = any([param is not None for param in [acq, kappa, kappa_decay, kappa_decay_delay, xi]]) 287 if old_params_used or gp_params: --> 288 raise Exception('\nPassing acquisition function parameters or gaussian process parameters to maximize' 289 '\nis no longer supported. Instead,please use the "set_gp_params" method to set' 290 '\n the gp params, and pass an instance of bayes_opt.util.UtilityFunction' 291 '\n using the acquisition_function argument\n') 293 if acquisition_function is None: 294 util = UtilityFunction(kind='ucb', 295 kappa=2.576, 296 xi=0.0, 297 kappa_decay=1, 298 kappa_decay_delay=0) Exception: Passing acquisition function parameters or gaussian process parameters to maximize is no longer supported. Instead,please use the "set_gp_params" method to set the gp params, and pass an instance of bayes_opt.util.UtilityFunction using the acquisition_function argument "set_gp_params" method을 사용하라고 하는데gpt에 물어봐도 제대로 된 코드를 주지 않아서 어려움이 있습니다. 제가 설치한 라이브러리는 아래 목록과 같습니다..Package Version ---------------------------- ------------ absl-py 2.1.0 anyio 3.5.0 archspec 0.2.1 argon2-cffi 21.3.0 argon2-cffi-bindings 21.2.0 asttokens 2.0.5 astunparse 1.6.3 async-lru 2.0.4 attrs 23.1.0 Babel 2.11.0 bayesian-optimization 1.4.3 beautifulsoup4 4.12.2 bleach 4.1.0 boltons 23.0.0 Brotli 1.0.9 cachetools 5.3.2 certifi 2023.11.17 cffi 1.16.0 charset-normalizer 2.0.4 colorama 0.4.6 comm 0.1.2 conda 23.11.0 conda-content-trust 0.2.0 conda-libmamba-solver 23.12.0 conda-package-handling 2.2.0 conda_package_streaming 0.9.0 contourpy 1.2.0 cryptography 41.0.7 cv 1.0.0 cycler 0.12.1 debugpy 1.6.7 Note: you may need to restart the kernel to use updated packages. decorator 5.1.1 defusedxml 0.7.1 distro 1.8.0 executing 0.8.3 fastjsonschema 2.16.2 flatbuffers 23.5.26 fonttools 4.47.2 gast 0.5.4 google-auth 2.26.2 google-auth-oauthlib 1.2.0 google-pasta 0.2.0 grpcio 1.60.0 h5py 3.10.0 idna 3.4 ipykernel 6.25.0 ipython 8.20.0 ipywidgets 8.0.4 jedi 0.18.1 Jinja2 3.1.2 joblib 1.3.2 json5 0.9.6 jsonpatch 1.32 jsonpointer 2.1 jsonschema 4.19.2 jsonschema-specifications 2023.7.1 jupyter 1.0.0 jupyter_client 8.6.0 jupyter-console 6.6.3 jupyter_core 5.5.0 jupyter-events 0.8.0 jupyter-lsp 2.2.0 jupyter_server 2.10.0 jupyter_server_terminals 0.4.4 jupyterlab 4.0.8 jupyterlab-pygments 0.1.2 jupyterlab_server 2.25.1 jupyterlab-widgets 3.0.9 keras 2.15.0 kiwisolver 1.4.5 libclang 16.0.6 libmambapy 1.5.3 lightgbm 4.3.0 Markdown 3.5.2 MarkupSafe 2.1.3 matplotlib 3.8.2 matplotlib-inline 0.1.6 menuinst 2.0.1 mistune 2.0.4 ml-dtypes 0.2.0 nbclient 0.8.0 nbconvert 7.10.0 nbformat 5.9.2 nest-asyncio 1.5.6 notebook 7.0.6 notebook_shim 0.2.3 numpy 1.26.3 oauthlib 3.2.2 opencv-python 4.9.0.80 opt-einsum 3.3.0 overrides 7.4.0 packaging 23.1 pandas 2.2.0 pandocfilters 1.5.0 parso 0.8.3 pillow 10.2.0 pip 23.3.2 platformdirs 3.10.0 pluggy 1.0.0 ply 3.11 prometheus-client 0.14.1 prompt-toolkit 3.0.43 protobuf 4.23.4 psutil 5.9.0 pure-eval 0.2.2 pyasn1 0.5.1 pyasn1-modules 0.3.0 pycosat 0.6.6 pycparser 2.21 Pygments 2.15.1 pyOpenSSL 23.2.0 pyparsing 3.1.1 PyQt5 5.15.10 PyQt5-sip 12.13.0 PySocks 1.7.1 python-dateutil 2.8.2 python-json-logger 2.0.7 pytz 2023.3.post1 pywin32 305.1 pywinpty 2.0.10 PyYAML 6.0.1 pyzmq 25.1.0 qtconsole 5.5.0 QtPy 2.4.1 referencing 0.30.2 requests 2.31.0 requests-oauthlib 1.3.1 rfc3339-validator 0.1.4 rfc3986-validator 0.1.1 rpds-py 0.10.6 rsa 4.9 ruamel.yaml 0.17.21 scikit-learn 1.4.0 scipy 1.12.0 Send2Trash 1.8.2 setuptools 68.2.2 sip 6.7.12 six 1.16.0 sniffio 1.3.0 soupsieve 2.5 stack-data 0.2.0 tensorboard 2.15.1 tensorboard-data-server 0.7.2 tensorflow 2.15.0 tensorflow-estimator 2.15.0 tensorflow-intel 2.15.0 tensorflow-io-gcs-filesystem 0.31.0 termcolor 2.4.0 terminado 0.17.1 threadpoolctl 3.2.0 tinycss2 1.2.1 tornado 6.3.3 tqdm 4.65.0 traitlets 5.7.1 truststore 0.8.0 typing_extensions 4.7.1 tzdata 2023.4 urllib3 1.26.18 wcwidth 0.2.5 webencodings 0.5.1 websocket-client 0.58.0 Werkzeug 3.0.1 wheel 0.41.2 widgetsnbextension 4.0.5 win-inet-pton 1.1.0 wrapt 1.14.1 xgboost 2.0.3 zstandard 0.19.0 궁극적인 질문은앞으로 파이썬은 계속 업데이트가 될텐데 그때마다어디를 찾아봐야하는지 어떻게 검색해야하는지에 관해서도 알려주시면 감사하겠습니다..
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
Bayesian Optimization LightGBM 적용
import numpy as npfrom xgboost import XGBClassifierfrom bayes_opt import BayesianOptimizationfrom sklearn.model_selection import cross_val_scorepbounds = { 'learning_rate': (0.01, 0.5), 'n_estimators': (100, 1000), 'max_depth': (3, 10), 'min_child_weight': (0, 10), 'subsample': (0.5, 1.0), 'colsample_bytree': (0.5, 1.0) # 'reg_lambda': (0, 1000), # 'reg_alpha': (0, 1.0)}def lgbm_hyper_param(learning_rate, n_estimators, max_depth, min_child_weight, subsample, colsample_bytree): max_depth = int(max_depth) n_estimators = int(n_estimators) clf = LGBMClassifier( max_depth=max_depth, min_child_weight=min_child_weight, learning_rate=learning_rate, n_estimators=n_estimators, subsample=subsample, colsample_bytree=colsample_bytree, random_state=1 # reg_lambda=reg_lambda, # reg_alpha=reg_alpha ) return np.mean(cross_val_score(clf, train_importance, train_answer, cv=5, scoring='accuracy')) # cv 도 숫자로 작성하여, 내부적으로 (Stratified)KFold 사용함optimizer = BayesianOptimization( f=lgbm_hyper_param, pbounds=pbounds, verbose=1, random_state=1)optimizer.maximize(init_points=10, n_iter=100, acq='ei', xi=0.01)에서| iter | target | colsam... | learni... | max_depth | min_ch... | n_esti... | subsample | ------------------------------------------------------------------------------------------------- [LightGBM] [Info] Number of positive: 273, number of negative: 439 [LightGBM] [Info] Auto-choosing row-wise multi-threading, the overhead of testing was 0.000185 seconds. You can set force_row_wise=true to remove the overhead. And if memory is not enough, you can set force_col_wise=true. [LightGBM] [Info] Total Bins 90 [LightGBM] [Info] Number of data points in the train set: 712, number of used features: 45 [LightGBM] [Info] [binary:BoostFromScore]: pavg=0.383427 -> initscore=-0.475028 [LightGBM] [Info] Start training from score -0.475028 [LightGBM] [Warning] No further splits with positive gain, best gain: -inf [LightGBM] [Warning] No further splits with positive gain, best gain: -inf [LightGBM] [Warning] No further splits with positive gain, best gain: -inf [LightGBM] [Warning] No further splits with positive gain, best gain: -inf [LightGBM] [Warning] No further splits with positive gain, best gain: -inf [LightGBM] [Warning] No further splits with positive gain, best gain: -inf [LightGBM] [Warning] No further splits with positive gain, best gain: -inf [LightGBM] [Warning] No further splits with positive gain, best gain: -inf같은 오류가 발생합니다...
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
하이퍼 파라미터 튜닝 기법 적용하기 실행값이 미묘하게 달라요.
사소하긴 한데, 궁금해서 질문 남겨요.위의 코드를 실행하면 svc 실습 동영상에 나온 값과 약간의 차이가 있어서요. 컴퓨터 성능에 따라서 값의 차이가 미묘하게 다를 수 있나요? 통계패키지도 가끔 돌릴때마다 값이 미묘하게 달라지기는 한데, 그 이유를 조금 구체적으로 알고 싶어서요. 참고로 저는 m1 chip mac을 사용중입니다.
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
중복된 코드 수정 요청 - 자전거 공유 문제 이해와 EDA3
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. [자전거 공유 문제 이해와 EDA3]아래의 코드에서 7, 8에 대한 코드가 중복되었습니다.결과는 7이 건너뛰어져 8로 입력되어 전체적인 맥락에는 영향을 미치지 않을 것으로 생각됩니다.df_all.loc[(df_all['windspeed'] > 35) & (df_all['windspeed'] <= 40), 'windspeed_category'] = 7 df_all.loc[(df_all['windspeed'] > 35) & (df_all['windspeed'] <= 40), 'windspeed_category'] = 8
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
강의 중 에러 질문
다르게 적용해보는 Feature Engineering15:50df_all['Age'] = df_all.groupby(['Title', 'Pclass'])['Age'].apply(lambda x: x.fillna(x.median()))에서 아래와 같은 에러가 뜹니다. 11613 if not value.index.is_unique: 11614 # duplicate axis 11615 raise err 11616 > 11617 raise TypeError( 11618 "incompatible index of inserted column with frame index" 11619 ) from err 11620 return reindexed_value TypeError: incompatible index of inserted column with frame index 이전 챕터에서 df_all["Age"].fillna(df_all.groupby(['Title', 'Pclass'])["Age"].transform("median"), inplace=True)위와 같은 진행했었던 기억이 있는데 비슷한 맥락이 맞나요?아직 모르는게 많아서 강의자료에서 에러가 뜨면 턱턱 막히네요.... 😢
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
cross_val_score 에러
강의 자료 104 / 106 관련 질문입니다. 104: K-Fold 테스트 안녕하세요 현재 맥북 m2 pro 칩으로 강의를 듣고 있습니다.아래와 같은 에러 나오는데 혹시 해결 방법을 알 수 있을까요?/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/sklearn/neighbors/_classification.py:228: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples,), for example using ravel(). return self._fit(X, y)/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/sklearn/model_selection/_validation.py:842: UserWarning: Scoring failed. The score on this train-test partition for these parameters will be set to nan. Details: Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/sklearn/metrics/_scorer.py", line 136, in call score = scorer._score(... 에러 찾다가 못찾고 일단 다음 강의 듣다가 106 자료에서 KNN, Random Forest, Extra Trees 에서 동일 에러가 발생하는 것 같습니다... 일단 강의 듣는걸 멈추고 에러부터 해결해야겠습니다... ㅠㅠ
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
강의자료 문의
머신러닝 배경지식: 머신러닝 모델과 성능평가의 이해의 설명해주시는 마크다운 파일(01-RECOGNITION.md)은 학습자료에 미포함인가요?시간될 때 마다 읽어보고 싶어서 문의드립니다!
- 해결됨처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
RMSLE의 사용에 관한 질문입니다
머신러닝 적용을 위한 Feature Engineering 강의 10:10 부분에서 질문 드립니다!이번 강의에서는 RMSLE 계산을 위해 아래와 같이 함수를 만들었습니다.def get_rmsle(y_actual, y_pred): diff = np.log(y_pred + 1) - np.log(y_actual + 1) mean_error = np.square(diff).mean() return np.sqrt(mean_error) 그리고 이를 rmsle_scorer 객체로 만든 후rmsle_scorer = make_scorer(get_rmsle, greater_is_better=False)GridSearchCV 의 scoring에 넣어줬는데요,lasso_grid=GridSearchCV(estimator = Lasso(), param_grid = hyperparams, verbose=True, scoring=rmsle_scorer, cv=5, n_jobs=-1) 전에 강의에서는 RMSLE를 계산하기 위해 아래와 같은 과정을 거쳤던 것이 생각났습니다.from sklearn.metrics import mean_squared_log_error print("RMSLE:", np.sqrt(mean_squared_log_error(y_true, y_pred))) 이번 강의에서 np.sqrt(mean_squared_log_error(y_true, y_pred)) 를 사용하지 않고, RMSLE를 계산하기 위한 함수를 따로 만든 이유는 GridSearchCV의 scoring에 적용을 하기 위함이라고 이해하면 되는 것인지 궁금합니다! 그리고, 함수를 필수적으로 만들어야 한다면def get_rmsle(y_actual, y_pred): return np.sqrt(mean_squared_log_error(y_true, y_pred)) 와 같은 형식으로 함수를 만들 수도 있는 것인지 여쭙고 싶습니다!
- 해결됨처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
머신러닝 적용을 위한 Feature Engineering 강의 질문입니다
머신러닝 적용을 위한 Feature Engineering 강의 8:20 부분에서 질문입니다!!EDA를 통해 humidity와 대여량의 관계를 그래프로 파악했을 때, humidity가 70 이상일 때 대여량이 크게 감소하는 것을 파악했고, 이를 기반으로 humid 컬럼을 만들었습니다.이때, humid 컬럼의 값이 1 이면 humidity가 70 이상으로, 습한 날씨이며, 결국 자전거를 타기에 '좋은 날씨는 아니다 '라는 의미로 이해를 하였는데요위에서 fit 컬럼을 만들 때에는 값이 1일 때, 자전거를 타기 '좋은 날씨이다' 라고 표현을 하였던 것과 반대라는 것이 눈에 띄었습니다.이렇게 feature engineering을 진행할 때, 척도의 의미가 컬럼별로 달라도 관계가 없는 것인지 궁금합니다!!보통 설문지 문항에서 척도의 의미가 다른 경우, 역코딩을 했던 기억이 있는데, 머신러닝의 경우에는 다른 것인지 여쭙고 싶습니다..!
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
'KNeighborsClassifier'만 nan으로 나오는 이유를 모르겠습니다...
knn_model = KNeighborsClassifier() logreg_model = LogisticRegression() svc_model = SVC() decision_model = DecisionTreeClassifier() random_model = RandomForestClassifier() extra_model = ExtraTreesClassifier() gbm_model = GradientBoostingClassifier() nb_model = GaussianNB() xgb_model = XGBClassifier(eval_metric='logloss') lgbm_model = LGBMClassifier() models = [ knn_model, logreg_model, svc_model, decision_model, random_model, extra_model, gbm_model, nb_model, xgb_model, lgbm_model ] k_fold = KFold(n_splits=10, shuffle=True, random_state=0) # K-Fold 사용 results = dict() for alg in models: alg.fit(X_train, y_train) score = cross_val_score(alg, X_train, y_train.values.ravel(), cv=k_fold, scoring='accuracy') results[alg.__class__.__name__] = np.mean(score)*100 위 코드를 실행한 후 results를 출력해보면 아래처럼 KNeighborsClassifier 모델만 nan값이 나오는데 그 이유를 모르겠습니다.. 혹시 몰라 아래 코드처럼neighbor 수를 지정해서 돌려봐도 nan 결과가 뜨는데 이유가 있을까요...??다른 모델들도 다 안되면 데이터 문제인가 싶을텐데, knn 모델만 그래서 원인이 감이 잡히지 않습니다ㅜ knn_model = KNeighborsClassifier(n_neighbors = 3)
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
다르게 적용해보는 Feature Engineering2 강의 질문입니다
다르게 적용해보는 Feature Engineering2 강의의 15:13 부분에서 질문입니다강의에서는 mean_survival_rate = np.mean(df_train['Survived'])와 같이 df_train 데이터프레임 Survived 컬럼의 값에 대해 평균을 구하고이를 생존할 확률 이라고 정의하였습니다. 저는 Survived 컬럼의 값은 0과 1로만 이루어져 0은 사망, 1은 생존 이라는 의미를 나타내는 명목 척도로 이해하였는데요,이에 대해 평균을 내면서 값을 구하는 것이 확률로써의 의미를 가질 수 있다는 것이 조금 이해가 되지 않습니다.제가 잘못 받아들이고 있는 것인지 좀 더 보충 설명 해주시면 너무 감사할 것 같습니다!
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
다르게 적용해보는 Feature Engineering2 강의에서 질문입니다
다르게 적용해보는 Feature Engineering2 강의의 15:11 부분부터 궁금한 점이 있어 질문 올립니다.해당 강의에서는 다음과 같이 2개의 리스트를 작성하였는데요family_survival_rate = list() family_survival_rate_NA = list()동승자가 있는지/없는지를 기준으로 2개의 리스트에 값을 각각 넣어준다는 전체적인 과정은 이해했지만, 사실 family_survival_rate_NA 리스트는 어떤 이유로 존재하는 것인지에 대한 설명이 조금 필요한 것 같습니다. family_survival_rate = list() mean_survival_rate = np.mean(df_train['Survived']) # 0.3838383838383838 for i in range(len(df_all)): if df_all['Family_Name'][i] in family_rates: # 동승자가 있는 경우 family_survival_rate.append(family_rates[df_all['Family_Name'][i]]) # family_rates[df_all['Family_Name'][i]] -> family_rates 딕셔너리에서 위의 이름들을 키 값으로 하고, 이에 해당하는 Survived 값을 찾음 else: # 동승자가 없는 경우 family_survival_rate.append(mean_survival_rate) 동승자가 있으면 family_survival_rate 리스트에 Survived 컬럼의 생존 확률을 넣고, 동승자가 없으면 family_survival_rate 리스트에 생존 확률의 평균값을 넣어주면 충분한 것 아닌가 하는 생각이 드는데요, family_survival_rate_NA 리스트가 어떤 용도로 사용되는 것인지, 그리고 왜 값은 0과 1만을 넣는 것인지 조금 더 설명해 주시면 감사할 것 같습니다!!
- 해결됨처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
하이퍼 파라미터 튜닝 기법 적용하기1(XGBoost 실습) 강의에서 질문입니다
하이퍼 파라미터 튜닝 기법 적용하기1(XGBoost 실습) 강의에서 질문입니다.해당 강의 7:28 부근에서 pbounds에 들어간 하이퍼 파라미터에 대해 설명을 해주셨는데요,pbounds = { 'learning_rate': (0.01, 0.5), 'n_estimators': (100, 1000), 'max_depth': (3, 10), 'min_child_weight': (0, 10), 'subsample': (0.5, 1.0), 'colsample_bytree': (0.5, 1.0), 'gamma': (0, 5) # 'reg_lambda': (0, 1000, 'log-uniform'), # 'reg_alpha': (0, 1.0, 'log-uniform') }아래에 있는 reg_Lambda와 reg_alpha는 왜 주석 처리를 하고, 사용하지 않았는지 궁금합니다!
- 해결됨처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
우도, 사후 확률 예제에 질문 있습니다
안녕하세요. 우도는 P(필기체 0 | 0) 으로 표기하고사후 확률은 P(0 | 필기체 0) 이라고 말씀 하셨는데요. 머신러닝으로 학습한 모델이 추론할 때는, 필기체0(원인)을 보고 이것이 0인지 판단(결과) 하므로,우도: P(0 | 필기체 0)사후 확률: P(필기체 0 | 0)이 되어야 하지 않는지 질문 드립니다.
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
머신러닝 회귀 모델 사용법 익히기1 (Linear, Lasso, Ridge 질문입니다
강의 11:02 에서 실행하는lasso_grid.fit(X_train, y_train) 는 모델의 최적의 하이퍼파리미터를 찾기 위해서 실행을 하고,그렇게 찾은 최적의 하이퍼 파라미터를 반영한 모델을lasso_model = lasso_grid.best_estimator_을 통해서 생성하고 생성한 모델을ml_pred = predict_bikecount(lasso_model, ml_columns)을 통해서 학습시키는 것으로 이해했습니다. 그런데 영상 4분18초 쯤에는lr_model = LinearRegression()로 모델을 생성한 다음 따로 best parameter를 얻지 않고 바로ml_pred = predict_bikecount(lr_model, ml_columns)을 실행시킵니다. 여기서 생기는 질문이lasso_grid.fit(X_train, y_train) 을 통해서 이미 학습을 했는데predict_bikecount 함수 내에 있는casual_model = model.fit(X_train, y_train_cas) 을 통해서 학습을 왜 한 번 더 하는 것인지 잘 이해가 되지 않습니다.predict_bikecount 내에 있는 casual_model = model.fit(X_train, y_train_cas)과 registered_model = model.fit(X_train, y_train_reg)는 결과값들이 y_train_cas과 y_train_reg으로 학습에 사용되는 결과값이 'count'와 다르므로, 한번 학습 후 얻은 최적의 하이퍼파라미터를 가진 모델로 재트레이닝시키는 과정으로 이해하면 되나요?LinearRegression()에서는 왜 따로 best parameter를 계산하지 않는지 궁금합니다.
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
Age 컬럼의 결측치 수정에 관한 질문입니다
"다르게 적용해보는 Feauture Engineering 1" 강의 5분 40초 부분에서,df_all.groupby(['Title', 'Pclass'])['Age'].median()다음과 같이 Title과 Pclass 컬럼을 이용하여 그룹화를 하고, 중간값을 이용하여 Age 컬럼의 결측치를 채워 넣는 과정을 진행하였습니다. 여기서 궁금증이 생긴 부분은, "왜 'Pclass' 컬럼까지 이용을 해서 그룹화를 하는가" 인데요,해당 강의 전의 Feature Engineering 과정에서 '이름' 과 관련된 데이터와, 나이는 어느 정도 관련이 있음을 파악하였지만Pclass 데이터는 나이와 어떠한 관련이 있는지 잘 파악이 되지 않습니다... 어떠한 이유로 Pclass 컬럼을 이용하여 나이의 결측치를 유추하였는지 그 이유가 궁금합니다!
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
주요 회귀 머신러닝 모델과 Regularization(정규화) 이해하기 질문입니다
해당 수업시간에 배운 Regularization 에 이전 시간에 배운 스케일링이 포함되는 것인가요? 1번 질문이 맞다면 이전에 실습한 타이타닉에서 사용되는 다양한 분류형 모델들에도 L2 regularization 등과 같은 정규화를 적용할 수 있는 것인가요?
- 미해결처음하는 파이썬 머신러닝 부트캠프 (쉽게! 실제 문제로 개념/활용 익히기) [데이터과학 Part2]
자전거 공유 문제 이해와 EDA1 에서 슬라이싱 관련 질문입니다
자전거 공유 문제 이해와 EDA1 강의 11분 30초 부분에서df_train = df_all[:10885] df_test = df_all[10886:]위와 같이 train, test 데이터를 분리하셨는데요df_train 데이터프레임은 원래 10886개의 행, 즉 아래의 사진과 같이 구성되어 있었습니다.반면, df_train = df_all[:10885]이와 같이 데이터프레임을 분리한 결과, 총 10885 개의 행으로 줄어들면서 하나의 행이 빠진 모습을 보였습니다. 코드를 다음과 같이 수정하는 것이 맞는 것 같아서 질문 드립니다!df_train = df_all[:10886]