randomforest vs lightGBM
미해결
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요 작업형 2과목 머신러닝 문제에 따라 lightGBM을 써야만 하는 경우도 있나요 아니면 머신러닝할 때는 랜덤포레스트로 비비고 들어갈 수 있나요?? 시간은 부족하고 아직 연륜이 부족해서 여쭤봅니다 감사합니다
- python
- 머신러닝
- 빅데이터
- pandas
- 빅데이터분석기사
172만명의 커뮤니티!! 함께 토론해봐요.
미해결
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요 작업형 2과목 머신러닝 문제에 따라 lightGBM을 써야만 하는 경우도 있나요 아니면 머신러닝할 때는 랜덤포레스트로 비비고 들어갈 수 있나요?? 시간은 부족하고 아직 연륜이 부족해서 여쭤봅니다 감사합니다
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
제가 시험장에서 코드가 생각이 안 날 가능성을 대비해서, 작업형2는 우선 한 가지 방법으로 풀고 거기에 살을 붙여가며 연습하려 합니다. 근데 여기서 든 생각이, 어차피 RandomForest 한 가지 방법으로 풀 거면 모델 성능 측정은 모델 간의 성능을 비교할 목적이니 굳이 안 해도 될 것 같고, 성능 측정을 하지 않는다면 train과 validation을 나눠주는 train_test_split도 굳이 안 해도 될 것 같고, 결론적으로는 경우에 따라 Classifier/Regressor만 맞게 써준다면 아래의 코드만으로도 웬만한 문제는 감점당하지 않고 넘어갈 수 있지 않나 하는 생각이 들었습니다. target = train.pop('농약검출여부') train = pd.get_dummies(train) test = pd.get_dummies(test) test = test.reindex(columns=train.columns, fill_value=0) from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(random_state=0) model.fit(train, target) pred = model.predict(test) pd.DataFrame({'pred': pred}).to_csv('result.csv', index=False) pd.read_csv('result.csv') 강사님께서 올려주신 실기 응시 가이드를 보니 성능이 너무 낮지만 않다면 점수가 많이 까일 가능성은 낮아보여서, 우선은 이걸로 밀고 가면서 최소한의 점수는 확보하려는데, 그러한 목적으로는 이 코드가 문제가 없을지 궁금합니다. 감사합니다.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요 선생님! 섹션 3 처럼 object가 많이 나왔을때 labelencoder를 하지 않고 cols = train.select_dtypes(include='object').columns for col in cols: set_train = set(train[col]) set_test= set(test[col]) same = (set_train == set_test) if same: print(col, "\t카테고리 동일함") else: print(col, "\t카테고리 동일하지 않음") print("\n ===== target 기술 통계 =====") print(train['price'].describe()) 이렇게 하는 이유가 궁금합니다!! 이런것도 외우고 가야될까요?
미해결
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
선생님 안녕하세요. 대응표본과 독립표본을 구분하는 꿀팁이 있을까요? 연습문제 > 가설검정 > 2번은 대응표본인것 같은데 독립표본이라고 적혀있어서요. 신약효과검정이 대응인데, 이것도 어떻게보면 기존충전기와 개발충전기라면 대응으로 볼 수 있지 않나요? 시험문제엔 '독립/대응표본으로 검정하라' 와 같이 알려주진 않죠?ㅜㅠ
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 아래 코드가 9번 답 코드에 존재하는데 이 과정이 왜 있는지 몰라 문의 드립니다. pred = (pred > 0.5).astype(int)
미해결
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
선생님 작업형 2는 train.info() 했을 때 결측치가 없고 object 형이 많거나 해도 라벨 인코딩 말고 원핫 인코딩을 하고 모델은 randomforest lightgbm 사용해서 점수 더 잘 나온것을 기준으로 제출해도 될까요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
1유형 : 내주신 문제39개중에 20번대 후반 이후로 잘 못푸는 상태(datetime부분이 약함) 2유형 : 40점 만점 가정 3유형 : 분산분석 제외 summary에서 찾는것 모두 가능 (카이제곱, 독립성, logit, ols) 이 상태인데 남은 4일동안 1유형을 보강할지, 분산분석을 알아갈지 고민인데 어떻게 생각하시나요..?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
제가 시험환경에서 돌려보았습니다 #1 표본데이터의 평균을 구하시오Caffeine(mg) print(df['Caffeine(mg)'].mean()) #2 샤피로 검정 0.9322031137746971 print(stats.shapiro(df['Caffeine(mg)'])) #단일표본t검정의 검정통계량과-5.501737036221897 pvalue print(stats.ttest_1samp(df['Caffeine(mg)'],95,alternative='less')) samp=stats.ttest_1samp(df['Caffeine(mg)'],95,alternative='less') print(samp.pvalue) print(format(5.8686553916715e-06,'.10f')) 결과 ShapiroResult(statistic=0.9826578166170536, pvalue=0.9322031137746971) TtestResult(statistic=-5.501737036221897, pvalue=5.8686553916715e-06, df=24) 5.8686553916715e-06 0.0000058687 ####질문 만약 문제에서 p_value값을 물어보았고 반올림하여라 그런말 없이 물어본다면 지수표기법을 바꿔서 적어야할텐데. 일반표기법을 어디까지 적어야할지요?ㅠㅠ
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
eda 진행하여 object인 컬럼들 모두 라벨인코딩 진행한 후, X_train=X_train.drop(columns=['ID']) X_testID = X_test.pop('ID') from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(random_state=2022) model.fit(X_train,y_train) pred = model.predict_prova(X_test) 진행하였는데 모델 학습 돌리는 과정중에 계속 런타임이 빙글빙글 돌아가면서 학습이 되지않습니다 왜 그런걸까요..? ㅠㅠㅠ
미해결
비전공자를 위한 가장 쉬운 데이터분석 입문
파이썬 아나콘다 설치 링크로 들어가면 권한이 없거나 존재하지 않는 페이지입니다. 라고 나옵니다. 강의 자료 말고, 아나콘다 설치 링크 및 방법 공유해 주세요.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2에서 pred를 그냥 쓰는게 아니라 pred[:,1]를 쓸때 이해가 안가서 그냥 이대로 암기했었습니다. 이걸 쓰는 이유를 정확히 알고 싶은데 roc_auc는 양수의 확률 값을 예측한걸 평가하는 것이고, 나머지 분류지표는 0또는 1을 예측한걸 평가하는 지표이기 때문에 roc_auc경우에만 양수인 컬럼을 따로 지정하기위해 pred[:,1]를 사용하는 것이 맞을까요? 그렇다면 roc_auc일때만 pred[:,1]이렇게 따로 지정해주면 될까요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
cond = df['age']>=80 print(df['views'][cond].mean()) 이렇게 작성해도 크게 문제가 없나요? views와 cond 자리 바꿈!
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
test_id = test.pop('id') 이렇게 따로 빼두는 이유가 저장할때 id컬럼을 생성하기 위해서라면, 굳이 pop함수로 빼지 않고 저장할때 직접적으로 pd.DataFarme({'id':test['id'], 'y_pred':pred}) 이렇게 test['id']로 적으면 안되는 걸까요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요. 섹션5-27 강의 수강 중 입니다. 인코딩 파트의 가장 윗 부분 코드와 관련하여 y_train = train.pop("income") 단독 실행 시 KeyError 에러가 발생합니다. 다만, 상단의 모두 실행으로 실행 시 정상 작동 됩니다. 에러 메시지에서도 '위의 예외는 다음 예외의 직접적인 원인이었습니다.' 라고만 표시되어 어떻게 조치를 취해야 하는지 감이 잘 오지 않습니다ㅠㅠ + 상단의 데이터 불러오기에서 데이터를 확인했을 때 income 컬럼이 있는 것 확인했습니다. + 바로 아래의 원핫인코딩 코드에 커서를 놓고 런타임-이전 셀 실행 으로 실행하니까 이때는 또 정상 작동을 하네요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
랜덤포레스트 사용에서 model.fit으로 학습시키는 코드를 실행시키면 굉장히 오래 돌아가는데 왜그러는걸까요??
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2유형에서 원핫인코딩이나 레이블 인코딩 후에 민맥스나 스탠다드 스켈링을 하는데요 스케일링할 때 범주형 데이터를 제외하는 작업을 하지 않고 그냥 통으로 train과 test 스케일링을 하고 있거든요. 혼자 공부하니까 제대로 하고 있는지 의문이 되네요 그냥 통으로 스케일링 해도 결과값에 영향이 없나요? from sklearn.preprocessing import MinMaxScaler, StandardScaler sc = MinMaxScaler() train = ms.fit_transform(train) test = ms.transform(test)
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 선생님, 아래 두 코드 중 하나를 쓰면 될까요? 두 코드는 똑같은 의미인가요? 해당 문제로 적용했을 때, 같은 값이 나오긴 합니다만,, 현재 강의에서는 첫번째 코드 [작업형3] 9. 로지스틱 회귀 에는 두번째 두 줄짜리 코드로 적혀있어서 둘 중 하나로 외워두면 될지 궁금합니다.(임계값이 따로 나오지않으면 >0.5 를 적용하는것으로 전제하에..) pred = model.predict(test) > 0.5 pred = model.predict(test) pred = (pred > 0.5).astype(int)
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이번 예시문제에서 train ,test를 26번째 줄 처럼 align 해주지 않으면 '주구매상품_소형가전'이 train에서만 존재해서 에러가 발생하는데 이번에 처음보는 에러라서 GPT가 저 줄을 추가하라고 알려줘서 알게 됐는데, 원래 원핫인코딩에는 저런 align을 외워둬야할까요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이렇게 작성되어 있을 때는 다중 선형 회귀 모델의 독립 변수에 'solar', 'o3'를 적어주는 게 맞는 건가요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
[문제] Section 27. 시간 범위, 속도(km/h) 점심시간(10시부터 13시 전까지)에 주문된 배달 데이터를 찾으시오. 점심시간 주문 건 중 과속(평균 속도가 50km/h 이상)하는 주문 수를 정수로 구하시오. 배달시간 = 실제도착시간 - 주문시간 속도(km/h) = 거리(km) / 시간(h) [질문] 정답이 '1'이 아닌 21이 계속 출력되는데, 문제점을 못찾겠어요. import pandas as pd df = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p1/delivery_time.csv") df['주문시간']= pd.to_datetime(df['예상도착시간']) df['실제도착시간']= pd.to_datetime(df['실제도착시간']) df['예상도착시간'] = pd.to_datetime(df['예상도착시간']) # 점심시간(10시부터 13시 전까지)에 주문된 배달 데이터를 찾으시오. df['시간']=df['주문시간'].dt.hour con1= df['시간'] >= 10 con2= df['시간'] < 13 df= df[con1&con2] # 점심시간 주문 건 중 과속(평균 속도가 50km/h 이상)하는 주문 수를 정수로 구하시오. df['배달시간'] = df['실제도착시간']- df['주문시간'] # 배달시간 = 실제도착시간 - 주문시간 # 속도(km/h) = 거리(km) / 시간(h) ## dt.total_seconds()/60 :분단위 ## dt.total_seconds()/60/60 : 시간단위 df['배달시간']= df['배달시간'].dt.total_seconds()/60/60 df['속도'] = df['거리']/ df['배달시간'] sum(df['속도']>= 50)