인프런 커뮤니티 질문&답변

Jonghyun Lee님의 프로필 이미지
Jonghyun Lee

작성한 질문수

공공데이터로 파이썬 데이터 분석 시작하기

질문있습니다!

작성

·

265

0

박조은 선생님 안녕하세요?

Youtube채널에서 선생님의 "Bike Sharing Demand" 머신러닝 영상을 보고 연락드려요!

다름이 아니라.... 제가 Youtube에서 허민석님 께서 올려주신 "타이타닉 분석 및  머신러닝"을 보고

이 알게된 방법으로 머신러닝을 하게되면, 머신러닝의 수학적 지식이 없어도, 데이터만 잘 분류하고 코드를 맞게 넣어주면

머신러닝을 구현할 수 있겠다고 생각되어 -

선생님이 하신 Bike Sharing Demand dataset도 한번 허민석님 께서 올려주신 방법으로 머신러닝을 실행해 보았습니다.

그런데, 허민석님 께서 올려주신 방법으로 titanic dataset을 머신러닝 하였을때는 모델(kNN, Decision Tree, Random Forest, Naive bayes, SVM)들 score가 80점대 이상이였는데, (그 중 제일 높은 점수가 SVM이여서 SVM으로 Training을 시키고 Prediction을 하더라고요)

제가 이러한 방법으로 Bike sharing Demand를 머신러닝 하였을때는 모델들 Score가 2점대 이더라고요....

1Q)

Titanic Dataset에 머신러닝을 해볼때는 score 가 80점대 이상이였는데, 왜 Bike Sharing Demand Dataset에 

선생님과 동일하게 Data를 분류한후, 허민석님의 머신러닝 기법을 사용하였을때.... Score가 2점대 인지 알 수 있을까요?

2Q)

Score 점수가 2점대 나오더라도, 그 중 Score가 가장높은 모델을 사용하여 그냥 머신러닝을 하여도 전혀 상관이 없는건가요....?

제가 허민석님의 유트브 타이타닉 머신러닝 강의를 본것은 이것입니다:

"https://www.youtube.com/watch?v=FAP7JOECfEE&t=59s"

답변 4

1

Jonghyun Lee님의 프로필 이미지
Jonghyun Lee
질문자

감사합니다! 정말 큰 도움이 되었습니다 :)    감사합니다 !!!

1

박조은님의 프로필 이미지
박조은
지식공유자

1. 해당 공식을 라이브러리에서 지원하는 경우도 있지만 측정공식은 서비스를 운영하며 해당 데이터 혹은 서비스에 맞는 측정 공식을 사용하기도 합니다. 각 라이브러리의 API의 도움말을 참고해서 metric을 지정해 주시면 됩니다.

RMSLE는 사이킷런 API로 구현되어 있지 않아 공식을 직접 작성해 주어야 합니다.

2. 스코어를 확인한다면 더 좋겠지만 간단하게 해보기 위해 사용하지 않았고요.

또 classifier 보다는 regressor를 사용하는게 맞습니다. 풍속은 시각화 해보면 측정되는 값들이 정해져 있는데 그래서 범주형 값을 예측할 때 쓰는 classifier 를 써도 무관하지만 해당 영상을 만든지 2년이 넘게 지나서 보완하면 좋을만한 내용이 많은데 질문 주신 내용이 그런 부분입니다. 제가 사용한 방법은 초보자를 위한 내용이고 2년이 지난 내용이라 개선이 필요합니다. 그래서 직접 개선해 보시면 좋겠습니다.

1

박조은님의 프로필 이미지
박조은
지식공유자

안녕하세요. 질문주신 내용은 머신러닝 기법의 분류와 회귀에 대해 좀 더 알아보시면 해당 문제를 이해하는데 도움이 되실거 같습니다. 캐글 경진대회는 해당 경진대회마다 측정하는 공식이 다릅니다.

분류, 회귀 여부에 따라 크게 달라지고요. 같은 분류라 할지라도 accuracy, f1 score, auc roc등 측정하는 방법이 다양합니다.

타이타닉은 분류에 해당되고 질문주신 bike 문제는 회귀문제에 해당됩니다. 

회귀문제에서는 MAE, RMSE, RMSLE등 다양한 측정방법이 있습니다. 

일단 분류와 회귀에 대해 알아보시고 각 방법에 대한 측정방법에 대한 차이를 찾아보세요.

감사합니다.

0

Jonghyun Lee님의 프로필 이미지
Jonghyun Lee
질문자

박조은 선생님 빠르고 소중한 답변 정말 감사합니다!!!!

타이타닉은 = 분류 , Bike = 회귀 문제여서 그랬던 거군요....  

앞으로는 데이터셋을 분석할때 더 유심히 생각해 보겠습니다!! 감사합니다.

선생님 그러면, 두가지만 더 여쭈어 보겠습니다...!!!

1Q)

제가 다음 dataset을 분석하게 된다면... 그리고 그게 회귀에 관련된 머신러닝 문제라면...

코드를 예로 들어... (Bike dataset 를 다시한다면...)   

scoring = "RMSLE" 라고 주게되면 되는지요? (마치 타이타닉에서 scoring = "Accuracy" 라고만 준 것 처럼요)

그리고 RMSLE의 공식은 default로 저장이 되어있는 것 인지요?

아니면 제가 RMSLE 공식을 수학적으로 코드로 지정해야 하는것 인지요? 

2Q)

선생님이 BIKE dataset에서 wind0가 많아,  정확성을 높이기 위해 wind0 , windnot0 를 구분하여

windspeed를 머신러닝으로 예측을 하시는것을 보았습니다. 하지만 windspeed를 예측하실때에는

score를 보시지 않고 그냥 "Random Forest Classifier" 모델을 사용하여 예측하시더라고요...

이 부분에서 Random Forest Classifier를 사용한 이유와, Score를 굳이 확인 안하셔도 되던 이유를 알 수 있을까요?

항상 강연들 잘 보고있습니다 정말 감사합니다!!!  :) 

Jonghyun Lee님의 프로필 이미지
Jonghyun Lee

작성한 질문수

질문하기