월 19,800원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
경사하강법 계산시 w1,w0_update
업데이트 계산에서 기존의 w0과 w1에 업데이트 부분을 더해줘야 하는 것 아닌가요? 이미 음의 부호가 업데이트 인자들에 붙어 있는데 또 subtract를 해주는 이유가 궁금합니다.
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
InvocieDate 피처가 변경된거 같습니다
Recency 피처의 마지막 가공 때 2011년 12월 10일에서 Recency 피처를 빼려고 보니 Recency 피처가 문자형으로 되어있어서 확인해보니 강사님 데이터에서는 처음에 InvoiceDate 피처가 datetime형으로 되어있는데 제꺼는 Object로 변경되어 있네요. 아마 Recency 피처 혹은 InvoiceDate 피처를 datetime형으로 변경하는 코드가 필요할 것 같습니다! 그게 아니라면 제가 기존 엑셀 파일을 csv파일로 변경하고 로딩하는 과정에서 변경되었는지 혹은 원본 데이터가 변경된건지 궁금합니다.
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
target 값에 대한 transformation
안녕하세요 강사님, 좋은 강의와 친절한 설명 항상 감사합니다. target 값에 대한 transformation에 대한 이유가 선형 회귀의 가정(예측 오류값이 정규분포 형태를 가진다)을 따르기 위해서라고 말씀하셨습니다. 그렇다면 선형 회귀 기반의 L1 L2가 아닌 tree-based model (Randomforest, XGBoost)에 대해서는 y 값에 대해 transformation을 할 필요가 없는 것인가요? 그 이유는 tree model은 선형성을 가정으로 하지 않고 각 node가 각 변수에 대한 condition을 기준으로 Yes/No에 따라 split하기 때문인가요?
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
KFOLD의 For 구문 작성시 DATAFRAME 적용 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. features와 lable 인자가 DataFrame 형태로 넣었을 때 해당 코드를 돌려보면 accuaracy 값이 3번 모두 1.0이 나옵니다. DataFrame을 인자로 받을 때는 인덱싱을 어떻게 진행해야되는지 알고 싶습니다. featues = iris_df[ :, :-1 ] labels = iris_df["label"] for train_index, test_index in skfold. split( features, labels ) : X_train, y_train = features. iloc[train_index], labels. iloc[train_index] X_test, y_test = features. iloc[test_index], labels. iloc[test_index] dt_clf.fit(X_train,y_train) pred= dt_clf.predict(X_test) accuracy= np.round(accuracy_score(y_test, pred),4 )
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
GBM 실습 시 걸리는 시간
안녕하세요, 선생님 강의를 들으면서 4.5절 GBM을 수행하면 790초가 걸립니다. 그리고 그 밑에 GridSearchCV를 사용하면 2시간이 지나도 결과가 나오지 않습니다... 선생님의 생각을 여쭙고자 글 남깁니다.
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
xgboost regressor 알고리즘을 사용할때 feature_names must be unique error
19분 40초쯤 다양한 회귀트리 알고리즘을 이용해서 예측하는 부분인데 xgboost를 이용할때 feature_names must be unique라는 에러가 뜨네요. 이곳저곳 원인을 찾아봤지만 잘 모르겠습니다ㅜㅜ.
- 해결됨[개정판] 파이썬 머신러닝 완벽 가이드
<추가질문> RMSE vs. RMSLE vs. MAE
답변 감사드리고 지난 질문에서 강사님이 이해하지 못하신 부분에 대해 다시 설명드립니다. 첫번째 재질문 전 범위의 y 값에 걸쳐서 비슷한 오차(|actual - pred|)가 나타나면 RMSLE와 RMSE의 값은 비슷하게 떨어진다 => 어떤 질문 내용인지는 대강 알겠는데, 비슷한 오차와 RMSLE와 RMSE값이 비슷하게 떨어진다는 것이 잘 매칭이 안되는군요. 다시한번 정의 부탁드립니다. => => 모델의 RMSE와 RMSLE가 둘 다 같은 값 (e.g. RMSE=RMSLE=0.4)을 가질 경우, "모델이 크게 잘못 예측한 것이 없다"라고 해석하면 되는 걸까요? 반대로 RMSE > RMSLE인 경우, RMSE는 크게 잘못 예측한 건에 대해 Penality를 주기 때문에 "모델이 크게 잘못한 경우가 있다"라고 해석을 하면 될까요? 두번째 재질문 2. 위의 2)와 같은 경우, Y의 값이 작은 경우에는 기존 모델을 통해 예측하고, Y의 값이 큰 경우 (기존 모델이 잘 예측하지 못하는 값들)에 대해서는 새로운 모델을 만드는 방법도 가능한가요? 아니면 새로운 모델을 만들기보다 LGBM 같은 leaf-wise 기법을 통해 Y의 값이 큰 경우 leaf node를 더 만듦으로써 해결이 가능하다고 생각하면 될까요? => 질문을 잘 이해못했습니다. 하나의 데이터를 기반으로 Y값에 따라서 동적으로 모델을 두개를 만든다는 것인지요? 새로운 모델을 만든다는게 어떤 의미인지요? 좀 더 자세히 말씀해 주셨으면 합니다. =>=> 하나의 데이터를 기반으로 Y값에 따라서 동적으로 모델을 두개 만드는 것에 대한 의미의 질문이었습니다. 낮은 Y값에 대한 오차는 적은데 Y값이 큰 경우 오차가 크다면, 이를 분리해서 Y가 낮은 경우에는 A모델을 Y가 큰 경우에는 B모델을 만들어도 되는지에 대한 궁금증이었습니다. 이러한 문제를 leaf-wise 형태의 LGBM은 B모델을 따로 만들 필요없이 leaf를 추가적으로 생성함으로써 해결하는 것인지 궁금합니다. 번외로 대댓글로 재질문을 드릴 경우, 강사님께서 미처 확인을 하기 어려우시다면 질문을 따로 만드는 게 혹시 답변하시는데 더 편하신지 알려주시면 감사하겠습니다 :)
- 해결됨[개정판] 파이썬 머신러닝 완벽 가이드
<추가질문> Binary 변수의 coefficient 해석
강사님, 항상 친절한 답변 정말 감사드립니다. 이전 질문(Binary 변수의 coefficient 해석 및 L1/L2 가정)에 대한 후속 질문입니다. "연속값의 경우 회귀 계수의 + / - 에 따라 Y가 늘어나거나 (+) 줄어든다 (-)"라고 해석 할 수 있지만, "일반코드 값을 원-핫 인코딩한 회귀 계수값은 -냐, +냐에 따라서 y의 값이 줄어들거나 (-) 혹은 늘거나 (+) 하는 것은 아니고 coefficient의 절댓값만을 해당 feature의 "영향도"이다"라고 해석하는 것이 맞을까요? "물론 회귀 계수값이 - 냐, + 냐에 따라서 당연히 타겟값에 영향을 미치겠지만" 라는 강사님의 이전 답변에서는 coefficient의 + / - 값이 y 값을 똑같은 방향성 (+ / -) 으로 영향을 미친다라고 말씀하시는 것 같아 헷갈려서 질문드립니다. 감사합니다!
- 해결됨[개정판] 파이썬 머신러닝 완벽 가이드
원-핫 엔코딩 vs. 인터벌
강사님 안녕하세요, 16:50에서 선형회귀의 경우 코드값들에 대해서 원-핫 엔코딩을 하는 게 중요하다고 하셨는데, Hour 같은 경우 원-핫 엔코딩 대신 도메인 지식을 활용해서 출퇴근시간(7-10am & 4pm-7pm), 낮시간, 밤시간과 같이 interval로 된 변수를 만들어도 괜찮나요? 이 또한 원-핫 엔코딩만 가진 model 따로, interval 변수로 된 model 따로, 혹은 원-핫 엔코딩과 interval 변수를 둘 다 가진 model을 세 개 다 만들어서 보고 그 중 가장 성능이 좋은 model을 택하면 되는 것인가요? 마지막처럼 하면 피쳐가 늘어남으로써 over-fitting되는 curse of dimensionality가 우려되고 interval 변수와 OHE변수들과의 multi-collinearity 문제가 우려되는데 이는 어떻게 해결하나요? 이 또한 퍼포먼스만 좋으면 괜찮은걸까요? 답변 감사합니다 )_ㅇ_(
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
RMSE vs. RMSLE vs. MAE
강사님, 명절 잘 보내셨길 바랍니다 :) 이전 수강생 (휴식중인 전복님)의 RMSE와 RMSLE에 대한 차이점에 대한 질문에 답변을 보고 제가 이해를 한게 맞는지 확인하고 추가적인 질문을 드리려고 합니다. 우선 제가 이해한 것들인데 틀리다면 정정 부탁드립니다. 전 범위의 y 값에 걸쳐서 비슷한 오차(|actual - pred|)가 나타나면 RMSLE와 RMSE의 값은 비슷하게 떨어진다. 하지만 Y의 범위가 1~1000이라고 할 때, 1~10 사이에서는 오류가 적지만 900~1000 사이에서 오류에 값이 커질 경우, RMSLE는 Y의 크기에 따라 크게 바뀌지 않지만, RMSE는 크게 좌우된다. 이를 바탕으로 제가 궁금한 점은 아래와 같습니다. 위의 2)와 같은 경우, RMSE를 모델의 eval_metric으로 쓰는게 business관점에서 더 타당할까요? 만약 주택가격과 같은 경우, 아무리 낮은 주택가격을 잘 맞춘다고 하더라도 비싼 주택가격을 한 번 잘못 예측했을 때 cost가 너무 커지기 때문에 RMSE를 eval_metric으로 선택하여 RMSE를 줄이는 것을 최우선으로 해야할까요? 아니면 다른 더 용이한 metric이 있을까요? 위의 2)와 같은 경우, Y의 값이 작은 경우에는 기존 모델을 통해 예측하고, Y의 값이 큰 경우 (기존 모델이 잘 예측하지 못하는 값들)에 대해서는 새로운 모델을 만드는 방법도 가능한가요? 아니면 새로운 모델을 만들기보다 LGBM 같은 leaf-wise 기법을 통해 Y의 값이 큰 경우 leaf node를 더 만듦으로써 해결이 가능하다고 생각하면 될까요? "RMSE와 RMSLE의 경우 직관적인 해석이 어려운 반면 MAE는 전체오차의 평균을 Y (타겟변수)와 같은 unit으로 보여주기 때문에 직관적인 이해가 가능하다"라고 이해하고 있습니다. 주택가격 예측의 경우, MAE가 400이 나왔다면, "우리 모델의 전체 오류의 평균은 $400 이다. 즉 우리 모델이 새로운 주택들(10000만개)의 가격을 예측할 경우 평균적으로 $400의 오차가 있다."라고 해석하면 될까요? 모델을 eval_metric=RMSE로 만들었는데 다른 metric (RMSLE, MAE) 등으로 모델의 퍼포먼스를 비교해도 되나요? 항상 감사합니다! 올해도 건강하세요~!
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
log 변환을 하는 이유
데이터 분석을 하던 중 target 값이 왜 로그변환이 되어야 하는지 잘 모르겠습니다. 왜 로그 변환을 하는 것인가요?
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
Binary 변수의 coefficient 해석 및 L1/L2 가정
안녕하세요 친절한 강의와 설명 감사합니다! 두가지 질문이 있습니다. 1) Binary 변수의 coefficient를 어떻게 해석하는지 궁금합니다. 예를 들어, L1/L2 Regression model에서 Hour_20 변수의 coefficient = -0.3 일 경우, 20시일 때 자전거 대여수가 줄어든다 Hour_9 변수의 coefficient =0.5 일 경우, 오전 9시에 자전거 대여수가 늘어난다. Hour_6 변수의 coefficient = 0.0001 일 경우, 오전 6시는 자전거 대여수에 거의 영향을 주지 않는다. 와 같이 해석을 하는 것이 맞을까요? 보다 구체적인 해석이 가능한지 알려주시면 감사하겠습니다! 2) Linear regression은 Linearity - 선형성 Independent data points - 독립성 Normality - 정규성 Equal variance - 등분산성 No multi-collinearity - 다중공선성 와 같은 가정을 따라야 하는 것으로 알고 있습니다. L1과 L2 또한 Linear regression와 동일한 가정을 따라야 하는 것으로 알고 있는데 해당 Bike Demand 예제에서는 따로 가정을 검증하지 않고 바로 모델링을 한 것 같습니다. 2-1) 특별히 하지 않은 이유가 있는지 궁금하고, 하지 않아도 된다면 그 이유에 대해 설명해주시면 감사하겠습니다. 2-2) 가정 검증을 해야하는 것이라면 강의 예제처럼 검증을 하지 않은 경우, 모델의 타당성에 대해 의문을 제기할 수 있는지도 알려주시면 감사하겠습니다. 2-3) 가정 검증에 대한 강의 내용은 어디서 찾을 수 있을까요? 좋은 강의 내용과 친절한 답변 감사합니다 ^^
- 해결됨[개정판] 파이썬 머신러닝 완벽 가이드
XGBoost & LGBM 테스트 셋에 평가
안녕하세요, 친절한 답변과 강의 감사합니다. 해당 강의와 코드에서 L1, L2에서는 get_rmses 와 get_rsme 매쏘드을 통해 test 데이터 (y_test)에 대한 검증을 진행하는데 XGBoost와 LGBM에서는 training, test 데이터를 나눴음에도 불구하고, get_best_params 매쏘드을 통해 test 데이터 (y_test)에 대한 검증을 진행하지 않고 original data인 house_df_ohe에 검증을 하는 것이 궁금해서 질문 드립니다. 혹시 제가 코드를 잘못 해석하고 있는 것이라면 정정해주시면 감사하겠습니다 ^^
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
1) Binary 변수의 coefficient 해석 2) L1, L2 가정
안녕하세요 친절한 강의와 설명 감사합니다! 두가지 질문이 있습니다. 1) Binary 변수의 coefficient를 어떻게 해석하는지 궁금합니다. 예를 들어, L1/L2 Regression model에서 Hour_20 변수의 coefficient = -0.3 일 경우, 20시일 때 자전거 대여수가 줄어든다 Hour_9 변수의 coefficient =0.5 일 경우, 오전 9시에 자전거 대여수가 늘어난다. Hour_6 변수의 coefficient = 0.0001 일 경우, 오전 6시는 자전거 대여수에 거의 영향을 주지 않는다. 와 같이 해석을 하는 것이 맞을까요? 보다 구체적인 해석이 가능한지 알려주시면 감사하겠습니다! 2) Linear regression은 Linearity - 선형성 Independent data points - 독립성 Normality - 정규성 Equal variance - 등분산성 No multi-collinearity 와 같은 가정을 따라야 하는 것으로 알고 있습니다. L1과 L2 또한 Linear regression와 동일한 가정을 따라야 하는 것으로 알고 있는데 해당 Bike Demand 예제에서는 따로 가정을 검증하지 않고 바로 모델링을 한 것 같습니다. 2-1) 특별히 하지 않은 이유가 있는지 궁금하고, 하지 않아도 된다면 그 이유에 대해 설명해주시면 감사하겠습니다. 2-2) 가정 검증을 해야하는 것이라면 강의 예제처럼 검증을 하지 않은 경우, 모델의 타당성에 대해 의문을 제기할 수 있는지도 알려주시면 감사하겠습니다. 2-3) 가정 검증에 대한 강의 내용은 어디서 찾을 수 있을까요? 좋은 강의 내용과 친절한 답변 감사합니다 ^^
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
텍스트 분석 (텍스트 분류) 관련해서 일반적인 질문드립니다.
안녕하세요? 강의 잘 수강하고 있습니다. 다름이 아니라 제가 진행하고자 하는 프로젝트가 트워터에서 트윗을 다운 받아 분류하는 작업을 하려고 하는 데요. Supervised method으로 모델을 트레이닝 시키는 방법을 고려하고 있습니다. 혹시 전체 데이터 중 몇 퍼센트 정도를 사람이 직접 분류시켜서 training set 및 testing set에 적용하는 것이 일반적인 룰? 인지 궁금해서 문의 드립니다. 제가 인터넷에서 찾아본 바로는 80% 트레이닝 20% 테스팅 또는 70% 트레이닝 30% 테스팅을 많이 본 것 같습니다. 또 사람이 직접 분류 시켜서 labeling하는 데이터 포인트가 많으면 많을 수록 좋다고 생각이 드는 데 일반적으로 머신러닝하시는 분들은 어떻게 결정하시는 지 궁금하네요. 예를 들어 다음과 같은 경우 강사님께서는 어떻게 분류를 하실 지 의견을 여쭙고 싶습니다. 만약 전체 1,000,000 트윗을 가지고 있고 이를 5가지 카테고리로 분류하고 싶다. 한가지 방법은 이중 10% (100,000 트윗) 정도를 임의로 추출해서 이중 80% (80,000 트윗)를 사람들이 직접 분류하게 하고 나머지 20% (20,000 트윗)으로 테스팅을 한다. 그리고 전체 1,000,000 트윗 중 나머지 90% (900,000 트윗)을 트레이닝 시킨 모델로 분류 시킨다. 혹시 강사님께서는 위의 경우 어떻게 퍼센티지를 구분하실 지 여쭙고 싶습니다. 감사합니다.
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
주피터에서 함수 자세히보는거 어떻게 하셨나요?
제가 첨에 못들은거 일수도 있는데 주피터에서 가끔보면 함수 자세히 보시는거 하시더라고요 예를 들어 함수 들어가는 값들 설명 등... 4분에도 하나 나오던데 이거 어떻게하나요 ?>
- 해결됨[개정판] 파이썬 머신러닝 완벽 가이드
질문 있습니다..!
print('array1: {:0}차원, array2: {:1}차원, array3: {:2}차원'.format(array1.ndim,array2.ndim,array3.ndim)) 위에서... format 뒤 차원 변수 받으려고 {}이 들어가는건 알겠는데 안에 :0 / :1 / :2 이거는 뭘 의미하는건가요 . . ?? 저게 있어야하는 이유를 잘 모르겟어요;;
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
강의 자료 받을 수 있나요 ?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
GridSearchCV 로 교차검증 및 하이퍼 파라미터 튜닝시 오류
랜덤포레스트로 GridSearchCV 로 파라미터 튜닝 후 학습을 돌리면 codec 오류가 발생합니다. 제공해 주신 소스를 그대로 실행해도 똑같은 오류가 납니다. - 소스 params = { 'n_estimators':[100], 'max_depth' : [6, 8, 10, 12], 'min_samples_leaf' : [8, 12, 18 ], 'min_samples_split' : [8, 16, 20] } # RandomForestClassifier 객체 생성 후 GridSearchCV 수행 rf_clf = RandomForestClassifier(random_state=0, n_jobs=-1) grid_cv = GridSearchCV(rf_clf , param_grid=params , cv=2, n_jobs=-1 ) grid_cv.fit(X_train , y_train) - 에러로그 UnicodeEncodeError: 'ascii' codec can't encode characters in position 18-19: ordinal not in range(128)
- 미해결[개정판] 파이썬 머신러닝 완벽 가이드
seaborn을 이용한 barplot이 왜 확률을 보여주게 되는지 궁금합니다.
안녕하세요. 강의를 듣는 중에 궁금한 점이 있어서 질문드리려 합니다. `sns.barplot(x='Sex', y='Survived', data=titanic_df)` 를 실행시키면 결과로 x 축에는 성별이, y축에는 생존률이 나오는데요. 사실 비율보다는 인원수가 나오는 게 자연스럽지 않을까 생각했는데 혹시 왜 이런지 알 수 있을까요? 뭐 구현이 그렇게 되었으니 이렇게 나오는 거라고 생각하고 넘어갈 수도 있겠습니다만, 왜 이런 식으로 구현이 된 것인지 궁금하네요.